Bluetooth hc-06 и arduino

Элементы платы

Bluetooth модуль HC-05

Сердцем модуля является чип BC417 от компании Cambridge Silicon Radio, который обеспечивает аппаратную поддержку стека Bluetooth 2.0 + EDR (Enhaced Data Rate), а также флэш-память ES29LV800DB-70WGI от Excel Semiconductor на 8 Мбит (1 МБ), хранящая прошивку и настройки.

Troyka контакты

1 группа

  • Земля (G) — соедините с землёй микроконтроллера.
  • Питание (V) — соедините с питанием микроконтроллера.
  • Сигнальный (TX) — Подключите к пину микроконтроллера.

2 группа

  • Сигнальный (K) — Подключите к сигнальному пину микроконтроллера.
  • Не используется.
  • Сигнальный (RX) — Подключите к пину микроконтроллера.

Светодиодная индикация

Имя светодиода Назначение
RX и TX Мигают при обмене данными между Bluetooth и управляющим устройством.
PAIR Горит, если модуль сопряжён с другим устройством
MODE Мигает в зависимости от режима работы (горит/не горит):
64 мс/300 — нет сопряжения;
64 мс/2000 мс — сопряжён с другим устройством;
2000 мс/2000 мс — режим AT-команд.

Обвязка для согласования уровней напряжения

Необходима для сопряжения устройств с разными питающими напряжениями.
В нашем случае это может быть управляющее устройство Arduino с 5 вольтовой логикой и Bluetooth модуль с 3,3 вольтовой логикой.

Installation

Option 1: Git (Recommended)

Option 2: Source only

  • Download a ZIP file. The ZIP button at
    GitHub will always get the
    latest version, but you may prefer one of the
    tagged versions.

  • Unpack the zip file into your sketchbook library directory
    ( on Linux).

  • Rename the resulting directory (or create a symlink) to
    ~/sketchbook/libraries/HC05

  • Start the Arduino IDE and you should find in the libraries
    section.

Configuration

By default the library is configured for a software serial port and
debugging output to the hardware serial port (Serial) is turned on. You
will need to edit the HC05.h file if you want to change those settings.

The Bluetooth port is and must be setup as shown at the top
of the Example sketches. If debugging output is enabled in HC05.h (it is
by default) then your sketch must include a DEBUG_BEGIN(baud) command to
initialize the debug output port and set it’s baud rate.

Hardware Serial Port Issues for UNO

Using the hardware serial port on the UNO comes with some caveats:

  • You will have to disconnect the HC-05 module to upload a sketch.
  • If you use the Arduino you will see the traffic to
    and from the HC-05 serial port. If you type in the
    it will interfere with the HC-05 traffic.

Step 3: Steps to Switch the HC-05 Into Command Mode

For the HC-05 module to switch to AT command mode, the HC-05 pin 34 (often referred to as the Key pin) needs to pulled HIGH but in a certain order of events explained below. When the HC-05 enters the AT command mode, it will communicate at 38400 baud rate. Follow these steps in the stated order to switch to the HC-05 to AT command mode. 

  1. Wire the HC-05 and Arduino Uno per instructions.
  2. BEFORE YOU CONNECT THE ARDUINO TO THE USB remove the VCC (power) red wire from the HC-05 so it’s not getting any power from the Arduino. All other wires are still connected.
  3. Now connect the Arduino Uno to the USB cable extended from your PC.
  4. Make sure the HC-05 module is NOT PAIRED with any other Bluetooth device.
  5. Re-connect the Arduino Uno 5V wire to the HC-05’s VCC (5V power) pin.
  6. The HC-05 LED will blink on and off at about 2 second intervals. Now the HC-05 is in AT command mode ready to accept commands to change configuration and settings.
  7. To test if everything is wired correctly,  open the Serial Monitor from the Arduino IDE and type «AT» and click SEND. You should see an «OK»
  8. If you don’t see an «OK» check your wiring.

Скетч Arduino для приема данных по Bluetooth

В это примере проверяется на наличие данных UART порт. Если пришла единица то включается светодиод 13 на самой плате Arduino, а если ноль то выключается. Передавать данные можно при помощи приложения для работы с arduino. Таких приложений очень много на PlayMarket при помощи который можно слать различные данные.

