- Необходими материали
- Bluetooth модул HC-05
- Електрическа схема
- Програмиране на стартовата панел MSP430 за Bluetooth модул HC-05
- Работа на Bluetooth контролиран светодиод с помощта на MSP430
Въпреки че през последното десетилетие бяха въведени много безжични технологии, но Bluetooth все още е най-популярната технология за безжична комуникация с малък обхват. Във вградени системи HC-05/06 е най-популярният Bluetooth модул. Преди използвахме този Bluetooth модул в много проекти за управление на домакински уреди, роботи и др. И го свързахме с друг микроконтролер:
- Взаимодействие на Bluetooth HC-05 със STM32F103C8 Blue Pill: Контролиращ LED
- Взаимодействие на Bluetooth модул с ESP8266: Управление на светодиод
- Взаимодействие на HC-05 Bluetooth модул с AVR микроконтролер
- Гласово контролирани светодиоди, използващи Arduino и Bluetooth
Днес ще се научим да свързваме Bluetooth модул HC-05 с MSP430 Launchpad от Texas Instruments. В този пример за взаимодействие ще контролираме бордовия светодиод на MSP430 от смартфона, като използваме андроид приложението Bluetooth Terminal.
Ако сте нов в MSP430, можете да започнете с Първи стъпки с MSP430G2, като използвате урок Energia IDE и можете да следвате всички уроци по MSP430 тук.
Необходими материали
- Launchpad TI-MSP430
- Bluetooth-модул HC-05
- Приложение за Bluetooth терминал от Play Store
Bluetooth модул HC-05
Най- HC-05 е лесен за използване Bluetooth модул. Той използва сериен комуникационен протокол (USART) за комуникация между устройства. Има два режима на работа за този модул - първият е команден режим, а вторият е режим на работа. Командният режим се използва за конфигуриране на настройките на устройството, като промяна на парола, скорост на предаване и т.н. на модула. Режимът на работа се използва за изпращане или получаване на данни между устройства.
В този урок ще използваме настройките по подразбиране (паролата по подразбиране е 0000 или 1234, името на устройството е HC-05 и скоростта на предаване по подразбиране е 9600). Следователно ще работим само в работен режим.
Диапазонът на работното напрежение е от 4V до 6V (обикновено + 5V), а работният ток е 30 mA. Обхватът на модула е 100 метра. На модула HC-05 има общо 6 щифта, от които EN и State щифтове се използват в команден режим. В щифт отпадане на HC-05 Bluetooth модул е показан по-долу:
Електрическа схема
Схема за свързване на HC-05 Bluetooth модул с платка TI-MSP340 е показана по-долу.
Тук сме направили 4 връзки от HC-05. Щифтовете RxD и TxD на HC-05 са свързани съответно за P1.1 и P1.2 на MSP430 за серийна комуникация. А VCC и GND на HC-05 са свързани към VCC и GND на MSP430.
Програмиране на стартовата панел MSP430 за Bluetooth модул HC-05
Програмирането на този светодиод с контролиран Bluetooth чрез MSP430 е лесно. MSP ще бъде програмиран с помощта на Energia IDE, която е много подобна на Arduino IDE, така че хората, запознати с Arduino, няма да срещнат трудности при разбирането на това. Пълен код с демонстрационно видео е даден в края на урока.
Започваме с дефинирането на макрос за червения светодиод, който използваме. Тази линия е само за простота, така че да можем да използваме LED вместо RED_LED
#define LED ЧЕРВЕНО_ЧЕРВЕН
Следва нашата функция за настройка (), функцията Serial.begin () се използва за задаване на скоростта на предаване за серийна комуникация на 9600, защото това е скоростта на предаване по подразбиране за HC-05. Също така използвахме функцията pinMode (), за да инициализираме цифровия щифт като изход (което в този случай е LED).
void setup () { Serial.begin (9600); pinMode (LED, OUTPUT); }
При функция цикъл първо проверяваме дали данните са налични на серийния порт чрез функцията Serial.available () . След това дефинирайте променлива data_recieved, която съхранява стойността на функцията Serial.read () . Тази функция се използва за получаване на данни от Bluetooth.
След това в изявлението if-else проверяваме данните, изпратени от телефона. Ако е 1, включете светодиода, като използвате digitalWrite (LED, HIGH); и отпечатайте съобщение в приложението, че светодиодът е включен с помощта на функцията Serial.write () . И ако е 2, изключете светодиода, като използвате digitalWrite (LED, LOW); и отпечатайте съобщението в приложението, че светодиодът е изключен, като използвате функцията Serial.write () .
цикъл void () { if (Serial.available ()) { char data_received; data_received = Serial.read (); if (data_received == '1') { digitalWrite (LED, HIGH); Serial.write ("LED включен"); } иначе ако (data_received == '2') { digitalWrite (LED, LOW); Serial.write ("LED изключен"); } } }
Работа на Bluetooth контролиран светодиод с помощта на MSP430
Накрая качете кода в MSP430 с помощта на Energia IDE и изтеглете и инсталирайте приложението Bluetooth Terminal на вашия смартфон. Приложението ще изглежда като показано по-долу:
Сега включете Bluetooth във вашия смартфон и се свържете с Bluetooth модул, като изберете HC-06 от списъка с налични устройства. Използвайте паролата 0000 или 1234 за свързване. След свързването ще се отвори прозорец, озаглавен с име на устройството и свързано, написано под него. Този прозорец ще изглежда като фигурата по-долу:
В този прозорец опитайте да изпратите 1 и 2 на MSP430 чрез Bluetooth модул HC-05. Изпращането 1 ще включи светодиода и съобщението ще се отпечата на телефона ви, че „ LED включен“, точно както на фигурата по-долу:
И изпращането на 2 ще изключи светодиода и съобщението ще се отпечата на телефона ви, че „LED е изключен“, точно както на фигурата по-долу. И вуаля! Току-що контролирахте LED чрез телефона си чрез Bluetooth.
Ето как един светодиод може да се управлява безжично чрез Bluetooth. Той може лесно да се превърне в проект за домашна автоматизация, като замени светодиода с реле и всеки домашен уред.
Пълният код с демонстрационно видео е даден по-долу.