Мастер-модуль Bluetooth HC-05 с программированием Arduino

Содержание

HC-05 Bluetooth Module

Введение в модуль Bluetooth HC-05

Модуль Bluetooth HC-05 — это беспроводной модуль с низким энергопотреблением, используемый для беспроводной связи между двумя устройствами. Он работает в диапазоне ISM 2,4 ГГц и может использоваться для передачи данных и управляющих сигналов. Он широко используется в робототехнике, домашней автоматизации и другой бытовой электронике. Он имеет простой протокол последовательного порта и может использоваться для соединения таких устройств, как смартфоны, планшеты и компьютеры, друг с другом. Он также может использоваться для подключения устройств к домашней сети Wi-Fi. Примером может служить использование модуля Bluetooth HC-05 для подключения смартфона к роботизированной руке, что позволяет пользователю управлять роботизированной рукой с помощью смартфона.

Конфигурация контактов

Модуль Bluetooth HC-05 — это популярный модуль Bluetooth, который может добавить двунаправленную беспроводную функциональность к вашим проектам. Он имеет 6 контактов: Key, Vcc, GND, TXD, RXD, State.
Эти контакты используются для отправки данных с одного устройства на другое. Он также имеет контакт включения, который позволяет переключаться между режимом команд и режимом данных. Контакт Key/EN должен быть в высоком состоянии для работы в режиме команд и в низком состоянии для работы в режиме данных. Кроме того, контакты Vcc и Ground используются для питания модуля напряжением +5 В от источника питания. С помощью этих контактов HC-05 может использоваться для различных целей, таких как регистрация данных, потребительские приложения и беспроводные роботы.

HC 05 Bluetooth Module Circuit%20Connections

Схема электрических соединений

Чтобы подключить модуль Bluetooth HC-05 к Arduino, вам понадобится схема соединений. Схема соединений модуля Bluetooth HC-05 и Arduino довольно проста и понятна. Она состоит из модуля Bluetooth HC-05, платы Arduino Uno, макетной платы и соединительных проводов.

60880abf5482cf6f149ca193552528ebdf1f92a4

Как запрограммировать модуль Bluetooth с помощью Arduino?

В этом посте мы используем плату Arduino UNO для программирования модуля Bluetooth HC-05. Как правило, необходимо выполнить два шага:

  • Настройка режима AT на модуле Bluetooth
  • Программирование и отладка

Настройка режима AT на модуле Bluetooth HC-05

Цель режима AT — изменить исходные параметры модуля Bluetooth HC-05. Основные параметры включают в себя: имя Bluetooth, режим и пароль сопряжения и т. д. Конечно, есть два способа настроить режим AT на модуле Bluetooth:

  1. Использование USB-TTL и программного обеспечения для отладки последовательного порта
  2. Использование Arduino и модуля Bluetooth

Здесь мы в основном расскажем о втором способе.

1). Подготовка материалов:

  • ArduinoUNO * 1
  • Модуль последовательного порта Bluetooth HC-05 *1
  • Мини-светодиод *1
  • Линия Dupont *4

2). Подключение модуля Bluetooth к Arduino UNO:

Чтобы установить режим AT на модуле Bluetooth, необходимо правильно подключить провода к плате Arduino UNO:

  • Arduino 5V — VCC
  • Arduino GND — GND
  • Arduino Pin10 — TXD
  • Arduino Pin11 — RXD

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

Connect the Arduino UNO board and HC-05 bluetooth module

3). Написание кода Arduino UNO для модуля Bluetooth:

Далее нам нужно написать программный код для модуля Bluetooth HC-05 в Arduino IDE. Эта программа позволяет нам настроить модуль Bluetooth через последовательный монитор в Arduino IDE. Код выглядит следующим образом:

				
					#include <SoftwareSerial.h> 

// Pin10-RX,connectting the TXD of HC05
// Pin11-TX,connectting the RXD of HC05

SoftwareSerial BT(10, 11); 
char val;
void setup() {
  Serial.begin(38400); 
  Serial.println("BT is ready!");

  // HC-05 default,38400

  BT.begin(38400);
}
void loop() {
  if (Serial.available()) {
    val = Serial.read();
    BT.print(val);
  }
  if (BT.available()) {
    val = BT.read();
    Serial.print(val);
  }
}
				
			

