Многие хотели бы подключить blutooth (БТ) модуль к своему девайсу, построенному на микроконтроллерах (МК) AVR, но сталкиваются с некоторыми трудностями:
1. не знают какой БТ модуль выбрать;
2. возникают трудности с подключением и написанием софта для МК;
Попробую подробно описать, как и что делать.
Сначала стал искать подходящий по параметрам и цене вариант. Нашел их несколько, но цены меня впечатлили (100$ - и выше). Однако, как-то раз заглянул в магазин радиодеталей. На прилавке лежал БТ модуль за 400 рублей, поглядев параметры, понял - это то, что мне надо! Дальность действия 100м на открытой местности. Из практики могу сказать, что в помещении спокойно пробивает две бетонные стены. Девайс имеет USB, UART и другие интерфейсы.
В наличии был МК Atmega16, решено было связать эти два устройства через UART интерфейс.
При первых попытках столкнулся с проблемой разных напряжений. Т.е. БТ работает от 3.3 В, а МК от 5В, пришлось делать преобразователь на транзисторах (Рис.1):
1. не знают какой БТ модуль выбрать;
2. возникают трудности с подключением и написанием софта для МК;
Попробую подробно описать, как и что делать.
Сначала стал искать подходящий по параметрам и цене вариант. Нашел их несколько, но цены меня впечатлили (100$ - и выше). Однако, как-то раз заглянул в магазин радиодеталей. На прилавке лежал БТ модуль за 400 рублей, поглядев параметры, понял - это то, что мне надо! Дальность действия 100м на открытой местности. Из практики могу сказать, что в помещении спокойно пробивает две бетонные стены. Девайс имеет USB, UART и другие интерфейсы.
В наличии был МК Atmega16, решено было связать эти два устройства через UART интерфейс.
При первых попытках столкнулся с проблемой разных напряжений. Т.е. БТ работает от 3.3 В, а МК от 5В, пришлось делать преобразователь на транзисторах (Рис.1):
Теперь подключим МК к нашему БТ модулю. Как уже говорил, задействуем UART интерфейс, следовательно, подключаем пины RХ и ТХ «на крест»(RХ БТ с ТХ МК и ТХ БТ с RХ MK, Рис.2):
Следующим шагом было написание программы. Следует учесть, что при прошивке МК необходимо выставить частоту внутреннего генератора МК на 8MHz.
Исходник программы с комментариями:
Исходник программы с комментариями:
Теперь компилируем программу и заливаем в МК. Когда всё готово, надо каким-то способом посылать символы в МК. Для этого задействуем гипертерминал.
Установки гипертерминала :
Установки гипертерминала :
Теперь всё готово! При нажатии клавишей “a”, ”w”, ”s”, ”d” вспыхивают светодиоды на PORTA.
Скачать исходный код программы на Avr Studio 4.0.
Скачать прошивку *.hex.