Bluetooth

«Синий зуб» сейчас получил большое распространение. Он есть почти в каждом сотовом телефоне, большинстве ноутбуков или можно в любом компьютерном магазине купить компактный адаптер и вставить в компьютер. Все больше появляется различных мобильных устройств и игрушек управляемых по нему. Все к большему числу серьезных устройств можно подключиться без труда и проводов. Так давайте тоже начнём применять его и в своих конструкциях.

Bluetooth адаптеры

Bluetooth адаптеры

Такой адаптер очень прост в использовании, т.к. его можно подключить к микроконтроллеру по UART, что, по сути, превращает его в радио COM порт.

Сейчас на рынке есть множество разнообразных Bluetooth адаптеров с разными характеристиками. Средняя цена – 400-500р. Но этой весной в Китайских Интернет магазинах появился адаптер HC-05 по цене в 10$, а за лето успели подешеветь до 6.6$, что в переводе на нашу валюту ~190 рублей.

Большинство синих имеют на борту следующие порты: UART, SPI, USB и PCM для передачи звука. SPI используется для прошивки. По UART можно подключить такой адаптер к любому контроллеру. В статье будет рассмотрено подключение по UART к COM порту компьютера и к микроконтроллеру PIC6F873A на примере выше упомянутого Bluetooth HC-05.

Для подключения адаптера разработал небольшую платку переходник с разводкой модуля и согласованием питания и линий связи 5В и 3,3В.

Схема и плата адаптера

Схема

Схема

Печатка

Печатка

Во главе платы модуль Bluetooth HC-05. Резисторы R1 и R2 0805 по 4,7кОм. Небольшой светодиод в корпусе 0604 или 0805 с резистором на 470-510 Ом в корпусе типоразмера 0805, сигнализируют о наличие питания. В согласование питания приняли участие L78L33ABUTR и два конденсатора по 0,1мкФ типоразмера 0805. На плате есть две длинные проводные перемычки, которые в угоду габаритам заменили 2 длинные дорожки идущие по краю платы.

Настройки HC-05

Данный модуль пришёл с программным обеспечением Linvor V1.5, со следующими настройками по умолчанию:

  • Настройки порта – 9600 8N1
  • Пароль – 1234

Настройки можно изменить с помощью AT команд, к сожалению, у этой прошивки список этих команд не богат.

Команда
Ответ
Описание
AT OK Проверка модуля.
AT+VERSION OKlinvorV1.5 Возвращает версию прошивки.
AT+BAUD4 OK9600 Установка скорости:
1 — 1200
2 — 2400
3 — 4800
4 — 9600 (по умолчанию)
5 — 19200
6 — 38400
7 — 57600
8 — 115200
9 — 230400
AT+NAME OKsetname Переименование модуля.
Новое имя пишется сразу после команды.
AT+PIN OKsetPIN Смена пин кода.
AT+PN OK None Установка чётности модуля — нет.
AT+PO OK Odd Установка чётности модуля — нечётный.
AT+PE OK Event Установка чётности модуля — чётный.

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

Испытание

Как уже было сказано ранее модуль, по сути, является беспроводным UART (COM) портом, а значит самый простой способ его проверки – это подключить его к COM порту компьютера. На компьютере было открыто 2 терминальные программы: одна для виртуального COM порта синего зуба, а вторая для виртуального порта USB-UART адаптера на ft232. После подачи питания от USB оба модуля начали работать: первым автоматически нашёлся и подключился проводной адаптер, а беспроводной для начала пришлось, без труда, найти обычным USB Bluetooth адаптером, потом подключиться с вводом пароля, только после чего он стал доступен для работы.

COM+Bluetooth – USB Bluetooth

COM+Bluetooth – USB Bluetooth

Как видно: всё что вводиться в терминале ft232 отображаться в терминале блютуза и наоборот.

Bluetooth и Ft232

Bluetooth и Ft232

Так же Bluetooth адаптер был подключен к микроконтроллеру.

PIC16F873a + Bluetooth

PIC16F873a + Bluetooth

Сразу после подключения в терминал посыпались посылки.

Посылки с контроллера

Посылки с контроллера