4). Отладка кода с помощью последовательного монитора Arduino IDE:

Сначала выключите Arduino UNO, затем нажмите и удерживайте черную кнопку на модуле Bluetooth, а затем включите Arduino.

Если индикатор модуля Bluetooth мигает с частотой 2 секунды, это означает, что модуль Bluetooth правильно перешел в режим AT.

Откройте последовательный монитор Arduino IDE и выберите правильный порт. Установите формат вывода на «Оба: NL & CR» и скорость передачи данных на 38400, и вы увидите сообщение «BT готов!» на последовательном мониторе.

Затем введите AT, если все в порядке, последовательный монитор отобразит OK.

Open Serial Monitor of Arduino IDE

5). Настройка AT-команд для модуля Bluetooth:

Как только модуль Bluetooth правильно перешел в режим AT, мы можем добавить к нему команды AT. Обычные команды AT следующие:

				
					AT                  // check if the module is responding
AT+NAME             // set or get the name of the device
AT+ADDR             // get the Bluetooth address of the module
AT+ROLE             // set or get the role of the module
AT+PSWD             // set or get the password of the device
AT+UART             // set or get the UART interface settings
AT+RESET            // reset the module

				
			

В нормальных условиях после отправки команды будет возвращено сообщение OK. Если информация не возвращается, проверьте правильность подключения и вход модуля Bluetooth в режим AT.

После настройки команды AT перезапустите питание. В это время индикатор модуля Bluetooth будет быстро мигать, что означает, что модуль Bluetooth перешел в нормальный рабочий режим.

Программирование и отладка

После того, как мы завершили настройку AT модуля Bluetooth, мы можем приступить к программированию экспериментов на нем. В этом эксперименте мы создадим программу, которая позволит управлять эффектом светодиодного переключателя на плате Arduino UNO через мобильный телефон.

1). Проектирование схем Arduino:

Конструкция схемы здесь относительно проста и состоит в основном из двух частей:

  • Соединение Arduino и модуля HC05
  • Соединение Arduino и светодиода

Здесь следует обратить внимание на два момента: TXD на Arduino должен быть подключен к разъему RXD на модуле HC05, а RXD на Arduino должен быть подключен к TXD на модуле HC05. На рисунке ниже мой светодиод подключен напрямую к выводу 13 Arduino. Но на самом деле вам следует подумать, нужен ли последовательный резистор в зависимости от конструкции светодиодной лампы.

Connect the Arduino UNO board and LED light

2). Добавление программного кода на плату Arduino UNO:

Код мигания светодиода следующий:

				
					void setup()

{
  // Set the baud rate to 38400

  Serial.begin(38400);
  pinMode(13, OUTPUT);
}
void loop()
{
  while(Serial.available())
  {
    char c=Serial.read();
      if(c=='1')
      {
        Serial.println("BT is ready!");
        
        // Return to the phone debugging program

        Serial.write("Serial--13--high");
        digitalWrite(13, HIGH);
      }
     if(c=='2')
     {
       Serial.write("Serial--13--low");
       digitalWrite(13, LOW);
     }
  }
}
				
			

3). Отладка программы на мобильном устройстве:

Установка программного обеспечения для отладки модуля последовательного порта Bluetooth:

Модуль последовательного порта Bluetooth основан на протоколе SPP (Serial Port Profile), устройстве, которое может создавать последовательный порт между устройствами Bluetooth для передачи данных и широко используется в электронных устройствах с функциями Bluetooth. Существуют различные программы отладки модулей последовательного порта Bluetooth для Android и IOS.

Отладка программы мигания светодиода:

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

  • «1» — светодиод горит, возвращает Serial—13—high в программном обеспечении отладки.
  • «2» — светодиод выключен, возвращение к Serial—13—low в программном обеспечении отладки.

Заключение

В этой статье вы сможете ознакомиться с базовыми знаниями и важными шагами по программированию модуля Bluetooth HC05 в Arduino.

Подписаться

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

Об авторе

Picture of Aidan Taylor
Aidan Taylor

I am Aidan Taylor and I have over 10 years of experience in the field of PCB Reverse Engineering, PCB design and IC Unlock.

Нужна помощь?

Прокрутить вверх

Instant Quote