По умолчанию модуль HC-05 имеет имя HC-05 и пин-код 1234 .
Для настройки данного модуля мы подключим данный его через USB переходник:
Контакты соединяем следующим образом:
HC-05 | Переходник USB |
+5V | +5V |
GND | GND |
RX | TX |
TX | RX |
При подключении компьютеру, светодиод на плате Bluetooth-модуля начнёт быстро мигать.
Для ввода АТ-команд я буду использовать программу CoolTerm, которая свободно есть в интернете.
В настройках программы выбираем номер виртуального COM-порта, к которому подключаем USB адаптер. По умолчанию скорость работы с АТ командами 38400бод.
После подключения модуля вводим команду «AT », если устройство подключилось, мы должны увидеть в качестве ответа «ОК ».
Для проверки версии прошивки, команда «AT+VERSION », в моём случае вернулся ответ:
Команда «AT+NAMEyyy », где ууу — произвольный набор символов, можно сменить имя, по которому будут находить наш модуль bluetooth-устройства .
Командой «AT+PINxxxx », где xxxx – произвольный набор цифр, можно сменить пин-код . В ответ получим «OKsetPIN ».
Командой «AT+BAUDx », где x – значение от 1 до 9, можно изменить скорость в бодах.
1 — 1200
2 — 2400
3 — 4800
4 — 9600
5 — 19200
6 — 38400
7 — 57600
8 — 115200
9 — 230400
Так если ведём команду «AT+BAUD8 », где 8 — скорость 115200 бод, в ответ возвратится «OK115200 ».
Ответ модуля на мои команды:
Если, мы что то натворим, можно ввести команду AT+ORGL , которая сбросит все настройки по умолчанию. После необходимо перезагрузить модуль.
Список основных АТ команд (если в терминале указано добавлять символы CR & LF или NL & CR то символы «\r\n» в командах ставить не нужно):
AT\r\n (Используется для проверки связи с модулем) — ответ OK\r\n
AT+RESET\r\n (Команда программной перезагрузки модуля) — ответ OK\r\n :
AT+VERSION?\r\n(Запрос версии прошивки модуля) — ответ VERSION:ВЕРСИЯ\r\n OK\r\n
AT+ORGL AT (Сброс пользовательских настроек) — ответ ORGL\r\n OK\r\n
AT+ADDR?\r\n (Запрос адреса модуля) — ответ ADDR:АДРЕС\r\n OK\r\n
AT+NAME?\r\n (Запрос / установка имени модуля) -ответ NAME:ИМЯ\r\n OK\r\n
AT+RNAME? АДРЕС\r\n (Запрос имени найденного Bluetooth устройства) — ответ RNAME:ИМЯ\r\n OK\r\n
ROLE AT+ROLE?\r\n (Запрос / установка роли модуля) — ответ ROLE:РОЛЬ\r\n (0 — ведомый, 1 — ведущий, 2 — ведомый в цикле)
CLASS AT+CLASS?\r\n(Запрос / установка типа устройства) — ответCLASS:ТИП\r\n OK\r\n
INQM AT+INQM?\r\n (Запрос / Установка режима опроса модулей) — ответ INQM:РЕЖИМ,КОЛ,ВРЕМЯ\r\n OK\r\n (0-стандартный, 1-поиск по интенсивности сигнала)
PSWD AT+PSWD?\r\n (Запрос / Установка PIN-кода) — ответ PSWD:КОД\r\n OK\r\n
UART AT+UART?\r\n +UART(Запрос / установка скорости UART) — ответ параметры USART\r\n OK\r\n
CMODE AT+CMODE?\r\n +CMOD (Запрос / установка режима подключения) — ответ режим работы\r\n OK\r\n
Режим представлен цифрой:
0 — модуль в роли ведущего подключается только к тому Bluetooth устройству, адрес которого указан командой AT+BIND.
1 — модуль в роли ведущего подключается к любому ведомому Bluetooth устройству.
2 — модуль в роли ведомого работает в цикле.
BIND AT+BIND?\r\n +BIND (Запрос / установка фиксированного адреса) — ответ Адрес\r\n OK\r\n
IPSCAN AT+IPSCAN?\r\n +IPSCAN(Запрос / установка параметров IP сканирования) — ответ А,Б,В,Г\r\n OK\r\n
Где:
А — интервал сканирования
Б — продолжительность сканирования
В — интервал страниц
Г — количество страниц
SNIFF AT+SNIFF?\r\n +SNIFF(Запрос / установка параметров энергосберегающего режима) — ответ А,Б,В,Г\r\n OK\r\n
Где:
А — максимальное время
Б — минимальное время
В — период повторов
Г — таймаут
SENM AT+SENM?\r\n +SENM (Запрос / установка параметров безопасности) — ответ Секрет, Шифр\r\n OK\r\n
Режим секретности представлен цифрой:
0 — выключен
1 — незащищённое соединение
2 — защита на сервисном уровне
3 — защита на уровне соединения
4 — неизвестный режим
Режим шифрования представлен цифрой:
0 — без шифрования
1 — шифруется только трафик PTP
2 — шифруется весь трафик
PMSAD AT+PMSAD (Удаление устройства из списка пар) — ответ Адрес\r\n OK\r\n :
STATE AT+STATE?\r\n +STATE( Запрос статуса модуля) — ответ Статус\r\n OK\r\n
Где:
INITIALIZED — инициализация
READY — готов
PAIRABLE — образование пары
PAIRED — пара образована
INQUIRING — запрос
CONNECTING — подключение
CONNECTED — подключён
DISCONNECTED — отсоединён
NUKNOW — неизвестное состояние
Описание ошибок выдаваемых модулем (ERROR №):
Описание ошибок:
0 — Неправильная AT команда (нет такой команды)
1 — Результат по умолчанию
2 — Ошибка сохранения пароля
3 — Слишком длинное имя устройства (более 32 байт)
4 — Имя устройства не указано
5 — Часть адреса NAP слишком длинная (более 4 разрядов в шестнадцатиричной системе)
6 — Часть адреса UAP слишком длинная (более 2 разрядов в шестнадцатиричной системе)
7 — Часть адреса LAP слишком длинная (более 6 разрядов в шестнадцатиричной системе)
8 — Не указана маска порта PIO
9 — Не указан номер вывода PIO
A — Не указан тип (класс) устройства
B — Слишком длинный тип (класс) устройства
C — Не указан общий код доступа IAC (Inquire Access Code)
D — Слишком длинный общий код доступа IAC (Inquire Access Code)
E — Недопустимый общий код доступа IAC (Inquire Access Code)
F — Не указан пароль (или пароль пуст)
10 — Слишком длинный пароль (более 16 байт)
11 — Недопустимая роль модуля
12 — Недопустимая скорость передачи данных
13 — Недопустимый размер стоп-бита
14 — Недопустимая настройка бита четности
15 — Устройство отсутствует в списке пар (списке сопряжённых Bluetooth устройств)
16 — Профиль последовательного порта (SPP, Serial Port Profile) не инициализирован
17 — Повторная инициализация профиля SPP (SPP, Serial Port Profile)
18 — Недопустимый режим опроса Bluetooth устройств
19 — Слишком большое время опроса
1A — Не указан адрес Bluetooth устройства
1B — Недопустимый режим безопасности (секретности)
1C — Недопустимый режим шифрования
Для отправки команд с телефона будем использовать программу Serial Bluethooth Terminal, которую можно бесплатно скачать в Play Market.
Выглядит она следующим образом:
Отправлять с телефона мы будим цифры и наблюдать прием данных на компьютере, через программу CoolTerm.