Introducción al módulo Bluetooth HC-05
El módulo Bluetooth HC-05 es un módulo inalámbrico de baja potencia que se utiliza para la comunicación inalámbrica entre dos dispositivos. Funciona en la banda ISM de 2,4 GHz y se puede utilizar para transferir datos y señales de control. Se utiliza ampliamente en robótica, domótica y otros dispositivos electrónicos de consumo. Tiene un protocolo de puerto serie sencillo y se puede utilizar para conectar entre sí dispositivos como teléfonos inteligentes, tabletas y ordenadores. También se puede utilizar para conectar dispositivos a una red Wi-Fi doméstica. Un ejemplo sería utilizar el módulo Bluetooth HC-05 para conectar un teléfono inteligente a un brazo robótico, lo que permitiría al usuario controlar el brazo robótico con su teléfono inteligente.
Configuración de pines
El módulo Bluetooth HC-05 es un popular módulo Bluetooth que puede añadir funcionalidad inalámbrica bidireccional a sus proyectos. Tiene 6 pines: Key, Vcc, GND, TXD, RXD, State.
Estos pines se utilizan para enviar datos de un dispositivo a otro. También tiene un pin de habilitación que permite alternar entre el modo de comando y el modo de datos. El pin Key/EN debe estar alto para funcionar en modo comando y bajo para funcionar en modo datos. Además, los pines Vcc y Ground se utilizan para alimentar el módulo, con +5 V de la tensión de alimentación. Con estos pines, el HC-05 se puede utilizar para una gran variedad de aplicaciones, como el registro de datos, aplicaciones de consumo y robots inalámbricos.

Diagrama del circuito
Para conectar el módulo Bluetooth HC-05 con Arduino, necesitas un diagrama del circuito. El diagrama del circuito del módulo Bluetooth HC-05 y la conexión Arduino es bastante simple y fácil de entender. Consiste en el módulo Bluetooth HC-05, la placa Arduino Uno, la placa de pruebas y los cables de conexión.

¿Cómo programar un módulo Bluetooth con Arduino?
En esta publicación, utilizamos la placa Arduino UNO para programar el módulo Bluetooth HC-05. En general, hay dos pasos necesarios:
- Configurar el modo AT en el módulo Bluetooth
- Programación y depuración
Configuración del modo AT en el módulo Bluetooth HC-05
El objetivo del modo AT es cambiar los parámetros originales del módulo Bluetooth HC-05. Los parámetros básicos incluyen principalmente: nombre Bluetooth, modo y contraseña de emparejamiento, etc. Por supuesto, hay dos formas de configurar el modo AT en el módulo Bluetooth:
- Usando USB-TTL y software de depuración del puerto serie
- Utilizando Arduino y el módulo Bluetooth
Aquí presentamos principalmente el segundo método.
1). Preparación de los materiales:
- ArduinoUNO * 1
- Módulo de puerto serie Bluetooth HC-05 *1
- Mini luz LED *1
- Cable Dupont *4
2). Conexión del módulo Bluetooth con Arduino UNO:
Para configurar el modo AT en el módulo Bluetooth, debe conectar correctamente los cables a la placa Arduino UNO:
- Arduino 5V – VCC
- Arduino GND – GND
- Arduino Pin10 – TXD
- Arduino Pin11 – RXD
Recuerde comprobar la conexión del circuito antes de encenderlo y evite cortocircuitos en los pines.

3). Escribir código Arduino UNO para el módulo Bluetooth:
A continuación, debemos escribir un código de programa para el módulo Bluetooth HC-05 en Arduino IDE. Este programa nos permite configurar el módulo Bluetooth a través del monitor serie en Arduino IDE. El código es el siguiente:
#include
// Pin10-RX,connectting the TXD of HC05
// Pin11-TX,connectting the RXD of HC05
SoftwareSerial BT(10, 11);
char val;
void setup() {
Serial.begin(38400);
Serial.println("BT is ready!");
// HC-05 default,38400
BT.begin(38400);
}
void loop() {
if (Serial.available()) {
val = Serial.read();
BT.print(val);
}
if (BT.available()) {
val = BT.read();
Serial.print(val);
}
}
4). Depuración de código con el monitor serie del IDE de Arduino:
Primero, apague el Arduino UNO, luego mantenga presionado el botón negro del módulo Bluetooth y, a continuación, encienda el Arduino.
Si la luz indicadora del módulo Bluetooth parpadea a una frecuencia de 2 segundos, significa que el módulo Bluetooth ha entrado correctamente en el modo AT.
Abra el monitor serie del IDE de Arduino y seleccione el puerto correcto. Establezca el formato de salida en Ambos: NL y CR y la velocidad en baudios en 38400, y podrá ver el mensaje «BT está listo» en el monitor serie.
A continuación, introduzca AT. Si todo es normal, el monitor serie mostrará OK.

