Прошивка bluetooth модуля HC-05/06

Прошивка bluetooth модуля HC-05/06

Рассмотрим, как сделать настройку Bluetooth модуля для Arduino с помощью AT-команд, отправляемых по последовательному порту. Данная информация будет полезна для тех, кто решил сделать проект на Ардуино в котором необходимо использовать беспроводную передачу данных между устройствами. При прошивке модуля, можно изменить многие параметры, установленные производителем.

Схема и распиновка Bluetooth модуля

Bluetooth модуль распиновка, схема
HC05/06 Bluetooth модуль распиновка, схема

Для настройки модуля необходимо подключить к нему питание от 3,3 Вольт, кроме того необходимо подать 3,3 Вольта на порт 34 (см. фото выше). Прошивка осуществляется по последовательному порту, так как аппаратный последовательный порт у Ардуино (порты TX и RX) будет занят для отправки AT-команд с компьютера, то мы используем программный последовательный порт с помощью библиотеки SoftwareSerial.h.

Данная библиотека позволяет реализовать программный последовательный порт на любых цифровых выходах Ардуино. Для настройки Bluetooth модуля его следует перевести в режим отладки — необходимо подключить вывод 34 к 3,3 Вольтам, питание модуля при прошивке тоже идет от 3,3 Вольт. В качестве контактов программного последовательного порта будем использовать цифровые выводы 2 и 3 на Arduino UNO.

Настройка Bluetooth модуля HC-05/06

Настройка Bluetooth модуля с помощью AT-команд
Настройка Bluetooth модуля с помощью AT-команд

После подключения модуля, загрузите следующий скетч (скачать) в Ардуино:

#include <SoftwareSerial.h> // подключаем библиотеку
SoftwareSerial mySerial(2, 3); // указываем пины tx и rx

void setup()
{
  pinMode(2,INPUT);
  pinMode(3,OUTPUT);
  
  Serial.begin(9600);    // включаем hardware-порт
  mySerial.begin(38400); // включаем software-порт
  
  Serial.println("start setting");
}

void loop()
{
  if (mySerial.available()) {
    char c = mySerial.read(); // читаем из software-порта
    Serial.print(c);          // пишем в hardware-порт
  }
  if (Serial.available()) {
    char c = Serial.read();   // читаем из hardware-порта
    mySerial.write(c);        // пишем в software-порт
  }
}

После загрузки скетча, открывайте монитор последовательного порта Arduino IDE и отправляйте AT-команды. Первым делом, следует отправить тестовую команду — AT, для проверки соединения модуля. Ответ модуля должен быть — OK.

Список основных AT-команд

AT-команда

Ответ модуля

Примечание

ATOKТестовая команда
AT+VERSION?+VERSION: …Узнать версию прошивки модуля
AT+RESETOKСброс настроек
AT+ADDR?+ADDR: …Узнать адрес модуля
AT+NAME?+NAME:«name»Узнать имя модуля, где «name» — имя Bluetooth-модуля
AT+NAME=«name»OKУстановить новое имя, где «name» — имя Bluetooth-модуля
AT+PSWD?+ PSWD:«pin»Узнать код доступа, где «pin» — код, по умолчанию 1234
AT+PSWD=«pin»«pin»
OK
Установить новый код доступа к модулю, где «pin» — код доступа к Bluetooth-модулю
AT+ROLE?+ROLE:«param»Узнать режим работы модуля, где «param» — режим:
0 — slave. К модулю может подключиться мастер;
1 — master. Модуль сам подключается к устройству.
AT+ROLE=«param»OKУстановить режим работы модуля, где «param» — режим

Прошивка модуля HC-05 с помощью AT-команд

Чтобы изменить код доступа к Bluetooth-модулю и имя, следует отправить следующие команды через монитор последовательного порта Arduino IDE (смотри скрин):

Настройка модуля через монитор последовательного порта
Настройка модуля через монитор порта Arduino IDE
  1. узнаем версию прошивки модуля: AT+VERSION?
  2. узнаем режим работы модуля: AT+ROLE?
  3. узнаем имя Bluetooth-модуля: AT+NAME?
  4. задаем новое имя модуля: AT+NAME=ROBOT
  5. узнаем имя Bluetooth-модуля: AT+NAME?
  6. узнаем пин-код Bluetooth-модуля: AT+PSWD?
  7. задаем новый пин-код доступа: AT+PSWD=0000
  8. узнаем пин-код Bluetooth-модуля: AT+PSWD?

Обратите внимание что при настройке модуля, в мониторе последовательного порта IDE Arduino следует выбрать пункт «NL & CR». После программирования модуля отсоедините вывод 34 от 3,3 Вольт и подключитесь к Bluetooth-модулю с телефона или планшета. Если при первом подключении блютуз модуля к Ардуино, у нас были стандартные настройки, то сейчас наш модуль имеет свое имя и новый пин-код.

Настройка bluetooth модуля на Android
Настройка bluetooth модуля на Android

Таким образом, мы можем использовать в одном месте сразу несколько bluetooth модулей, а чтобы не запутаться присвоить каждому свое уникальное имя. Также мы можем задать новый пин-код, чтобы защитить модуль от постороннего вмешательства. С помощью данной настройки модуля HC-05/06 мы можем получать данные с датчиков не только на мониторе порта, но и на любом Android — устройстве.


1 Star2 Stars3 Stars4 Stars5 Stars (3 votes, average: 5,00 out of 5)
Загрузка...

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *