Hc serial bluetooth products

Arduino и Bluetooth

В настоящее время в зарубежных и отечественных магазинах можно найти большое количество различных Bluetooth Serial модулей для DIY-устройств. Цена на них не сильно высока: 5-10$ за модуль (с учетом бесплатной доставки в любую страну). Их легко можно найти на широко известной площадке AliExpress введя в поисковую строку одно из словосочетаний: Bluetooth RS232, Bluetooth Serial, HC-03, HC-04, HC-05, HC-06 или нажать на эту ссылку. Bluetooth модулиВ большинстве модулей используется чип BC417, плюс Flash-память. Чип поддерживает спецификацию Bluetooth v2.0 + EDR, AT-команды, может работать в режиме Master или Slave (модули HC-03/HC-5, может устанавливаться AT-командой), поддерживает скорость обмена от 2400 до 1382400.
Напряжение питание модуля составляет 3.3В, ток потребления ~50мА.
Модули HC-03/HC-05 более функциональные, чем HC-04/HC-06. Схема подключения Bluetooth модуля HC-06 (BMX-02A)Основные выводы модулей HC-04/HC-06:
UART_TX (pin 1), UART_RX (pin 2), UART_CTS (pin 3), UART_RTS (pin 4) — пины UART.
3,3V (pin 12) — питание 3.3В.
GND (pin 13) — общий.
PIO1 (pin 24) — индикатор рабочего режима. Если соединение не установлено — то светодиод мигает, если установлено, то постоянно горит. Для модулей HC-03/HC-05 есть некоторые отличия. Линии UART и питания те же самые, но:
PIO8 (pin 31) — индикатор рабочего режима.
PIO9 (pin 32) — статус соединения, если соединение установлено, то на выходе будет высокий уровень.
PIO11 (pin 34) — вход включения режима AT-команд (необходимо подать лог. 1). За более подробной документацией обращайтесь к PDF. Плата Bluetooth модулейИтак, соберем простую схему для подключения Bluetooth модуля HC-06 к плате Arduino Nano V3. Подключение Bluetooth модуля HC-06 к ArduinoОбратите внимание, что выводы TX и RX в плате Arduino Nano поменяны местами в отличии от Ardunio UNO и др. Поэтому внимательно смотрите распиновку своей Arduino платы. Шаг между выводами в модуле составляет всего 1.5мм, поэтому придется взяться за паяльник и припаять провода к модулю. Всего необходимо припаять 5 проводов, однако светодиод подключать необязательно, он служит для индикации состояния. Итак припаиваем провода и подключаем Bluetooth модуль следующим образом:
вывод Arduino 3.3В — к 12 пину модуля
вывод Arduino GND — к 13 пину модуля
вывод Arduino TX — к 2 пину модуля RX
вывод Arduino RX — к 1 пину модуля TX

Передача данных из Arduino по Bluetooth

int cnt = 0; // счетчик void setup() < Serial.begin(9600); // инициализация порта >void loop() < cnt++; Serial.print("Hello BB from Arduino! Counter:"); // выводим надпись Serial.println(cnt); // выводим значение счетчика и переводим на новую строку delay(1000); // ждем 1 секунду >

Как видите скетч довольно простой и хорошо прокомментирован. В цикле, раз в секунду происходит увеличение переменной cnt, которая затем с текстовой надписью выводится в последовательный порт на Bluetooth модуль. Обратите внимание, что скорость порта установлена в значение 9600. При покупке модуля, спрашивайте на какое значение установлена скорость обмена по последовательному интерфейсу. Но в большинстве случаев это 9600. При необходимости, скорость обмена можно изменить АТ-командами. Откройте данный скетч в Arduino IDE, скомпилируйте и прошейте ваш Arduino. Если вы подключали светодиод в Bluetooth модулю, то он должен мигать, показывая тем самым, что модуль ожидает соединение. Внимание! Если при прошивке платы Arduino ругается прошивальщик, то отключите питание 3.3В с Bluetooth модуля. Bluetooth флэшкаНа компьютере, в качестве Bluetooth модуля использовался самый дешевый китайский Bluetooth USB адаптер, стоимостью около 200 руб. После того, как адаптер подключается к компьютеру, установите необходимые драйвера (в Windows 7 x64 у меня все драйвера поставились автоматом).
Затем щелкаем в трее по иконке Bluetooth модуля и выбираем «Добавить устройство»: Добавление нового Bluetooth устройстваИмя моего модуля BOLUTEK, у вас оно скорее всего будет другим. Нажимаем «Далее» и переходим к окну, где необходимо ввести пароль для устройства: Код образования пары для Bluetooth устройстваВыбираем второй пункт: «Введите код образования пары устройства». С завода, код установлен 1234. Его и вводим. Программа настроит и пропишет в системе виртуальные COM-порты (у меня прописало 2 шт, но может быть и один): Виртуальные COM-портыВ дальнейшем, можно посмотреть на какой COM-порт назначилось и его параметры. Для этого щелкаем правой кнопкой мыши по устройству и выбираем «Свойства» и вкладку «Оборудование». Там можно посмотреть и изменить параметры виртуального COM-порта: Параметры COM-портаТеперь, для приема и передачи данных на виртуальный COM порт можно использовать любую терминал программу. Я использовал бесплатную Tera Term. При каждом запуске программы предлагается выбор соединения, переключаем флажок на Serial и выбираем COM порт вашего Bluetooth модуля. У меня это COM4. Tera TermВ терминале мы видим данные счетчика с платы Arduino: Данные с ArduinoКак видим, данные успешно передаются по Bluetooth соединению. Ниже в статье вы можете посмотреть видео.

Читайте также:  Магнитола pioneer настроить блютуз

Двунаправленный обмен данными по Bluetooth

Следующим шагом будет написание простенькой программы двунаправленного обмена данными между Arduino и компьютером. В схему я добавил светодиод, подключив его к 12 пину Arduino, через токоограничительный резистор. Но можно использовать и встроенный LED (обычно 13 пин).

char incomingByte; // входящие данные int LED = 12; // LED подключен к 12 пину void setup() < Serial.begin(9600); // инициализация порта pinMode(LED, OUTPUT); Serial.println("Press 1 to LED ON or 0 to LED OFF. "); >void loop() < if (Serial.available() >0) < //если пришли данные incomingByte = Serial.read(); // считываем байт if(incomingByte == '0') < digitalWrite(LED, LOW); // если 1, то выключаем LED Serial.println("LED OFF. Press 1 to LED ON!"); // и выводим обратно сообщение >if(incomingByte == '1') < digitalWrite(LED, HIGH); // если 0, то включаем LED Serial.println("LED ON. Press 0 to LED OFF!"); >> >

Обмен данными

Программа работает очень просто. После запуска или сброса устройства, в последовательный порт выводится сообщение с предложением нажать 1 или 0. В зависимости от нажатой цифры светодиод будет загораться или гаснуть. А также, от Arduino будет выводиться сообщение загорелся светодиод, или погас. Видео работы:

Подключаем к Android

Для платформы Android также существуют программы-терминалы. Но необходима специальная программа для работы в терминальном режиме по Bluetooth. Я установил вот эту: Bluetooth Terminal. Достаточно простая программа, ничего лишнего. В моем Android устройстве нет Bluetooth модуля, но он прекрасно работает и с внешним USB-адаптером, который мы использовали для подсоединения к ПК. Подключаем адаптер по USB, включаем на андроиде bluetooth, находим и вводим пароль для нашего Bluetooth устройства на Arduino и наконец запускаем программу терминал. Нажимаем «Connect a device — Secure» и выбираем наше устройство BOLUTEK. Теперь вы можете отправлять и принимать данные с Bluetooth устройства при помощи терминала. Видео соединения с Android устройством:

Читайте также:  Canon eos 550d bluetooth

Прикрепленные файлы:

Источник

Hc serial bluetooth products

0.146 3.70mmGreenBulkThermoplasticThrough Hole, Kinked Pin45° (135°) Angle with BoardScrewless — Push Button Clamp1 Levels20-26 AWGHC

Hc-05 is a Bluetooth serial port module with master-slave integration. The master-slave can be switched with rich and complete instructions. Hc-06 is a Bluetooth serial port module with master-slave integration. The master-slave can be switched by command, and the command is less than the-05, so it is easy to use. This article is going to explain the difference between the HC-06 and HC-05 Bluetooth modules.

This video demonstrates Arduino Bluetooth AT commands HC 05 and HC 06.

Arduino Bluetooth AT commands HC 05 HC 06

Overview of HC-06

The HC-06 Bluetooth module is intended for use with two microcontrollers or systems to establish short-range wireless data communication. Its operation becomes transparent to the user after it is associated with a master Bluetooth device, such as a PC or smartphone. All data received through the serial input is sent over the air right away.

hc-06..jpg

Overview of HC-05

The HC-05 is a Bluetooth Serial Port Protocol module, which means it communicates with the Arduino using serial communication. This module features a BC417 Single-Chip Bluetooth IC that supports both the UART and USB interfaces and is compliant with the Bluetooth v2.0 standard.

hc-05.jpg

HC-06 vs. HC-05: Specifications

HC-05 HC-06
Low operating voltage: 4V to 6V (Typically +5V) Input voltage: 3.3~6V (Typically +5V)
Frequency: 2.45 GHz Built-in antenna
Range: Operating Current: 30mA
Follows IEEE 802.15.1 standardized protocol Uses Frequency-Hopping Spread Spectrum (FHSS)
Supported baud rates are 9600,19200,38400,57600,115200,230400 and 460800. Works with Serial communication (USART) and TTL compatible
Can operate in Master, Slave, or Master/Slave mode 2.4GHz ISM band frequency
Default baud rate: 9600

HC-06 vs. HC-05: Pinout& Entering AT Mode

hc-06 vs hc-05 pinout and at mode.jpg

HC-06 and HC-05 Pin and Entering AT Mode

PINS: The pins found on the breakout board are,
KEY: This pin has to be pulled high to enter AT mode.
VCC: The indicated range is 3.6 to 6 volt. To be on the safer side, you should connect it to 3.3 Volt.
GND: Ground.
RXD: Serial input pin.
TXD Serial output pin.
STATE: May or may not be connected to any pin. Supposedly outputs the Bluetooth connection status. This pin will not be needed.

Connect the Rx pin of the Bluetooth module to the Tx pin of the USB to TTL converter, and the Tx pin of the Bluetooth module to the Rx pin of the converter for the HC-05. Connect their ground as well, but leave the Vcc disconnected for now. You’ll need to short the key pin with the Vcc first. On a breadboard, or in any other way, connect key pin and Vcc, Connect the Vcc of the bt module to the Vcc of the USB to the TTL converter after all other pins are connected. The led on the module will now blink at a 2-second interval.

That means it has entered the AT mode. If the led blinks faster then AT mode was not entered. Disconnect Vcc. check your circuit, and try again. If it does not work then there’s a chance that your KEY pin of the module is not really soldered to the KEY of the main chip, i.e. the 34th pin, You can check that with the help of a multimeter.

Simply connect the module‘s Rx to the USB-TTL converter‘s Tx and the module‘s Tx. Ground and Vcc should be connected. The module is in AT mode. Didn’t see that one coming, right? 😛 Turns out the HC-06 module is permanently configured to be a slave and it is always in AT mode when not paired to any other device. As a result, unlike the HC-05, there is no confirmation led blinking to indicate that it is in AT mode, To change the default settings, simply turn on the module and provide the AT commands.

HC-06 vs. HC-05: Breakout Board Connections

hc-06 vs hc-05 breakout board.jpg

The push-button switch is used to bring the EGBT-045MS / HC-05 in to AT mode by connecting VCC (3.3v) to pin 34. There are two AT modes , which I call «small mode» and «full mode.» When you push the button switch for a few seconds, the modules go into the tiny model, which means that not all commands operate. When the switch is closed, the modules enter full AT mode, which allows them to respond to all AT commands . When the switch is released, pin 34 is set to LOW.

Because most HC-06 modules lack a button switch (the space is empty), raising pin 34 HIGH on the HC-06 has no effect .

Источник

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