Скачать печатку

Статья обновлена 24.01.2012

30 комментариев »

Alex_EXE | 04.09.2011 | Связь | 25 055 просмотров

30 комментариев на « Bluetooth»

  1. Altais пишет 04.09.2011 в 23:13 #

    Обрати внимание на линию питания и включение стабилитрона в схеме)

  2. Alex_EXE пишет 05.09.2011 в 00:29 #

    Спасибо, недоглядел, исправил.

  3. atlantis пишет 06.09.2011 в 21:30 #

    bluetoothHC-05.rar 404 — Не найдено

  4. Alex_EXE пишет 06.09.2011 в 23:41 #

    Исправил

  5. Михаил пишет 20.09.2011 в 13:15 #

    Как использовать линии RTS и CTS? Возможно ли это? Нужна другая прошивка и есть ли она в открытом доступе?

  6. Alex_EXE пишет 20.09.2011 в 20:58 #

    Насчёт перепрошивки модуля нечего сказать не могу. Но этот блютуз не оригинальный, оригинальный HC-05, если посмотреть в интернете доки, обладает большим функционалом. Так же есть и другие модули. К линиям RTS и CTS попробую подключиться и проверить их работоспособность, но около выходных.

  7. Михаил пишет 21.09.2011 в 17:16 #

    А в чем проявляется оригинальность? В смысле оригинал? Я думал что это изначально китайская приблуда!!! Оригинальный китай и не оригинальный?)))))) Или они просто что-то как всегда скопировали, а прошивочку не долепили?

  8. Alex_EXE пишет 23.09.2011 в 00:56 #

    Китайцы без труда и зазрения совести подделывают и свои приблуды.
    Как писал в предыдущем комментарии, оригинальный модуль обладает большим функционалом, а не всего несколькими AT командами, которые с трудом удалось откапать.
    Но самую главную функцию он выполняет 🙂 .

  9. Владимир пишет 23.09.2011 в 18:20 #

    А как заставить работать на другой скорости, например на 10400 ?

  10. Alex_EXE пишет 23.09.2011 в 23:11 #

    С этим модулем, думаю, не выйдет, все поддерживаемые скорости приведены.

  11. Valera18 пишет 31.05.2012 в 23:47 #

    А могут ли взаимодействовать два модуля Bluetooth HC-05?
    Один передаёт другой принимает.

  12. Alex_EXE пишет 31.05.2012 в 23:59 #

    Именно тот, про который писал, с прошивкой Linvor V1.5 — нет.
    Но есть другие версии, в том числе и HC-05, которые могут работать не только как подчинённый, но и как мастер (к подчинённому подключается мастер). Позже об этом напишу.

  13. kiluch пишет 16.06.2012 в 19:33 #

    А вот если состыковать HC-05 c сотовым (Android4), смогу ли я увидеть полученные циферки без специального программного обеспечения и сохранятся ли они хотябы в виде файла на сотовом телефоне.

  14. Alex_EXE пишет 17.06.2012 в 12:36 #

    На любой платформе с любой системой нужно специальное ПО.

  15. Valera пишет 05.09.2012 в 21:40 #

    Какой диапазон питания у модуля bluetooth hc-05.
    Минимальное и максимальное напряжение?

  16. Alex_EXE пишет 06.09.2012 в 00:17 #

    Рабочее напряжение 3.3В, если сильно отклоняться — то на свой страх и риск.

  17. Zyx пишет 13.11.2012 в 00:09 #

    На 5 вольтах работают без проблем. 7805 в помощ.

  18. Alex_EXE пишет 14.11.2012 в 17:45 #

    Работать то может и работает, но как долго, не откажет ли в самый неподходящий момент, не упадут ли со временем характеристики — вот вопросы с которыми Вы можете столкнуться.
    В документации к нему прописано 3.3В и думаю в решение об выборе рабочего напряжения стоит исходить из нее.

  19. Алексей пишет 22.02.2013 в 20:01 #

    В статье указано, что HC-05 поддерживает usb. Нельзя ли было в вашем эксперименте не использовать ft232 и поключить hc-05 c помощью выводов usb- и usb+? или для этого нужна спец. прошивка?
    Спасибо

  20. Alex_EXE пишет 23.02.2013 в 17:20 #

    Не поддерживает, по крайней мере не эта прошивка. В статье сказано обобщенно.

  21. Василий пишет 22.03.2013 в 15:17 #

    Здравствуйте. Вот такой блютуз можно присандалить?http://technoportal.ua/img/Bluetooth.jpg

  22. Alex_EXE пишет 25.03.2013 в 09:38 #

    Да.
    К компьютеру, к одноплатнику или к МК, но придётся реализовать поддержку USB-Host (если нет) и дрова.
    Если требуется простое подключение и без извратов — то нет, смотрите специальные модули, вроде того, что описан в статье.

  23. search_max пишет 07.07.2013 в 21:19 #

    А как понять какое ПО у модуля если продавался в пакетике сам модуль и всё? Без печатки и подключения к RS232 не узнать? Или есть различные виды этого самого зелёного модуля с контактами HC-05, а если есть, то как расспознать?

  24. search_max пишет 11.07.2013 в 01:00 #

    Ясно… на robocraft нашёл ответ на этот вопрос. Спросить можно только у самого модуля AT командами, значит если покупаешь модуль, то не почтой, а самому сделать COM-терминал простенький с изначально распаенным слотом под модуль и так проверять. Аа кста, автор, если можно сливать прошивку, было бы неплохо если бы сделать что-то типа нескольких бэкапов прошивок разных версий с этого модуля. Это так… просто предложение. Или выложить только свою версию 🙂

  25. Alex_EXE пишет 23.07.2013 в 23:15 #

    При покупки модуля обращайте внимание — что именно покупаете, обычно указывают HC-04, HC-05, HC-06 или модуль Slave иль Master/Slave, а некоторые ещё и сразу документацию приводят (хотя, бывает, могут и наврать), если же не ясно — то лучше поискать другого продавца.
    Бэкапами прошивок заниматься желания и времени нет.

  26. Mr.Ex пишет 29.04.2015 в 21:00 #

    Интересует вопрос о A2DP очень интересно превалировать синезубую колонку на данном девайсе.

  27. Alex_EXE пишет 13.05.2015 в 16:00 #

    В стандартных версиях HC-04/5/6/9 — не встречал упоминания о командах работы с аудио потоком и не видел при подключении к данным модулем нечего кроме SPP. Не исключаю, что при сторонней прошивки с из помощью можно передавать или принимать звук (в цифровом формате).
    Есть другие модули, которые способны передавать аудио поток, при чём на них предусмотрены обычные аналоговые входы и выходы.

  28. H`UGO пишет 08.01.2016 в 01:45 #

    Здравия желаю. Если не сложно, поясните что значит «установка чётности»? Случайно установил «чётный», теперь не могу переустановить, не отвечает на команды AT. С терминала на него посылаю и в порт компа передаёт, не совсем корректно но работает, а на АТ не отвечает. (РС-06) Или есть возможность вернуть заводские? Здорово былобы конечно Перепрошить через SPI, но мой USB ASP видимо с этим не справиться, а LPT нет.

  29. Alex_EXE пишет 08.01.2016 в 23:24 #

    Бит чётность (нечетности…) — 9 дополнительный бит в стандартной посылке (если включен), отвечающий за целостность посылки. Если количество единиц в посылки четное или нечетное — он принимает соответствующее значение, подробнее можно прочитать в описании COM порта.
    В вашем случае нужно установить программу терминал, которая может работать с этим самым битом четности. Например программу terminal т.к. он наиболее простой со стороны настройки, на скриншоте экрана нетбука — слева. В нём выбираете бит чётности (parity) в соответствии с установленным или перебором, если не помните. Когда установите посылаете команду удаляющей у модуля бит чётности и работаете с модулем, как раньше.

  30. Михаил пишет 24.01.2016 в 17:06 #

    Спасибо, очень интересно!
    А планируется ли статья о «общении» pic и bluetooth модуля? Как подключен pic и какая прошивка в нем? Может ли pic посылать AT команды и принимать их?

Комментарии RSS

Оставьте отзыв