После того как скетч закачан в нашу Arduino и установлена программа на смартфон, можно начать настраивать соединения по Bluetooth . Для это нужно сначала активировать bluetooth на смартфоне/планшете , далее найти наш модуль к которому мы хотим подключится и при соединении ввести password. Пароль по дефолту в таких модуля. «0000» если не походит то пробуем»1234″. Один из этих паролей подойдет 100% — зуб даю .  В случае если соединение установлено то светодиод на плате модуле перестанет моргать или же будет редко подмигивать, мол все нормально.  Если обобщить то последовательность действий будет такая:

  • активируем Bluetooth на своем телефоне
  • нажимаем поиск и ищем ближайшие устройства
  • ищем  «HC-06» и пытаемся законнектится с ним
  • при запросе пин кода вводим «1234» или «0000»
  • наслаждаемся всеми прелестями отсылки/приема данных через Bluetooth

Таким образом  модули HC-05, HC-06 довольно широко используются во многих устройствах и проектах не только на Arduino но и на микроконтроллерах . Оно и понятно, его очень просто подключить и использовать.

Bluetooth в Arduino проектах

Нередко в проектах возникает необходимость дистанционного управления или передачи данных с телефона или другого устройства. Одним из самых популярных и удобных способов является обмен данных через Bluetooth. Для связи платы Ардуино и компьютера используется интерфейс UART (Serial). Так как любая плата Ардуино имеет хотя бы 1 последовательный порт UART, для подключения Bluetooth модуля не требуются специализированные библиотеки и схемы.

Самыми популярными модулями являются устройства на основе чипа BC417. Эта серия называется HC. Модули HC-03 и HC-05 могут быть и сервером соединения, и клиентом, они обладают широким набором АТ команд.

Для подключения к ПК потребуются модуль Bluetooth, плата Ардуино, соединительные провода и компьютер. Скетч для управления платой Ардуино через смартфон и компьютер будет одинаковым, так как в обоих случаях данные в микроконтроллер буду поступать по протоколу UART. Схема подключения Bluetooth-модуля к плате представлена на рисунке. Пин RX на ардуино подключается к TDX, TX – к RDX, GND – к GND, 5V – к VCC.

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


int val;

void setup()

{

Serial.begin(9600);

pinMode(13, OUTPUT); // 13 пин – светодиод, объявляется как выход

}

void loop()

{

if (Serial.available()) // проверка поданных команд

{

val = Serial.read();

if (val == '1') {digitalWrite(13, HIGH);} // при 1 включается светодиод

if (val == '0') {digitalWrite(13, LOW);}  // при 0 выключается светодиод

}

}

Теперь нужно настроить соединение телефона и модуля. Для установки соединения нужно зайти в настройки телефона и включить Bluetooth. Как только устройство будет найдено, нужно ввести пароль – обычно это «1234» или «0000». После этого нужно зайти в приложение, нажать на кнопку «подключить Bluetooth» и выбрать нужное устройство. При успешном сопряжении на модуле светодиод начнет мигать медленнее,  примерно 1 раз в 2 секунды.

В скетче светодиод включается и выключается при получении цифр «1» и «0». Кроме цифр также можно использовать буквы латинского алфавита с учетом регистра.

Аналогичным образом можно подключаться к модулю при помощи компьютера. Для этого существуют различные программы, которые подключатся к COM-порту. При запуске программы запрашивают номер порта, скорость  и тип подключения. При успешном подключении на экране появится поле терминала, в которое нужно ввести с клавиатуры цифры/буквы, включающие светодиод.

Пояснение части кода программы

Полный код программы вместе с видео, демонстрирующим работу схему, приведен в конце статьи. В этой же части статьи мы лишь поясним как правильно объявить переменные в программе, в которых будут храниться символы, поступающие от Bluetooth-модуля.

Остальная часть кода программы достаточно проста и легка для понимания. Теперь давайте рассмотрим последние строки кода, в которых вы можете найти цикл while – в этом цикле сосредоточена главная часть кода программы, поскольку в нем мы непрерывно проверяем поступающие символы от Bluetooth-модуля и включаем/выключаем светодиод соответственно.

Наша программа завершена. Теперь нам необходимо построить (build) наш проект. Кликните на иконке Build как показано на рисунке:

После создания проекта необходимо будет выполнить Debug->Exe чтобы сгенерировать HEX файл, который будет находиться в папке внутри той папки, которую вы создавали для хранения проекта. Этот HEX файл мы будем впоследствии загружать в микроконтроллер atmega8 с помощью программы Sinaprog.

Взаимодействие HC-06 с компьютером

На видео ниже показано как подключить HC-06 к персональному компьютеру иди другму устройству с поддержкой bluetooth.

Примечание. На видео скачано, что программа, которую вы используете в качестве серийного монитора (Teraterm в данном конкретном случае), подключается к INCOMING (входящему) com порту. Это не правильно. Надо использовать OUTGOING (исходящий) com порт.

После успешного подключения HC-06, можете отправлять данные на Arduino и обратно. Если вы загрузили второй скетч, вы сможете включать/выключать светодиод, отправляя символы “n” и “f” соответственно.

Пример LED

Сфера применения HC-06 по сути безгранична. Можно управлять любыми роботизированными системами и процессами. Надеемся, что приведенные основы работы с bluetooth модулем HC-06 будут вам полезны в проектах на Arduino.

Оставляйте Ваши комментарии, вопросы и делитесь личным опытом ниже. В дискуссии часто рождаются новые идеи и проекты!

Example Programs

The default library configuration uses a software serial port. The
example programs will work with either a hardware or a software serial
port. The configuration is changed by modifying the file.

This application is one of the reasons I wrote this library. I
wanted to be able to change the name reported by the HC-05 because I
have multiple HC-05 modules that I kept mixing up. With this program
you can set the name of the HC-05 module to reflect something
physically identifying (or anything else that helps you tell your
modules apart).

Echo characters as they are received.

Tests the disconnect command (AT+DISC). This was something I used
during development and probably is not of general interest.

This example used the 2nd command mode to recover the HC-05 when
its serial port settings are incompatible with the Arduino serial
ports. Power to HC-05 must be controlled by an Arduino pin.
See the diagram for suitable connections.

Tests both setBaud() and findBaud() by trying every combination of
supported rates. The output from this example looks best if
DEBUG_HC05 is not defined. (Simply comment out that line in HC05.h).

Introduction: Arduino AND Bluetooth HC-05 Connecting Easily

By Mohannad RawashdehMohannad RawashdehFollow

More by the author:

About: Maker, PCB designer , electronics instructor from Jordan just one word ! I Adore electronics follow me on FB https://www.facebook.com/Mohannad-Rawashdeh-Raw-774983565988641/

More About Mohannad Rawashdeh »

Hello Every body , This is my first artical on Instructable.com , I’m so happy for that , and I will start by How to connect arduino with bluetooth , I suffered a lot of problems when I try to connect it as the website and instructable artical did , So i decided To share my experience with You The bluetooth module I will use today is HC-05 which is so familiar and cheap , Most tutorial on The website Connect the bluetooth with default Rx and Tx on the arduino Board , I faced a lot of problem and bluetooth didn’t work will . But arduino  support something Called Software Serial , which allow You to change any arduino board pin to serial pin so After reading this article you will be able to:1) Connect arduino Board with PC By Bluetooth , to send and receive data . 2)Connect arduino Board with Any android device . so you can send your information , Like Sensors reading , from arduino to PC Or android device , and you can build your Home automation system by bluetooth , and controlling your robot wirelessly

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

Для занятия нам понадобятся следующие детали:

  • плата Arduino Uno / Arduino Nano / Arduino Mega;
  • Bluetooth модуль HC-05/06;
  • провода «папа-папа» и «папа-мама».


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

Скетч для прошивки блютуз модуля Arduino

#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

Итак, чтобы изменить код доступа к Bluetooth-модулю, имя или другие характеристики, следует отправить следующие команды через монитор последовательного порта Arduino IDE (смотри скрин ниже). Также приведем пошаговую инструкцию, какие необходимо использовать AT команды для перепрошивки HC-05. А в конце статьи размещена более полная таблица at команд с небольшими пояснениями.

  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 модулей, а чтобы не запутаться присвоить каждому свое уникальное имя. Также мы можем задать новый пин-код, чтобы защитить модуль от постороннего вмешательства. С помощью данной настройки модуля НС-05/06 мы можем получать данные с датчиков не только на мониторе порта, но и на любом Android — устройстве.

