- Materials necessaris
- Mòdul Bluetooth HC-05
- Esquema de connexions
- Programació del llançador MSP430 per al mòdul Bluetooth HC-05
- Funcionament del LED controlat per Bluetooth mitjançant MSP430
Tot i que s’han introduït moltes tecnologies sense fils durant la darrera dècada, el Bluetooth segueix sent la tecnologia més popular per a la comunicació sense fils de curt abast. En els sistemes incrustats, HC-05/06 és el mòdul Bluetooth més popular. Anteriorment, hem utilitzat aquest mòdul Bluetooth en molts projectes per controlar electrodomèstics, robots, etc. i l’hem interfocat amb altres microcontroladors:
- Interfície Bluetooth HC-05 amb píndola blava STM32F103C8: LED de control
- Interfície de mòduls Bluetooth amb ESP8266: control d’un LED
- Interfície del mòdul Bluetooth HC-05 amb microcontrolador AVR
- LED controlats per veu mitjançant Arduino i Bluetooth
Avui coneixerem la interfície del mòdul Bluetooth HC-05 amb MSP430 Launchpad de Texas Instruments. En aquest exemple d'interfície, controlarem el LED incorporat de MSP430 des del telèfon intel·ligent mitjançant una aplicació per a Android Terminal Bluetooth.
Si no coneixeu MSP430, podeu començar amb Introducció a MSP430G2 mitjançant el tutorial Energia IDE i podeu seguir tots els tutorials de MSP430 aquí.
Materials necessaris
- TI-MSP430 Launchpad
- Mòdul Bluetooth HC-05
- Aplicació Bluetooth Terminal de Play Store
Mòdul Bluetooth HC-05
L' HC-05 és un mòdul Bluetooth fàcil d'utilitzar. Utilitza el protocol de comunicació en sèrie (USART) per comunicar-se entre dispositius. Hi ha dos modes de funcionament per a aquest mòdul: el primer és el mode Command i el segon és el mode Operatiu. El mode d’ordres s’utilitza per configurar la configuració del dispositiu, com ara canviar la contrasenya, la velocitat de transmissió, etc. del mòdul. El mode de funcionament s’utilitza per enviar o rebre dades entre dispositius.
En aquest tutorial utilitzarem la configuració predeterminada (la contrasenya predeterminada és 0000 o 1234, el nom del dispositiu és HC-05 i la velocitat de transmissió per defecte és 9600). Per tant, només treballarem en mode operatiu.
El rang de tensió de funcionament és de 4V a 6V (normalment + 5V) i el corrent de funcionament és de 30 mA. L’abast del mòdul és de 100 metres. Hi ha un total de 6 pins al mòdul Bluetooth HC-05, dels quals s’utilitzen pins EN i State en mode d’ordres. A continuació es mostra el pin-out del mòdul Bluetooth HC-05:


Esquema de connexions
A continuació es mostra el diagrama de circuits per connectar el mòdul Bluetooth HC-05 amb la placa TI-MSP340.

Aquí hem fet 4 connexions des de l'HC-05. Els pins RxD i TxD de HC-05 estan connectats a P1.1 i P1.2 de MSP430 respectivament per a la comunicació en sèrie. I VCC i GND de HC-05 estan connectats a VCC i GND de MSP430.
Programació del llançador MSP430 per al mòdul Bluetooth HC-05
La programació d’aquest LED controlat per Bluetooth mitjançant MSP430 és fàcil. MSP es programarà mitjançant Energia IDE, que és molt similar a Arduino IDE, de manera que les persones conegudes d’Arduino no tindran cap dificultat per entendre-ho. Al final del tutorial es dóna un codi complet amb un vídeo de demostració.
Comencem per definir una macro per al LED vermell que estem utilitzant. Aquesta línia és només per simplificar, de manera que podem utilitzar LED en lloc de RED_LED
#define LED RED_LED
A continuació, es mostra la nostra funció setup () , la funció Serial.begin () s’utilitza per establir la velocitat de transmissió per a la comunicació en sèrie a 9600, ja que és la velocitat de transmissió per defecte per a HC-05. També hem utilitzat la funció pinMode () per inicialitzar el pin digital com a sortida (que és LED en aquest cas).
configuració nul·la () { Serial.begin (9600); pinMode (LED, OUTPUT); }
En funció de bucle , primer comprovem si les dades estan disponibles al port sèrie mitjançant la funció Serial.available () . A continuació, definiu una variable data_recived que emmagatzemi el valor de la funció Serial.read () . Aquesta funció s’utilitza per rebre les dades del bluetooth.
A continuació, a la declaració if-else, comprovem les dades enviades des del telèfon. Si és 1, enceneu el LED mitjançant digitalWrite (LED, HIGH); i imprimiu el missatge a l'aplicació que el LED està encès mitjançant la funció Serial.write () . I si és 2, apagueu el LED mitjançant digitalWrite (LED, BAIX); i imprimiu el missatge a l'aplicació que el LED està apagat mitjançant la funció Serial.write () .
bucle buit () { if (Serial.available ()) { char data_received; data_received = Serial.read (); if (data_received == '1') { digitalWrite (LED, HIGH); Serial.write ("LED encès"); } else if (data_received == '2') { digitalWrite (LED, BAIX); Serial.write ("LED apagat"); } } }
Funcionament del LED controlat per Bluetooth mitjançant MSP430
Finalment, pengeu el codi a MSP430 mitjançant Energia IDE i descarregueu i instal·leu l’aplicació Bluetooth Terminal al vostre telèfon intel·ligent. L'aplicació es mostrarà a continuació:

Ara activeu el Bluetooth al vostre telèfon intel·ligent i connecteu-vos amb el mòdul Bluetooth seleccionant HC-06 de la llista de dispositius disponibles. Utilitzeu la contrasenya 0000 o 1234 per connectar-vos. Després de la connexió, s'obrirà una finestra titulada amb el nom del dispositiu i connectada escrita a sota. Aquesta finestra tindrà l'aspecte de la figura següent:
En aquesta finestra, proveu d'enviar 1 i 2 a MSP430 mitjançant el mòdul Bluetooth HC-05. En enviar 1 s’encendrà el LED i s’imprimirà al telèfon el missatge que indica que “el LED s’ha encès”, tal com es mostra a la figura següent:


I en enviar-ne 2, s’apagarà el LED i s’imprimirà al telèfon el missatge que indica que “el LED s’ha apagat” igual que la figura següent. I voilà! Acabeu de controlar un LED mitjançant el telèfon mitjançant Bluetooth.

Així es pot controlar un LED sense fils mitjançant bluetooth. Es pot convertir fàcilment en un projecte domòtic substituint el LED per un relé i qualsevol electrodomèstic.
A continuació es mostra el codi complet amb el vídeo de demostració.
