Hc 05 bluetooth подключение к stm32

Обновлено: 05.07.2024

Подключение bluetooth модуля HC-05 к микроконтроллеру.

Если программа не видит переходник, то скорее всего ему присвоен номер com порта выше 10, изменить его можно в диспетчере устройств. После этих манипуляций, мы можем принимать и отправлять данные по bluetooth c компа.

Подключение bluetooth модуля HC-05 к микроконтроллеру.

Теперь надо сконфигурировать второе устройство для обмена данными, в качестве такого устройства может выступать телефон, ноутбук или планшет. Выбор пал на планшет, с ОС Android, далее опишу как конфигурировать его для обмена данными по bluetooth.
Для нашей задачи качаем с play market приложение bluetooth terminal от Qwerty и устанавливаем его. Включаем bluetooth и ищем среди устройств наш модуль.

Подключение bluetooth модуля HC-05 к микроконтроллеру.

Подключение bluetooth модуля HC-05 к микроконтроллеру.

Подключение bluetooth модуля HC-05 к микроконтроллеру.

Пробуем к нему подключиться, при запросе пароля вводим 1234. После того как мы установили соединение с модулем, символы которые мы будем слать из терминала на планшете будут появляются в терминале на компьютере.

Убедившись, что модуль работает подключил его к Atmega16 и написал программу, которая по приёму определённых символов будет выполнять какие-то действия, например включать светодиод.

Включив несколько раз светодиод понял, что гораздо удобнее было бы не клацать по клавиатуре в терминале, а создать на планшете примитивный интерфейс для отправки команд. Опыта в программировании под Android у меня практически нет, но создать интерфейс всё-таки получилось. Посмотреть на результат можно в следующей статье.

В качестве Bluetooth модуля используется дешевый китайский модуль HC-06, который был рассмотрен в этой статье.

Bluetooth модули

В качестве Android устройства используется дешевый китайский планшет Ainol Aurora с внешним USB-Bluetooth модулем (т.к. своего нет), подключенным через USB Host.

Схема подключения платы STM32 Discovery к модулю HC-06 проста:

Схема подключения Bluetooth к STM32

Для тех, кто не работал с STM32 лучше сначала прочитать 3 вводные статьи для начинающих по STM32.

Программа для STM32 писалась в среде CooCox CoIDE, на основе стандартного примера STMicroelectronics. ПО для Android писалось в среде Eclipse и основано на коде из этой статьи, за исключением того, что настройки MAC-адреса Bluetooth модуля из тела программы вынесены в меню.

Исходный код программы для STM32:

Код достаточно простой, в функции GPIO_Configuration() происходит конфигурирование ног контроллера, в USART_Configuration() настраивается UART, а в функции NVIC_Configuration () происходит настройка прерывания.

Вид главного активити в Android планшете

Исходный код приложения для Android я приводить не буду, т.к. он большой и основан на этой статье. Расскажу лишь про отличия. Каждое Bluetooth устройство содержит свой уникальный MAC-адрес. В вышеупомянутой статье он задавался в коде программы в виде константы, и чтобы его изменить нужно было ставить среду Eclipse, загружать проект, редактировать эту строчку, компилировать и устанавливать его в устройство. Поэтому я решил вынести установку MAC-адреса в настройки. Для этого я использовал android.preference. Я прилагаю проект в Eclipse и готовый APK файл, если возникнут какие-то вопросы по статье, то спрашивайте ниже в комментариях, либо на форуме по STM32.

Данный проект может быть взят за основу для более серьезного проекта, к примеру построение робота, с управлением от Android (собственно о чем мы и расскажем в следующих статьях), прием данных от уличной метеостанции на ваш телефон и т.п.

<Изображение удалено>
Не сложный, чтобы разобраться как STM32F103C8T6 работает с bluetooth HC-06/HC-05. Соединить с ПК по bluetooth и отправка/принятие каких-то данных или выполнение команд.

__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь


Qt Bluetooth, ошибка qt.bluetooth: Dummy backend running. Qt Bluetooth module is non-functional
Начал разбираться с Qt и Bluetooth, для этого запустил пример.

Bluetooth-гарнитура. Цифровой шум при воспроизведении через bluetooth
купил bluetooth-наушники phillips. наушники хорошие, звук отличный. но есть проблема - звук.

Новые Bluetooth модули на чипе bk3231 ( SPP-C Bluetooth)
Кто подкинет описание ? какие выводы чего там делают кроме стандартно опубикованных +- RX TX LED.

Можно ли USB Bluetooth превратить в UART Bluetooth. Фото
Всем привет! Есть USB Bluetooth донгл с отломанным разъемом. Есть желание прицепить его к ардуине.

HC-05 изначально настроен как сквозной USORT. Две ноги питания, Rx, Tx, и кидай байты на сквозняк как с обычным usart. Ничего сложного. HC-05 изначально настроен как сквозной USORT. Две ноги питания, Rx, Tx, и кидай байты на сквозняк как с обычным usart. Ничего сложного. при включении модуля у компьютера появиться ком порт ? при включении модуля у компьютера появиться ком порт ? Не совсем правильный вопрос.
som-порт в компьютере может быть как встроенный (тогда ком-порты уже есть в системе), а может быть применен USB переходник на выходе которого есть som-порт (при подключении его через USB, появляется новый ком-порт).
Но это ещё не все.
Модуль работает с сигналами у которых напряжение от нуля до 5 вольт, а у ком-порта до 12 вольт, что требует использовать еще и мк max232.
Либо использовать контроллер например fd232 который с одной стороны подключается к usb, а с другой стороны уже имеет выходы к которым сразу можно подключать модуль. при включении модуля у компьютера появиться ком порт ?

HC-06 подключаю к STM32F103C8T6, сам МК через USB UART подключаю и прошиваю.

<Изображение удалено>
Через UART COM порт появляется, Bluetooth МК находит, подключаюсь, находит ещё 2 COM порта Bluetooth - вы про них спрашиваете?

По нажатию на кнопку отправка. С ПК нашёл HC-06, подключился, появились два COM порта, открыл их в Tera Term или в Bluetooth Serial Terminal выбрал HC-06. По нажатию на кнопку в терминале ничего не происходит. (загорание диода по тому же коду делал - работает). Подскажите что делаю не так По нажатию на кнопку в терминале ничего не происходит. (загорание диода по тому же коду делал - работает). Подскажите что делаю не так Попробуйте добавить в конце отправляемой строки \n (0x0A). Или для надёжности даже два символа - \r,\n (0x0D,0x0A). Некоторым терминалам это очень нужно. Возможно, и самому Bluetooth-модулю тоже нужен признак конца строки. Видин, в Вашей программе учитывается только состояние RX. А если USORT занят TX-ом и в это время приходит байт? Скорее потеря байт возникает поэтому.
Если хотите принимать строку, а потом передавать её обратно, то есть необходимость ввести спецсимвол(например-конец строки), и по приему этого спецсимвола начинать пересылку обратно.

Чем связать STM32 + STM32 в одном корпусе?
Есть 2 платы: (1) - STM32 (Вывод на LCD + запись SD) и (2) - STM32F4 (обработка сигналов +.

Общение с барометром MS5540 на STM32 (Arduino to STM32)
Получил от китайца сей аппарат, пошел тут же гуглить что нибудь готовое, но не тут то было.

Bluetooth кнопка для селфи -> Bluetooth модуль ?
Кто нюхал ? там же обычный блютуз пмодуль на чипе BK2331q и ещё какой-то вариант есть.

Как создать bluetooth соединение, распознанное как bluetooth клавиатура и/или мышь
Хочу написать приложение, которое работает как устройство ввода(клавиатура/мышь), но не требующей.

STM32F103C8T6
Доброго времени суток. Процессор STM32F103C8T6 один из самых дешевых и достаточно мощных АРМов.


В данной статье мы рассмотрим работу блютуз модуля HC-05:

Данный модуль имеет стабилизатор напряжения, который позволяет запитывать его от 5 вольт.

Блютуз модуль HC-05 может работать в качестве ведомого (master) или ведущего (slave). Данные режимы задаются с помощью АТ-команд. Кнопка на плате модуля переключает его в режим ввода АТ-команд. Для перехода в режим ввода АТ-команд необходимо зажать кнопку и подать питание.

По умолчанию модуль HC-05 имеет имя HC-05 и пин-код 1234 .

Для настройки данного модуля мы подключим данный его через USB переходник:


Контакты соединяем следующим образом:

HC-05Переходник USB
+5V+5V
GNDGND
RXTX
TXRX

При подключении компьютеру, светодиод на плате Bluetooth-модуля начнёт быстро мигать.

Для ввода АТ-команд я буду использовать программу CoolTerm, которая свободно есть в интернете.

В настройках программы выбираем номер виртуального COM-порта, к которому подключаем USB адаптер. По умолчанию скорость работы с АТ командами 38400бод.

После подключения модуля вводим команду «AT », если устройство подключилось, мы должны увидеть в качестве ответа «ОК ».

Для проверки версии прошивки, команда «AT+VERSION », в моём случае вернулся ответ:


Командой «AT+PINxxxx », где xxxx – произвольный набор цифр, можно сменить пин-код . В ответ получим «OKsetPIN ».

Командой «AT+BAUDx », где x – значение от 1 до 9, можно изменить скорость в бодах.

Ответ модуля на мои команды:


Если, мы что то натворим, можно ввести команду AT+ORGL , которая сбросит все настройки по умолчанию. После необходимо перезагрузить модуль.

Список основных АТ команд (если в терминале указано добавлять символы CR & LF или NL & CR то символы «\r\n» в командах ставить не нужно):

AT+NAME?\r\n (Запрос / установка имени модуля) -ответ NAME:ИМЯ\r\n OK\r\n

Для отправки команд с телефона будем использовать программу Serial Bluethooth Terminal, которую можно бесплатно скачать в Play Market.


Выглядит она следующим образом:


Отправлять с телефона мы будим цифры и наблюдать прием данных на компьютере, через программу CoolTerm.

Читайте также: