Académique Documents
Professionnel Documents
Culture Documents
TUTORIALES
Hardware Requerido:
Circuito:
Esquematico:
Cdigo:
//******************************************************************
// Cambio de la configuracion del modulo bluetooh
// mediante comandos AT.
//
// Pasos a seguir:
// 1: El modulo no debe estar vinculado a ningun dispositivo.
//
// 2: La forma visual de conocer el caso anterior
//
Led fijo > Emparejado
//
Led intermitente > sin emparejar
//
// 3: Definir mediante la libreria SoftwareSerial los nuevos
//
pines TX,RX para el arduino
//
//
Conectar el TX del Modulo Bluetooth al RX del arduino
//
Conectar el RX del modulo Bluetooth al TX del arduino
//
// 4: Cargar el programa
//
// 6: Comunicar con el modulo (AT)
//
// 7: Cambiar el nombre del modulo (AT+ANAME)
//
// 8: Ajustar la velocidad de comunicacion (AT+BAUD)
//
1 > 1200 baudios
//
2 > 2400 baudios
//
3 > 4800 baudios
//
4 > 9600 baudios (por defecto)
//
5 > 19200 baudios
//
6 > 38400 baudios
//
7 > 57600 baudios
//
8 > 115200 baudios
//
// 9: Configurar pin de asociacion (AT+PIN)
//
//******************************************************************
//Se declara esta libreria especialmente para la comunicacion bluetooth
#include<SoftwareSerial.h>
//Se define los pines TX y RX, en este caso pin2=Rx,pin3=Tx
SoftwareSerial mySerial(2,3);
//Variable para control de configuracion
boolean configurado = false;
void setup(){
pinMode(13,OUTPUT); //Pin13 para control del proceso
Serial.begin(9600); //Iniciamos comunicacion serial
mySerial.begin(9600); //Iniciamos comunicacion bluetooth
digitalWrite(13, LOW); //Apagamos el led 13
}
void loop(){
if (configurado){
/* Parpadeo para verificar su funcionamiento */
digitalWrite(13, HIGH); //Enciende el led
delay(1000);
//Espera 1 segundo
digitalWrite(13, LOW); //Apaga el led
delay(1000);
//Espera 1 segundo
}
else{
digitalWrite(13, HIGH); //Empezamos el tiempo de espera para reconectar
delay(1000);
//Espera de 1 segundo (se puede variar)
digitalWrite(13, LOW); // Tiempo de espera agotado para reconectar
Serial.println(AT);
mySerial.write(AT); //comenzamos la comunicacion con modulo BT
delay(1000);
//Espera de 1 segundo
while(mySerial.available()>0) Serial.write(mySerial.read());
Serial.println();
Serial.println(AT+NAMEPARURO);
mySerial.write(AT+NAMEPARURO); //Le ponemos un nombre al dispositivo
delay(1000);
//Espera de 1 segundo
while(mySerial.available()>0) Serial.write(mySerial.read());
Serial.println();
Serial.println(AT+BAUD4);
mySerial.write(AT+BAUD4); //Establecemos la velocidad en 9600
delay(1000);
//Espera de 1 segundo
while(mySerial.available()>0) Serial.write(mySerial.read());
Serial.println();
Serial.println(AT+PIN4321);
mySerial.write(AT+PIN4321); //Establecemos el pin de asociacion(contrasea)
delay(1000);
//Espera de 1 segundoM
while(mySerial.available()>0) Serial.write(mySerial.read());
/* En este punto debe estar configurado */
digitalWrite(13, HIGH); //Mostramos que todo ha funcionado segun lo esperado
configurado = true; //Centinela para no volver a configurarlo, salvo que se resetee
}
}