AT OK Тестовая команда
AT+VERSION? +VERSION: … Узнать версию прошивки модуля
AT+RESET OK Сброс настроек
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» — режим

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

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

Оба модуля представляют собой две спаянные платы. Одна из них – заводская с микросхемой, другая нужна для самодельных устройств, она оснащена ножками GPIO со стандартным шагом 2,54 мм и стабилизатором напряжения.

Модуль HC-05 стоит несколько дороже, но он имеет большее количество полезных рабочих функций.

Распиновка модуля HC-05:

  • EN – управление питанием;
  • Питание VCC;
  • GND;
  • RX, TX;
  • STATE – индикация;
  • KEY – активирует режим управления при помощи АТ-команд. При KEY=0 – передача данных, при KEY=1 – АТ-команды.

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

Основные характеристики HC-05:

  • Рабочие частоты 2,4 – 2,48 ГГц;
  • Мощность передачи 0,25 – 2,5мВт;
  • Дальность 10 м;
  • Максимальная скорость обмена данными 115200 бод;
  • Питание 3,3В;
  • Ток 30-40 мА;
  • Рабочие температуры от -25С до 75С.

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

Вариант подключение модуля с использованием делителя.Представлен вариант для Arduino Nano, но он подойдет и к плате Uno.

AT-команды

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

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

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

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

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

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

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

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

Step 2: The Arduino Code for HC-05 Command Mode

This Arduino program (HC_05.ino) does two things. It takes the AT commands you enter from the Arduino IDE Serial Monitor and sends those commands to the HC-05. The program then reads the output of the HC-05 and displays it on the Arduino IDE Serial Monitor. You can also use a terminal emulator such as Tera Term instead of the Arduino Serial Monitor.  The Arduino communicates with the HC-05 using the SoftwareSerial ports while the Arduino communicates with the user via the Serial Monitor. /* AUTHOR: Hazim Bitar (techbitar) DATE: Aug 29, 2013 LICENSE: Public domain (use at your own risk) CONTACT: techbitar at gmail dot com (techbitar.com) */ #include <SoftwareSerial.h> SoftwareSerial BTSerial(10, 11); // RX | TX void setup() {   pinMode(9, OUTPUT);  // this pin will pull the HC-05 pin 34 (key pin) HIGH to switch module to AT mode   digitalWrite(9, HIGH);   Serial.begin(9600);   Serial.println(«Enter AT commands:»);   BTSerial.begin(38400);  // HC-05 default speed in AT command more } void loop() {   // Keep reading from HC-05 and send to Arduino Serial Monitor   if (BTSerial.available())     Serial.write(BTSerial.read());   // Keep reading from Arduino Serial Monitor and send to HC-05   if (Serial.available())     BTSerial.write(Serial.read()); }

Создание проекта для ATmega8 в программной среде CodeVision

Аналогичные операции можно произвести и в других программных средах для программирования микроконтроллеров AVR, например, Atmel Studio.

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

Шаг 1. Создайте новый проект в CodeVision, выбрав пункт меню File -> New -> Project. В появившемся диалогом окне нажмите Yes.

Шаг 2. Откроется CodeWizard. Кликните в ней на первой опции, то есть AT90, затем нажмите OK.

Шаг 3. Выберите свой микроконтроллер, в нашем случае им будет Atmega8.

Шаг 4. Кликните на Ports (порты). В нашем проекте мы будем использовать Port C4 и C5 для управления светодиодом. Таким образом, необходимо сконфигурировать биты 4 и 5 как выходные кликнув на них, как показано на рисунке:

Шаг 5. Мы будем использовать универсальный асинхронный последовательный приемопередатчик (USART) для Rx и Tx (приема и передачи данных). Поэтому необходимо выбрать настройки USART, в них кликнуть на настройки приема и оставить их по умолчанию.

Шаг 6. Выберите Program -> Generate, Save and Exit. Теперь более половины вашей работы по программированию микроконтроллера Atmega8 можно считать выполненной.

Шаг 7. Создайте новую папку на рабочем столе чтобы записывать туда наши файлы.

