- Materiali richiesti
- Modulo Bluetooth HC-05
- Schema elettrico
- Programmazione del launchpad MSP430 per il modulo Bluetooth HC-05
- Funzionamento del LED controllato tramite Bluetooth utilizzando MSP430
Sebbene negli ultimi dieci anni siano state introdotte molte tecnologie wireless, il Bluetooth è ancora la tecnologia più popolare per la comunicazione wireless a corto raggio. Nei sistemi embedded HC-05/06 è il modulo Bluetooth più popolare. In precedenza abbiamo utilizzato questo modulo Bluetooth in molti progetti per controllare elettrodomestici, robot ecc. E l'abbiamo interfacciato con altri microcontrollori:
- Interfacciamento Bluetooth HC-05 con STM32F103C8 Blue Pill: LED di controllo
- Interfaccia del modulo Bluetooth con ESP8266: controllo di un LED
- Interfacciamento del modulo Bluetooth HC-05 con il microcontrollore AVR
- LED a controllo vocale utilizzando Arduino e Bluetooth
Oggi impareremo a interfacciare il modulo Bluetooth HC-05 con il Launchpad MSP430 di Texas Instruments. In questo esempio di interfaccia, controlleremo il LED a bordo di MSP430 dallo smartphone utilizzando un'applicazione Android del terminale Bluetooth.
Se sei nuovo su MSP430, puoi iniziare con Getting Started with MSP430G2 utilizzando il tutorial di Energia IDE e puoi seguire tutti i tutorial di MSP430 qui.
Materiali richiesti
- Launchpad TI-MSP430
- Modulo Bluetooth HC-05
- App Bluetooth Terminal dal Play Store
Modulo Bluetooth HC-05
L' HC-05 è un modulo Bluetooth facile da usare. Utilizza il protocollo di comunicazione seriale (USART) per comunicare tra i dispositivi. Ci sono due modalità operative per questo modulo: la prima è la modalità di comando e la seconda è la modalità di funzionamento. La modalità di comando viene utilizzata per configurare le impostazioni del dispositivo, come la modifica della password, la velocità di trasmissione, ecc. Del modulo. La modalità operativa viene utilizzata per inviare o ricevere dati tra i dispositivi.
In questo tutorial utilizzeremo le impostazioni predefinite (la password predefinita è 0000 o 1234, il nome del dispositivo è HC-05 e la velocità di trasmissione predefinita è 9600). Pertanto, lavoreremo solo in modalità operativa.
L'intervallo della tensione operativa è compreso tra 4 V e 6 V (normalmente + 5 V) e la corrente operativa è 30 mA. La portata del modulo è di 100 metri. Ci sono 6 pin in totale sul modulo Bluetooth HC-05, di cui vengono utilizzati i pin EN e State in modalità Command. Il pin-out del modulo Bluetooth HC-05 è mostrato di seguito:
Schema elettrico
Di seguito è mostrato lo schema del circuito per collegare il modulo Bluetooth HC-05 con la scheda TI-MSP340.
Qui abbiamo eseguito 4 collegamenti da HC-05. I pin RxD e TxD dell'HC-05 sono collegati rispettivamente a P1.1 e P1.2 di MSP430 per la comunicazione seriale. E VCC e GND di HC-05 sono collegati a VCC e GND di MSP430.
Programmazione del launchpad MSP430 per il modulo Bluetooth HC-05
La programmazione per questo LED controllato tramite Bluetooth utilizzando MSP430 è semplice. MSP verrà programmato utilizzando Energia IDE che è molto simile all'IDE di Arduino, quindi le persone che conoscono Arduino non avranno difficoltà a capirlo. Alla fine del tutorial viene fornito il codice completo con un video dimostrativo.
Iniziamo con la definizione di una macro per il LED rosso che stiamo utilizzando. Questa linea è solo per semplicità, in modo che possiamo usare LED al posto di RED_LED
#define LED RED_LED
La prossima è la nostra funzione setup () , la funzione Serial.begin () viene utilizzata per impostare la velocità di trasmissione per la comunicazione seriale su 9600 perché questa è la velocità di trasmissione predefinita per HC-05. Abbiamo anche usato la funzione pinMode () per inizializzare il pin digitale come output (che in questo caso è LED).
void setup () { Serial.begin (9600); pinMode (LED, OUTPUT); }
Nella funzione loop , per prima cosa controlliamo se i dati sono disponibili sulla porta seriale dalla funzione Serial.available () . Quindi definire una variabile data_recieved che memorizza il valore della funzione Serial.read () . Questa funzione viene utilizzata per ricevere i dati dal bluetooth.
Successivamente nell'istruzione if-else controlliamo i dati inviati dal telefono. Se è 1, accendere il LED utilizzando digitalWrite (LED, HIGH); e stampa il messaggio sull'app che il LED è acceso utilizzando la funzione Serial.write () . E se è 2, spegnere il LED utilizzando digitalWrite (LED, LOW); e stampare il messaggio sull'app che il LED è SPENTO utilizzando la funzione Serial.write () .
void loop () { if (Serial.available ()) { char data_received; data_received = Serial.read (); if (data_received == '1') { digitalWrite (LED, HIGH); Serial.write ("LED acceso"); } else if (data_received == '2') { digitalWrite (LED, LOW); Serial.write ("LED spento"); } } }
Funzionamento del LED controllato tramite Bluetooth utilizzando MSP430
Infine carica il codice in MSP430 utilizzando Energia IDE, quindi scarica e installa l'app Bluetooth Terminal sul tuo smartphone. L'app apparirà come mostrata di seguito:
Ora attiva il Bluetooth nel tuo smartphone e connettiti con il modulo Bluetooth selezionando HC-06 dall'elenco dei dispositivi disponibili. Usa la password 0000 o 1234 per connetterti. Dopo la connessione, si aprirà una finestra intitolata con il nome del dispositivo e collegata scritta sotto di essa. Questa finestra sarà simile alla figura seguente:
In questa finestra, prova a inviare 1 e 2 a MSP430 tramite il modulo Bluetooth HC-05. L'invio di 1 accenderà il LED e verrà stampato sul telefono il messaggio che " LED acceso" proprio come la figura seguente:
E l' invio di 2 spegnerà il LED e il messaggio verrà stampato sul telefono che "LED spento" proprio come la figura sotto. E voilà! Hai appena controllato un LED tramite il telefono tramite Bluetooth.
È così che un LED può essere controllato in modalità wireless tramite Bluetooth. Può essere facilmente convertito in un progetto domotico sostituendo il LED con un Relè e un qualsiasi elettrodomestico.
Di seguito viene fornito il codice completo con il video dimostrativo.