- Materiales necesarios
- Módulo Bluetooth HC-05
- Diagrama de circuito
- Programación del Launchpad MSP430 para el módulo Bluetooth HC-05
- Funcionamiento del LED controlado por Bluetooth mediante MSP430
Si bien se han introducido muchas tecnologías inalámbricas en la última década, Bluetooth sigue siendo la tecnología más popular para la comunicación inalámbrica de corto alcance. En sistemas integrados, el HC-05/06 es el módulo Bluetooth más popular. Anteriormente usamos este módulo Bluetooth en muchos proyectos para controlar electrodomésticos, robots, etc. y lo conectamos con otro microcontrolador:
- Interfaz Bluetooth HC-05 con STM32F103C8 Blue Pill: LED de control
- Interfaz del módulo Bluetooth con ESP8266: control de un LED
- Interfaz del módulo Bluetooth HC-05 con el microcontrolador AVR
- LEDs controlados por voz usando Arduino y Bluetooth
Hoy aprenderemos a conectar el módulo Bluetooth HC-05 con el Launchpad MSP430 de Texas Instruments. En este ejemplo de interfaz, controlaremos el LED integrado del MSP430 desde el teléfono inteligente mediante una aplicación de Android Terminal Bluetooth.
Si es nuevo en MSP430, puede comenzar con Introducción a MSP430G2 usando el tutorial de Energia IDE y puede seguir todos los tutoriales de MSP430 aquí.
Materiales necesarios
- Plataforma de lanzamiento TI-MSP430
- Módulo Bluetooth HC-05
- Aplicación de terminal Bluetooth de Play Store
Módulo Bluetooth HC-05
El HC-05 es un módulo Bluetooth fácil de usar. Utiliza el protocolo de comunicación en serie (USART) para comunicarse entre dispositivos. Hay dos modos de funcionamiento para este módulo: el primero es el modo de comando y el segundo es el modo de funcionamiento. El modo de comando se utiliza para configurar los ajustes del dispositivo, como cambiar la contraseña, la velocidad en baudios, etc. del módulo. El modo de funcionamiento se utiliza para enviar o recibir datos entre dispositivos.
En este tutorial usaremos la configuración predeterminada (la contraseña predeterminada es 0000 o 1234, el nombre del dispositivo es HC-05 y la velocidad en baudios predeterminada es 9600). Por tanto, solo trabajaremos en modo operativo.
El rango de voltaje de funcionamiento es de 4 V a 6 V (normalmente + 5 V) y la corriente de funcionamiento es de 30 mA. El alcance del módulo es de 100 metros. Hay un total de 6 pines en el módulo Bluetooth HC-05, de los cuales los pines EN y State se utilizan en el modo de comando. El pin-out del módulo Bluetooth HC-05 se muestra a continuación:
Diagrama de circuito
A continuación se muestra el diagrama de circuito para conectar el módulo Bluetooth HC-05 con la placa TI-MSP340.
Aquí, hemos realizado 4 conexiones desde HC-05. Los pines RxD y TxD de HC-05 están conectados a P1.1 y P1.2 de MSP430 respectivamente para comunicación serial. Y VCC y GND de HC-05 están conectados a VCC y GND de MSP430.
Programación del Launchpad MSP430 para el módulo Bluetooth HC-05
La programación de este LED controlado por Bluetooth usando MSP430 es fácil. MSP se programará utilizando Energia IDE, que es muy similar a Arduino IDE, por lo que las personas familiarizadas con Arduino no tendrán ninguna dificultad para comprender esto. El código completo con un video de demostración se proporciona al final del tutorial.
Comenzamos definiendo una macro para el LED rojo que estamos usando. Esta línea es solo por simplicidad, para que podamos usar LED en lugar de RED_LED
#define LED RED_LED
La siguiente es nuestra función setup () , la función Serial.begin () se usa para establecer la velocidad en baudios para la comunicación en serie en 9600 porque esta es la velocidad en baudios predeterminada para HC-05. También usamos la función pinMode () para inicializar el pin digital como salida (que es LED en este caso).
configuración vacía () { Serial.begin (9600); pinMode (LED, SALIDA); }
En la función de bucle , primero verificamos si los datos están disponibles en el puerto serie mediante la función Serial.available () . A continuación, defina una variable data_recieved que almacena el valor de la función Serial.read () . Esta función se utiliza para recibir los datos de bluetooth.
A continuación, en la declaración if-else, estamos verificando los datos enviados desde el teléfono. Si es 1, encienda el LED usando digitalWrite (LED, HIGH); e imprima un mensaje en la aplicación que indique que el LED está encendido mediante la función Serial.write () . Y si es 2, apague el LED usando digitalWrite (LED, LOW); e imprima el mensaje en la aplicación que indica que el LED está APAGADO mediante la función Serial.write () .
bucle vacío () { if (Serial.available ()) { char data_received; data_received = Serial.read (); if (data_received == '1') { digitalWrite (LED, HIGH); Serial.write ("LED encendido"); } else if (data_received == '2') { digitalWrite (LED, LOW); Serial.write ("LED apagado"); } } }
Funcionamiento del LED controlado por Bluetooth mediante MSP430
Finalmente, cargue el código en MSP430 usando Energia IDE y descargue e instale la aplicación Bluetooth Terminal en su teléfono inteligente. La aplicación se verá como se muestra a continuación:
Ahora encienda el Bluetooth en su teléfono inteligente y conéctese con el módulo Bluetooth seleccionando HC-06 de la lista de dispositivos disponibles. Utilice la contraseña 0000 o 1234 para conectarse. Después de la conexión, se abrirá una ventana titulada con el nombre del dispositivo y conectado escrito debajo. Esta ventana se verá como la siguiente figura:
En esta ventana, intente enviar 1 y 2 a MSP430 a través del módulo Bluetooth HC-05. Al enviar 1, se encenderá el LED y el mensaje se imprimirá en su teléfono que " LED encendido" como se muestra en la siguiente figura:
Y el envío de 2 apagará el LED y se imprimirá el mensaje en su teléfono que indica que el LED se apaga, tal como se muestra en la figura siguiente. ¡Y voilá! Simplemente controlaste un LED a través de tu teléfono usando Bluetooth.
Así es como se puede controlar un LED de forma inalámbrica mediante bluetooth. Se puede convertir fácilmente en un proyecto de automatización del hogar reemplazando el LED con un relé y cualquier electrodoméstico.
A continuación se proporciona el código completo con el video de demostración.