У нас будет 3 диалоговых окна (будут появляться последовательно одно за другим) для сохранения наших файлов.

Сделайте то же самое (что и на представленном рисунке) с двумя другими диалоговыми окнами – то есть сохраните предлагаемые ими файлы.

После этого рабочая область программы будет выглядеть следующим образом:

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

— взаимодействие двух микроконтроллеров AVR ATmega8 через UART;

—связь AVR ATmega8 и Arduino Uno через универсальный асинхронный приемопередатчик (UART)

Что такое bluetooth модуль и его назначение

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

Таким образом, первичное и главное назначение Ардуино блютуз – связь с вашим ПК и\или Андроидом по соответствующему протоколу. Это позволяет не только управлять разнообразными датчиками на микроконтроллере, но и, в случае необходимости, обновлять прошивку.

Полностью перепрошить устройство с его помощью не получится. Помимо этого, Android Arduino bluetooth может обеспечить связь между несколькими МК и приборами. Естественно, для этого на каждом из них должен быть установлен независимый модуль. HC-05 позволяет проложить несколько мостов по типу USAR-bluetooth-USART. При этом само устройство будет восприниматься в качестве ответного на USART. А организовывать связь уже будет аппаратная часть вашего проекта.

Модуль HC-06

У блютуз модуля под Ардуино, есть несколько преимуществ, перед стандартными дополнениями под другие МК:

  1. Инженеру нет необходимости изучать технологию протокола блютуз, чтобы написать софт или начать использовать уже готовые библиотеки.
  2. Простота использования в целом. Вам не нужно будет паять отдельную плату под распределение мощностей, просто подсоедините устройство к уже готовому МК через пины.
  3. Обширный выбор библиотек. Так как Ардуино имеет низкий порог вхождения, под все его модули можно найти большое количество библиотек, разного назначения. Но стоит отметить, что весомая их часть – бесполезны, ибо не работают или работают крайне плохо. Ведь пишет их сообщество, которое не изучало основы алгоритмизации и, в большинстве своём, в принципе, плохо разбирается в программировании. Из-за этого, во многих ситуациях, просто модифицировать чужой софт – не лучшее решение, и значительно проще написать свой.

Сфера же применения RC car Arduino bluetooth – огромна и ограничена лишь вашей фантазией. Например, вы можете купить обычную китайскую гарнитуру, припаять к ней пару модулей под Ардуино, так как они могут функционировать и без МК, и загрузить одну из готовых библиотек. После таких манипуляций наушники можно будет использовать в беспроводном режиме и исчезнет проблема с запутывающимися или гнущимися проводами. Это одна из банальных проблем реализации данного протокола в проекте, на деле их тысячи.

Предназначается bluetooth аудио модуль для бытового и коммерческого применения, чему способствуют его характеристики. Также стоит учитывать, что если вы собираетесь в дальнейшем связываться по одноимённому протоколу с ПК, то на большинстве современных устройств необходимо будет докупить блютуз по USB. Но вы можете также спаять его из МК, создав собственный bluetooth модуль для компьютера. Естественно, это не относится к ноутбукам, где поголовно устанавливаются одноимённые передатчики, и никак модифицировать их уже не требуется.

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

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

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

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

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

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

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

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

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

HC-05 or HC-06

My earlier module which I received from another source (without an adapter, see this post) has a different firmware on it, known as HC-05, while my DX.com module has a HC-06 firmware. To be clear: the modules are the same, but the software/firmware on it is different, and the firmware uses the pins differently too

HC-06 and HC-05 (Source Wavesen Data Sheet)

The HC-05 has the ‘full’ firmware on it: many AT commands, and can be both master and slave module. The HC-06 firmware on the other hand only can be a slave device, with very limited AT commands.

Or in other words:

  • The HC-05 module can build a connection to other modules. E.g. a Robot being a master and connecting to slave bluetooth module. Or in slave mode to make a wireless bridge to a notebook.
  • The HC-06 module only can be a slave. This makes it only useful for say connecting a notebook as a master to a robot with a slave module e.g. for a wireless serial bridge.

For most use cases the HC-06 is enough, as typically I want to have a wireless UART connection to my devices from my notebook.

Оцените статью:
Оставить комментарий