- Materiale necesare
- Modul Bluetooth HC-05
- Diagrama circuitului
- Programare MSP430 Launchpad pentru modulul Bluetooth HC-05
- Funcționarea LED-ului controlat prin Bluetooth utilizând MSP430
În timp ce în ultimul deceniu au fost introduse o mulțime de tehnologii fără fir, însă Bluetooth este în continuare cea mai populară tehnologie pentru comunicațiile fără fir cu rază scurtă de acțiune. În sistemele încorporate, HC-05/06 este cel mai popular modul Bluetooth. Am folosit anterior acest modul Bluetooth în multe proiecte pentru a controla aparatele electrocasnice, roboți etc. și l-am interfațat cu alt microcontroler:
- Interfață Bluetooth HC-05 cu pilula albastră STM32F103C8: LED de control
- Interfața modulului Bluetooth cu ESP8266: Controlul unui LED
- Interfață modul HC-05 Bluetooth cu microcontroler AVR
- LED-uri controlate prin voce folosind Arduino și Bluetooth
Astăzi vom învăța să interfațăm modulul Bluetooth HC-05 cu MSP430 Launchpad de la Texas Instruments. În acest exemplu de interfață, vom controla LED-ul integrat al MSP430 de pe telefonul inteligent utilizând o aplicație Android Terminal Bluetooth.
Dacă sunteți nou în MSP430, puteți începe cu Noțiuni introductive despre MSP430G2 folosind tutorialul Energia IDE și puteți urmări toate tutorialele MSP430 de aici.
Materiale necesare
- TI-MSP430 Launchpad
- Modul Bluetooth HC-05
- Aplicația Bluetooth Terminal din Play Store
Modul Bluetooth HC-05
HC-05 este un ușor de utilizat modulul Bluetooth. Folosește protocolul de comunicație serial (USART) pentru a comunica între dispozitive. Există două moduri de funcționare pentru acest modul - primul este modul de comandă și al doilea este modul de operare. Modul de comandă este utilizat pentru configurarea setărilor dispozitivului, cum ar fi schimbarea parolei, rata de transmisie etc. a modulului. Modul de operare este utilizat pentru a trimite sau primi date între dispozitive.
În acest tutorial vom folosi setările implicite (parola implicită este 0000 sau 1234, numele dispozitivului este HC-05 și rata de transmisie implicită este 9600). Prin urmare, vom lucra numai în modul de operare.
Gama de tensiune de funcționare este de 4V la 6V (de obicei + 5V) și curentul de funcționare este de 30 mA. Raza de acțiune a modulului este de 100 de metri. Există un total de 6 pini pe modulul Bluetooth HC-05, dintre care pini EN și State sunt utilizați în modul Comandă. Pinilor HC-05 Modul Bluetooth este prezentat mai jos:
Diagrama circuitului
Schema de circuit pentru conectarea modulului Bluetooth HC-05 la placa TI-MSP340 este prezentată mai jos.
Aici am făcut 4 conexiuni de la HC-05. Pinii RxD și TxD ai HC-05 sunt conectați la P1.1 și respectiv P1.2 din MSP430 pentru comunicații seriale. Și VCC și GND din HC-05 sunt conectate la VCC și GND din MSP430.
Programare MSP430 Launchpad pentru modulul Bluetooth HC-05
Programarea pentru acest LED controlat prin Bluetooth folosind MSP430 este ușoară. MSP va fi programat folosind Energia IDE, care este foarte asemănător cu Arduino IDE, astfel încât oamenii cunoscuți Arduino nu vor întâmpina nicio dificultate în a înțelege acest lucru. Codul complet cu un videoclip demonstrativ este dat la sfârșitul tutorialului.
Începem cu definirea unei macro pentru LED-ul roșu pe care îl folosim. Această linie este doar din motive de simplitate, astfel încât să putem folosi LED-ul în locul RED_LED
#define LED RED_LED
Urmează funcția noastră setup () , funcția Serial.begin () este utilizată pentru a seta rata de transmisie pentru comunicațiile seriale la 9600, deoarece aceasta este rata de transmisie implicită pentru HC-05. De asemenea, am folosit funcția pinMode () pentru a inițializa pinul digital ca ieșire (care este LED în acest caz).
void setup () { Serial.begin (9600); pinMode (LED, OUTPUT); }
În funcția buclă , verificăm mai întâi dacă datele sunt disponibile pe portul serial prin funcția Serial.available () . Apoi definiți o variabilă data_recived care stochează valoarea funcției Serial.read () . Această funcție este utilizată pentru a primi datele de la bluetooth.
Următorul în declarația if-else verificăm datele trimise de pe telefon. Dacă este 1, porniți LED-ul folosind digitalWrite (LED, HIGH); și imprimați mesajul în aplicație că LED-ul este pornit utilizând funcția Serial.write () . Și dacă este 2, atunci opriți LED-ul folosind digitalWrite (LED, LOW); și tipăriți mesajul pe aplicație că LED-ul este OPRIT utilizând funcția Serial.write () .
bucla void () { if (Serial.available ()) { char data_received; data_received = Serial.read (); if (data_received == '1') { digitalWrite (LED, HIGH); Serial.write („LED-ul este aprins”); } else if (data_received == '2') { digitalWrite (LED, LOW); Serial.write („LED-ul stins”); } } }
Funcționarea LED-ului controlat prin Bluetooth utilizând MSP430
În cele din urmă, încărcați codul în MSP430 utilizând Energia IDE și descărcați și instalați aplicația Bluetooth Terminal pe telefonul dvs. inteligent. Aplicația va arăta ca afișată mai jos:
Acum porniți Bluetooth în telefonul dvs. inteligent și conectați-vă cu modulul Bluetooth selectând HC-06 din lista dispozitivelor disponibile. Utilizați parola 0000 sau 1234 pentru a vă conecta. După conectare, se va deschide o fereastră intitulată cu numele dispozitivului și conectată scrisă sub ea. Această fereastră va arăta ca figura de mai jos:
În această fereastră, încercați să trimiteți 1 și 2 către MSP430 prin modulul Bluetooth HC-05. Trimiterea 1 va aprinde LED-ul și mesajul va fi imprimat pe telefonul dvs. că „ LED-ul a fost aprins” la fel ca în figura de mai jos:
Iar trimiterea 2 va opri LED-ul și mesajul va fi tipărit pe telefonul dvs. că „LED-ul s-a stins” la fel ca în figura de mai jos. Și voila! Tocmai ai controlat un LED prin telefon folosind Bluetooth.
Acesta este modul în care un LED poate fi controlat fără fir folosind bluetooth. Poate fi ușor transformat într-un proiect de automatizare a locuinței prin înlocuirea LED-ului cu un releu și orice aparat de uz casnic.
Codul complet cu demonstrația video este dat mai jos.