CraftDuino v2.0
  • - это CraftDuino - наш вариант полностью Arduino-совместимой платы.
  • CraftDuino - настоящий конструктор, для очень быстрого прототипирования и реализации идей.
  • Любая возможность автоматизировать что-то с лёгкостью реализуется с CraftDuino!
Просто добавьте CraftDuino!

Модуль bluetooth HC-07

Доброго дня всем.
На сайте имеется статья о модулях bluetooth hc-05 отличного содержания. Однако последнее время в китайских интернет-магазинах все чаще встречаются модули HC-07 весьма загадочного содержания. Информация в сети о данных модулях имеется разноречивая и не всегда достоверная.
Аналогичный модуль пришел и мне. Пришлось с ним поразбираться. Выкладываю на ваше обозрение полезную информацию о данном китайском творении.

Производитель модуля — китайская компания, именующаяся HC. Сайт производителя www.wavesen.com
Страница продукта на сайте в гугловском переводчике.
Этот модуль позизионируется как новый продукт. Функциональность, производительность и печатная плата совместимы с HC-06. Отличительная черта платы — это ее низкая цена. Микросхемы процессора и памяти объединены в одном чипе, поэтому снижено энергопотребление модуля по сравнению с HC-05/06.
Модуль может быть или только в режиме хоста, или только в режиме слейва (необходимо уточнять у продавца).
Настройки модуля по умолчанию: Slave, baud rate: 9600, N, 8,1. Passcode: 1234. Максимальный baudrate — 1382400.



Из всего приведенного выше видно, что по умолчанию скорость обмена данными модуля стоит достаточно низкая по сравнению с его максимальными возможностями. Для изменения дефолтных настроек необходимо перевести модуль в режим АТ-команд. Вот здесь-то и возникают основные трудности.
Для перевода модуля в режим АТ-команд необходим переходник USB-UART. Без этого никак. В сети полно советов, как перевести bluetooth модули в AT-mode, типа этого. Имеется еще ряд других советов. Но один их недостаток в том, что к HC-07 они не применимы.
Для перевода bluetooth HC-07 модуля в режим АТ-команд нужно включать его через переходник USB-UART.
Так случилось, что под рукой переходника не было, а была платка Arduino Nano v3.0. Хорошо, что нашел способ использовать Nano в качестве переходника USB-UART. По приведенной ссылке можно найти три способа, но самый простой из них — это замкнуть на Arduino пины RST с GND (соединить их между собой). Залитые в ардуину скетчи менять не надо, они на работу моста USB-UART не влияют.
Дальше соединяем RX(Nano)-RX(Bluetooth), TX-TX, GND-GND, Vcc-Vcc. Входящий ток допустим от 3,3 до 6 вольт, поэтому можно выбирать хоть 3,3В выход, хоть 5В. Обратите внимание, что соединять нужно именно RX(Nano)-RX(Bluetooth), TX-TX — одноименными пинами, а не противоположными.
После соединения Arduino и HC-07 подсоединяем Arduino к PC посредством USB кабеля. Bluetooth-соединение устанавливать нельзя. HC-07 работает в режиме АТ-команд только до тех пор, пока он не спарен с другим устройством (достаточно не устанавливать соединение).
Дальше возможно использовать как системный монитор в Arduini IDE, так и другие программы для связи по серийному порту. Я воспользовался CuteCom (OS Ubuntu), но выбор программной части, как мне кажется, не принципиален.
В настройках соединения выбираем само соединение — серийный порт, ставим дефолтные установки модуля baud rate: 9600, N, 8,1. Также выбираем No line end. Устанавливаем соединение.
Проверка связи производится командой AT. Ответ на нее — Ok. Если выходит данный ответ, то модуль в режиме АТ-команд.
Выбор настроек в HC-07, в отличие от собрата HC-05, не велик. Смотрим исходник здесь и на странице производителя.
Кроме теста АТ-режима, можно установить baudrate(из-за чего, собственно, этот режим и потребовался):
команда: AT + BAUD1
ответ: OK1200

пример: AT + BAUD2
ответ: OK2400
Перечень возможных baudrate
1 — 1200
2 — 2400
3 — 4800
4 — 9600
5 — 19200
6 — 38400
7 — 57600
8 — 115200
9 — 230400
A — 460800
B — 921600
C — 1382400
Производителем заявлены скорости вплоть до 1382400, однако сам же производитель предупреждает, что baudrate выше 115200 устанавливать не рекомендуется. Это можно сделать при помощи микроконтроллерного программирования, однако впоследствии приводит к нестабильной работе компьютера.

смена Bluetooth-имени
команда: AT + NAMEname
ответ: OKname
Это имя устройства. Должно быть длиной 20 символов или меньше.
пример: Sending AT + NAMEbill_gates
ответ: OKname

смена Bluetooth passkey
команда: AT + PINxxxx
ответ: OKsetpin
Пароль длиной 4 символа для установления пары устройств.
пример: Sending AT + PIN8888
ответ: OKsetpin

После изменения настроек bluetooth-модуля не забудьте установить новые параметры при повторном установлении соединения с модулем HC-07. Произведеные вами изменения сохраняются в модуле HC-07, повторной настройки не требуют.

На этом ваш модуль HC-07 готов к работе на полной скорости. Можно продолжить эксперименты.
Еще один момент. Не знаю, как ведут себя другие платы bluetooth, но при установлении HC-07 на обмен данными, плату ардуино необходимо запитывать от отдельного источника питания, отключая USB-соединение. Может быть, приоритетным для обмена является USB серийный порт, но обмен данными при включенном USB кабеле через bluetooth модуль HC-07 не происходит.
  • 0
  • 12 февраля 2014, 10:07
  • DevOS

Комментарии (0)

RSS свернуть / развернуть

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.