5). Configuración de los comandos AT para el módulo Bluetooth:
Una vez que el módulo Bluetooth ha entrado correctamente en el modo AT, podemos añadirle comandos AT. Los comandos AT más comunes son los siguientes:
AT // check if the module is responding
AT+NAME // set or get the name of the device
AT+ADDR // get the Bluetooth address of the module
AT+ROLE // set or get the role of the module
AT+PSWD // set or get the password of the device
AT+UART // set or get the UART interface settings
AT+RESET // reset the module
En circunstancias normales, después de enviar el comando, se devolverá OK. Si no se devuelve ninguna información, compruebe si el cableado es correcto y si el módulo Bluetooth ha entrado en modo AT.
Después de configurar el comando AT, reinicie la alimentación. En ese momento, la luz indicadora del módulo Bluetooth parpadeará rápidamente, lo que indica que el módulo Bluetooth ha entrado en el modo de funcionamiento normal.
Programación y depuración
Una vez completada la configuración AT del módulo Bluetooth, podemos comenzar a programar experimentos en él. En este experimento, crearemos un programa que permita controlar el efecto de la luz del interruptor LED en la placa Arduino UNO a través del teléfono móvil.
1). Diseño de circuitos Arduino:
El diseño del circuito aquí es relativamente sencillo, principalmente en dos partes:
- Conexión entre Arduino y el módulo HC05
- Conexión entre Arduino y LED
Hay dos puntos a tener en cuenta aquí: el TXD del Arduino debe conectarse al terminal RXD del módulo HC05, y el RXD del Arduino debe conectarse al TXD del módulo HC05. En la siguiente figura, mi LED está conectado directamente al pin 13 del Arduino. Pero, en realidad, debes considerar si se necesita una resistencia en serie según el diseño de la luz LED.

2). Añadir código de programa a la placa Arduino UNO:
El código de parpadeo del LED es el siguiente:
void setup()
{
// Set the baud rate to 38400
Serial.begin(38400);
pinMode(13, OUTPUT);
}
void loop()
{
while(Serial.available())
{
char c=Serial.read();
if(c=='1')
{
Serial.println("BT is ready!");
// Return to the phone debugging program
Serial.write("Serial--13--high");
digitalWrite(13, HIGH);
}
if(c=='2')
{
Serial.write("Serial--13--low");
digitalWrite(13, LOW);
}
}
}
3). Depuración del programa en dispositivos móviles:
Instalación del software de depuración del módulo de puerto serie Bluetooth:
El módulo de puerto serie Bluetooth se basa en el protocolo SPP (Serial Port Profile), un dispositivo que puede crear un puerto serie entre dispositivos Bluetooth para la transmisión de datos, y se utiliza ampliamente en dispositivos electrónicos con funciones Bluetooth. Existen diferentes programas de depuración de módulos de puerto serie Bluetooth tanto para Android como para iOS.
Depuración del programa LED Blink:
Después de descargar e instalar el software, primero abrimos la configuración de Bluetooth del teléfono móvil, buscamos y nos conectamos con el módulo Bluetooth. A continuación, abrimos el software de depuración del puerto serie Bluetooth y lo conectamos al módulo Bluetooth. Ahora podemos introducir los siguientes comandos de depuración en el software y ver diferentes efectos:
- «1»: la luz LED está encendida, devuelve Serial–13–high en el software de depuración.
- «2»: el LED se apaga, vuelve a Serial–13–low en el software de depuración.
Conclusión
En este artículo, podrás aprender los conocimientos básicos y los pasos importantes para programar el módulo Bluetooth HC05 en Arduino.




