At команды bluetooth ардуино

Bluetooth-модуль HC-06

Модуль HC-06 (и старшая модель HC-05) представляет собой плату с Bluetooth-модемом с дополнительной обвязкой: стабилизатор с 5 на 3.3 вольта, светодиод, и конденсаторы на линиях питания. Также на плате установлен mosfet-транзистор (Q1), который при надобности может разрывать цепь питания блютуза, тем самым отключая его.

Модуль HC-06 используется только в режиме slave, то есть он не может самостоятельно подключаться к другим устройствам Bluetooth.

На HC-06 шесть подписанных контактов: EN, VCC, GND, TXD, RXD и State (некоторые обозначения могут иметь другие названия). Но ножками как правило оборудованы только четыре из них: VCC, GND, TXD и RXD.

HC-06

Технические характеристики

  • Питание: 3,3В–6В
  • Максимальное входное напряжение: 5В
  • Максимальный ток: 45 мА
  • Скорость передачи данных: 1200–1382400 бод
  • Рабочие частоты: 2,40 ГГц – 2,48ГГц
  • Поддержка спецификации bluetooth версии 2.1
  • Дальность связи: 30 м
  • Пароль «1234», скорость передачи данных 9600, имя модуля HС-06 (все настройки можно изменить AT-командой)

Для подключения к Arduino Uno используется следующая схема.

 HC-06 | Arduino ----------------- GND | GND VCC | 3.3V RXD | TX TXD | RX 

Модуль HC-06 выступает в роли последовательного порта, через который можно передавать и принимать данные. Вы можете для этой цели использовать компьютер или смартфон.

Важное замечание: при заливке скетча убирайте провода с контактов 0 и 1 на плате Arduino, так как они используются для передачи данных вашего скетча. Когда скетч установите, можете вернуть провода на место.

Подключение к компьютеру

Рассмотрим пример подключения и обмена информацией с компьютером. Если у компьютера нет встроенного Bluetooth, то можно купить отдельный модуль, подключаемый через USB.

Читайте также:  Sony walkman bluetooth наушники

Сначала необходимо сделать несколько предварительных действий. Когда вы подключите HC-06 к плате, он будет готов к работе, постоянно мигая своим светодиодом. Нужно установить соединение с компьютером. Далее объяснения идут для Windows 10. В нижнем правом углу находим значок Bluetooth и выбираем пункт Show Bluetooth Devices. В открывшемся окне выбираем пункт Add a device. В успешном случае будет обнаружено новое устройство с именем HC-06. Для спаривания с ним введите пароль по умолчанию 1234.

HC-06

После успешного соединения нужно снова открыть окно Show Bluetooth Devices и выбрать пункт More Bluetooth options. В диалоговом окне переключитесь на вкладку COM Ports и запомните номер порта для Outgoing — в моём примере это был порт COM7.

HC-06

Далее следует установить программу-терминал для общения с модулем. Самой простой и популярной является Termite. Я выбрал вариант «Program only» (вторая в списке) размером всего 76 кб. Программа не требует инсталляции и не пишет ничего в реестр. Запустите программу, нажмите на кнопку Settings и в диалоговом окне выберите нужный порт (который я просил запомнить) и скорость (9600).

Напишем скетч и зальём его на плату.

 String message; // строка для входящих сообщений void setup() < Serial.begin(9600); >void loop() < while (Serial.available()) < message += char(Serial.read()); //сохраняем строку от входящих сообщений >if (!Serial.available()) < if (message != "") < //если данные доступны Serial.println(message); //выводим данные message = ""; //очищаем данные >> delay(3000); //delay > 

В Termite вводим любое слово в нижнем текстовом поле и нажимаем клавишу Enter. В Serial Monitor будут отображаться введённые слова. Это означает, что мы можем посылать определённые команды для платы, чтобы управлять ей.

Давайте попробуем включать и выключать встроенный светодиод на контакте 13.

 int val; int LED = 13; void setup() < Serial.begin(9600); pinMode(LED, OUTPUT); >void loop() < if (Serial.available()) < val = Serial.read(); // При символе "1" включаем светодиод if (val == '1') < digitalWrite(LED, HIGH); Serial.println("On"); >// При символе "0" выключаем светодиод if ( val == '0') < digitalWrite(LED, LOW); Serial.println("Off"); >> > 

Если всё получилось, то примите мои поздравления. Теперь вы можете общаться с платой с компьютера.

Читайте также:  Тв приставка блютуз колонки

Подключение к Android

Подключение к телефону на Android происходит по такой же схеме. Устанавливаем терминал, например Bluetooth Terminal, соединяемся с нашим модулем и посылаем команды из предыдущего скетча. Плата будет включать и выключать свой светодиод, принимая сигнал с телефона.

AT-команды

С помощью AT-команд можно сменить настройки по умолчанию. Имейте в виду, что в 2018 году модули стали поставляться с другой прошивкой и некоторые сведения, которые ранее были описаны в интернете, устарели. Я описываю актуальные команды на 2019 год.

Используем следующую схему подключения.

 HC-06 | Arduino ----------------- GND | GND VCC | 3.3V RXD | D3 TXD | D2 

При подключении светодиод на модуле будет мигать два раза в секунду. В этом режиме можно вводить команды. Но сначала загрузим скетч.

 #include SoftwareSerial btSerial(2, 3); // RX, TX /* Connect pin 2 Arduino to pin TX HC-06 Connect pin 3 Arduino to pin RX HC-06 */ void setup() < Serial.begin(9600); Serial.println("Enter AT commands:"); btSerial.begin(9600); >void loop()

В Serial Monitor вводим команду AT . В ответ получим OK.

Чтобы сменить имя модуля, нужно ввести команду AT+NAME=CAT-06 , где CAT-06 — новое имя. Имя не должно превышать 20 символов.

Узнать версию модуля: AT+VERSION . Ответ: VERSION:3.0-20170609.

Смена пароля: AT+PSWD:»0000″ , где 0000 ваш новый пароль.

Есть ещё команды для смены скорости, но тут нужно быть внимательным. После смены скорости старые скетчи не будут работать, надо вносить в них изменения, чтобы соответствовать новым настройкам. Не уверен, что стоит увлекаться этим.

Сравнение модулей HC-05 и HC-06

Модули HC-05 и HC-06 являются наиболее используемыми. Оба модуля основаны на одинаковом чипе, но есть и важные отличия. Модуль HC-05 может работать в двух режимах работы – и в качестве ведущего (master), и в качестве ведомого (slave).

Читайте также:  Горячая клавиша включения блютуз

Модуль HC-05 стоит несколько дороже, но он имеет большее количество полезных рабочих функций. Скорость передачи АТ команд по умолчанию для HC-05 равна 38400, для HC-06 – 9600. Важным моментом является то, что в конце АТ команд для HC-05 должны быть символы CRLF.

Подключение обоих модулей к плате Arduino одинаково.

Источник

Оцените статью
Adblock
detector