Чаще всего HC-05 и HC-06 представляют собой две спаянные платы. Верхняя – заводская плата с микросхемой BC417. Нижняя – специальная плата для самодельных устройств, содержащая самые нужные ножки GPIO с шагом 2.54 мм, стабилизатор напряжения и кнопку сброса. На фотографии ниже плата с BC417:
А это — модули HC-05 и HC-06 вместе с подложкой:
HC-05 не намного дороже HC-06. Но при этом он может работать в обоих режимах прямо “из коробки”. С HC-06 же придётся повозиться, чтобы заставить его работать ведущим.
Также встречаются немного другие версии модулей. Вместо вывода EN на них выведен KEY.
VCC — питание от 3,6 до 6 В;
GND — земля;
RX, TX — интерфейс UART;
STATE — индикация работы;
KEY — активация режима управления с помощью AT-команд.
Настройка модулей производится при помощи AT-команд. Но пин KEY есть не на всех модулях. И что с этим делать?
Пин KEY конечно же присутствует на малой плате с большим числом контактов, но не разведён на большой. Причины такого странного решения китайцев неизвестны.
Этот контакт находится здесь:
GND – GND;
VCC – +5V;
TXD – 10;
RXD – 11;
KEY при обычной работе модуля не используется. Для перехода в режим AT-команд его надо соединить с +3.3V.
TXD и RXD соединены с пинами 10 и 11, потому, что аппаратный UART будет использоваться для связи с компьютером.
Бывают ситуации, в которых между Arduino TXD — Bluetooth RXD необходимо согласование напряжения. Использование делителя – гарантия надёжной работы.
Справа приведена схема простейшего делителя:
Скетч просто отправляет данные, полученные с компьютера, на настраиваемый модуль.
Скорость последовательного порта: 9600;
Перевод строки: CR+LF.
TeraTerm после настройки выглядит так (номер порта может отличаться):
Все следующие действия разделим на настройку slave модуля HC-06 и master модуля HC-05.
HC-06: при подаче питания индикатор питания начнёт моргать:
А это — модули HC-05 и HC-06 вместе с подложкой:
HC-05 не намного дороже HC-06. Но при этом он может работать в обоих режимах прямо “из коробки”. С HC-06 же придётся повозиться, чтобы заставить его работать ведущим.
Также встречаются немного другие версии модулей. Вместо вывода EN на них выведен KEY.
РАСПИНОВКА МОДУЛЕЙ
EN — управление питанием;VCC — питание от 3,6 до 6 В;
GND — земля;
RX, TX — интерфейс UART;
STATE — индикация работы;
KEY — активация режима управления с помощью AT-команд.
Настройка модулей производится при помощи AT-команд. Но пин KEY есть не на всех модулях. И что с этим делать?
Пин KEY конечно же присутствует на малой плате с большим числом контактов, но не разведён на большой. Причины такого странного решения китайцев неизвестны.
Этот контакт находится здесь:
ПОДКЛЮЧЕНИЕ HC-05 И HC-06 К ARDUINO
Подключение к Arduino выполняется следующими контактами:GND – GND;
VCC – +5V;
TXD – 10;
RXD – 11;
KEY при обычной работе модуля не используется. Для перехода в режим AT-команд его надо соединить с +3.3V.
TXD и RXD соединены с пинами 10 и 11, потому, что аппаратный UART будет использоваться для связи с компьютером.
СОГЛАСОВАНИЕ ЛОГИЧЕСКИХ УРОВНЕЙ
Bluetooth-модули работают с логическими уровнями 3.3 В, и использование пятивольтовой логики может вывести их из строя. Но чаще всего на плате имеется всё необходимое для согласования уровней.Бывают ситуации, в которых между Arduino TXD — Bluetooth RXD необходимо согласование напряжения. Использование делителя – гарантия надёжной работы.
Справа приведена схема простейшего делителя:
СКЕТЧ ДЛЯ ПОДКЛЮЧЕНИЯ К ARDUINO
Для настройки модулей можно использовать USB-UART конвертер, если вы воспользуетесь им – следующий пункт можно пропустить. Для начала нам потребуется прошить Arduino.Скетч просто отправляет данные, полученные с компьютера, на настраиваемый модуль.
Настройка терминала:
Им может послужить стандартное средство сред разработки Arduino— монитор порта. Я же работал с терминалом TeraTerm. Настраиваем следующие параметры:Скорость последовательного порта: 9600;
Перевод строки: CR+LF.
TeraTerm после настройки выглядит так (номер порта может отличаться):
Все следующие действия разделим на настройку slave модуля HC-06 и master модуля HC-05.
HC-06: при подаче питания индикатор питания начнёт моргать:
Отправляем модулю команду проверки через терминал:
При настройке HC-05 сначала нужно активировать режим настройки. Для этого требуется пин KEY.
Соединяем пин KEY с источником питания 3.3 В;
Подаём питание модуля.
Скорость последовательного порта при этом будет равна 38400 бод/с.
Соединяем пин KEY с источником питания 3.3 В.
Установится скорость, выбранная в настройках заранее. По умолчанию — 9600.
Индикатор питания будет моргать.
AT
В ответ вам придёт:
OK
Этой командой можно узнать версию модуля:
AT+VERSION?
Ответ:
OKLinvor1.5
Если что-то работает не так — перепроверьте:
- Скорость соединения. Следует выбрать 9600.
- Новая строка должна обозначаться комбинацией “CR+LF”.
HC-06 обладает всего тремя настраиваемыми параметрами:
Изменение пароля:
AT+PIN<…>
Изменение скорости:
AT+BAUD<…>
Изменение имени модуля, отображаемого при его поиске другими устройствами:
AT+NAME<…>
Пример настройки: для изменения скорости на 9600 пишем:
AT+BAUD9600
Меняем настройки на желаемые. Модуль ожидает соединения с ведомым устройством, например, смартфоном.При настройке HC-05 сначала нужно активировать режим настройки. Для этого требуется пин KEY.
Первый способ:
Отключаем источник питания;Соединяем пин KEY с источником питания 3.3 В;
Подаём питание модуля.
Скорость последовательного порта при этом будет равна 38400 бод/с.
Второй способ:
Подаём питание на модуль.Соединяем пин KEY с источником питания 3.3 В.
Установится скорость, выбранная в настройках заранее. По умолчанию — 9600.
Индикатор питания будет моргать.
Теперь отправляем те же команды, которыми проверяли прошлый модуль. Отличие будет лишь в версии: придёт ответ
“+VERSION=+BOLUTEK Firmware V2.2, Bluetooth V2.1”.
Использование HC-05 в роли ведомого:
Сброс настроек:
Сброс настроек:
AT+ORGL
Очистка памяти от соединённых устройств:
AT+RMAAD
Изменение пароля:
AT+PSWD=4321
Активация slave режима
AT+ROLE=0
Эта команда позволяет узнать адрес устройства:
AT+ADDR?
После проделанных манипуляций отключаем пин KEY и перезагружаем модуль.Использование HC-05 в роли ведущего:
Сброс настроек:
Ставим пароль на ведомый модуль:
AT+ORGL
Очистка памяти от соединённых устройств:
AT+RMAAD
Активация master режима:
AT+ROLE=1
Перезагрузка:
AT+RESET
Для соединения двух модулей, нужно сделать следующее:Ставим пароль на ведомый модуль:
AT+PSWD=1234
Указываем ведущему модулю адрес ведомого модуля и таймаут:
AT+PAIR=<…>,<…>
Пример:
AT+PAIR=12,6,143117, 5
Связываемся с ведомым модулем:
AT+BIND=<…>
Пример:
AT+BIND=12,6,143117
Ставим запрет на соединение с другими модулями:
AT+CMODE=0
На этом всё. Теперь ведущий модуль при подаче питания начнёт подключение к ведомому.
Комментариев нет:
Отправить комментарий
Создайте свой комментарий.