Bluetooth модули HC-05 и HC-06 zs-040. Первый взгляд

HC-05 и HC-06 ZS-040

Обновление: Если у ваших модулей есть синий светодиод в верхнем левом углу, значит у вас более новая модель с немного другой прошивкой, хотя работать они должны одинаково.

Недавно я купил несколько Bluetooth-модулей HC-05 и HC-06. Они довольно стандартные, особенно при использовании с Arduino, и я был удивлён, насколько легко было настроить базовую последовательную связь. Существует несколько немного отличающихся модулей. Те, что у меня, маркированы как zs-040. Платы zs-040 отличаются от некоторых других модулей тем, что у них есть пин EN вместо пина KEY.

HC-05 zs-040 и HC-06 zs-040 используют одну и ту же плату расширения (даже с одинаковой маркировкой), но имеют заметные отличия:

  • HC-06 не имеет кнопки

  • HC-06 имеет только 4 контактных вывода

  • HC-06 не имеет подключённых пинов 31-34

Они также имеют разные прошивки. HC-05 может быть master или slave. HC-06 — только slave. Это означает, что HC-05 может инициировать подключение к другому устройству, а HC-06 может только принимать подключение от другого устройства.

Платы основаны на Bluetooth-модулях EGBT-045MS/EGBT-046S, которые загружены прошивкой SPP для UART-связи.

Спецификации модулей EGBT-045MS/EGBT-046S

  • Радиочип: CSR BC417

  • Память: Внешняя 8Mbit Flash

  • Выходная мощность: от -4 до +6dBm, Класс 2

  • Чувствительность: -80dBm (типичная)

  • Скорость передачи: EDR, до 3 Мбит/с

  • Интерфейс: UART

  • Антенна: Встроенная

  • Размеры: 27 x 13 мм (Ш x В)

  • Напряжение: от 3.1 до 4.2 В

  • Ток: макс. 40 мА

Насколько я могу определить, модули EGBT-045MS и EGBT-046S имеют одинаковое оборудование и единственное различие — это прошивка. Разная прошивка, однако, меняет распиновку.

Конфигурация пинов EGBT-046S и EGBT-045S

Платы расширения zs-040 включают стабилизатор напряжения 3.3В, что позволяет подавать напряжение VCC от 3.6 до 6В на основной пин VCC. Однако пины RX и TX по-прежнему работают на 3.3В.

Arduino принимает 3.3В как сигнал HIGH, поэтому пин TX HC-05/06 (выход) может быть подключён напрямую к 5В Arduino. Пин RX HC-05/06 (вход) не может принимать 5В и не должен подключаться напрямую к Arduino. Прямое подключение будет работать какое-то время, но повредит маленький Bluetooth-модуль, и в конечном итоге пин RX выйдет из строя. Напряжение 5В от Arduino необходимо понизить, и простой способ сделать это — использовать делитель напряжения из 2 резисторов. Я обычно использую резистор 1 кОм и резистор 2 кОм.

HC-05 zs-040

Соединения на плате расширения

На изображении ниже показаны основные дорожки/соединения на плате расширения zs-040, и как видно, для совместимости с разными прошивками определённые пины соединены между собой.

Плата расширения HC-05 HC-06 zs-040

HC-06 не имеет пина EN и пина STATE.

LED

Дорожка между пином 31 и пином 24 на плате расширения соединяет пин статусного светодиода на EGBT-045MS с пином статусного светодиода на EGBT-046S. Соединение далее идёт к самому светодиоду на плате расширения. Связь между пинами 31 и 24 позволяет использовать одну и ту же плату расширения для обоих модулей — EGBT-045MS и EGBT-046S.

Кнопка

Кнопка соединяет VCC (3.3В) с пином 34 и используется для перевода EGBT-045MS / HC-05 в режим AT-команд. Существует 2 режима AT: я называю их «мини-режим» и «полный режим». Короткое нажатие кнопки переводит модуль в мини-режим, и не все команды работают. Удержание кнопки переводит модуль в полный AT-режим, где работают все AT-команды. Отпускание кнопки возвращает пин 34 в состояние LOW.

Подробнее об AT-командах см. Arduino с HC-05 (ZS-040) — режим AT.

Большинство модулей HC-06 не имеют кнопки (место пустое), и подача HIGH на пин 34 HC-06 ничего не даёт.

Пин STATE

Из фото выше видно, что пин STATE подключён к пину 32 и пину 25 маленьких Bluetooth-модулей. Пин 32 — это LED2 на EGBT-045MS/HC-05. Пин 32 находится в состоянии LOW, когда модуль не подключён, и HIGH, когда подключён. Это даёт нам простой способ определить, подключён ли HC-05. Подключите пин STATE к цифровому пину Arduino — если digitalRead() возвращает HIGH, значит модуль имеет активное соединение. Конечно, можно подключить светодиод к пину STATE как визуальный индикатор соединения.

Я ещё не тестировал это на HC-06, но поскольку это не упоминается в руководстве, полагаю, что это не активно.

Пин EN

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

Загрузки

Даташит EGBT-045MS и EGBT-046S

Обновление

У меня появились новые модули HC-06 zs-040 с прошивкой hc01.comV2.0. Подробнее здесь.


Оригинал статьи: Martyn Currey — martyncurrey.com