jueves, 13 de febrero de 2014

Configuración de Modulo bluetooth HC-06





El módulo HC-06  es un dispositivo  de comunicación bluetooth que funciona vía comunicación serial rs232, el cual  aprenderemos a configurarlo para después utilizarlo en nuestros proyectos.

La configuración se puede hacer mediante  una PC, PIC, ATMEL, PICAXE, ARDUINO, que necesariamente tenga comunicación serial .En este caso configuraremos mediante un PIC 16f877a y mediante un  ARDUINO.

CONFIGURANDO MEDIANTE UN PIC 16F877A.

Para configurar el modulo Bluetooth HC-06 debemos utilizar comandos AT ,Los comandos AT son una lista de instrucciones que nos permitirán cambiar algunos parámetros de nuestro modulo Bluetooth.

Algunos Comandos:
AT, AT+NAME, AT+PIN, AT+BAUD.

Yo escribiré un pequeño programa en Pic C Compiler , para configurarlo mediante la comunicación serial(UART).

El circuito es el siguiente:


Configuración de Fabrica:

NAME: HC-06
PIN: 1234
BAUD:9600


EL PROGRAMA PARA EL PIC ES EL SIGUIETE:

#include <16F877A.h> //seleccion de pic apra el mapeo
#use delay(clock=4000000) //frecuencia de trabajo
#FUSES XT,NOWDT,NOPROTECT,NOPUT //configurando fusibles
#use RS232(BAUD=9600,XMIT=PIN_C6,RCV=PIN_C7,BITS=8,PARITY=N)
char nombre[]="RODRI-I"; //nuevo nombre a designar al bluetooth
char bps = '4'; //velosidades baud
char pass[]="PIC2"; //nueva contraseña a asignar
int i;
void main (){
  set_tris_b(0x00); //puerto B como salida
  output_b(0); //todo el puerto B apagado
  output_high(PIN_B0); //encendemos el led conectado en RB0

  for(i=0;i<=8;i++) //8 seg.. para conectar nuestro bluetooth
  {
   delay_ms(1000);
   }

 output_low(PIN_B0); //apagamos el led en RB0
                     //y inicia la configuración
 printf("AT");
 delay_ms(1000);
 printf("AT+NAME");
 printf("%s",nombre);
 delay_ms(1000);
 printf("AT+BAUD");
 printf("%c",bps);
 delay_ms(1000);
 printf("AT+PIN");
 printf("%s",pass);
 delay_ms(1000);
                      // acaba de configurar y
 output_high(PIN_B0); // enciende el endicando que finalizo
 delay_ms(1000);
 while(true) //una vez que finalizo entra en bucle
 {
  output_high(pin_b0);
  delay_ms(500);
  output_low(pin_b0);
  delay_ms(500);
 }
}


CONFIGURANDO MEDIANTE UN ARDUINO UNO.

La manera de conectar un Arduino y un modulo bluetooth HC-06 es el siguiente:
 

PROGRAMA PARA ARDUINO UNO


char NOMBRE[10] = "RODRI-P";
char BPS        = '4';
char PASS[10]   = "PIC3";

void setup()
{
  Serial.begin(9600);
  pinMode(13,OUTPUT);
  digitalWrite(13,HIGH);
  delay(10000);
  digitalWrite(13,LOW);

  Serial.print("AT");
  delay(1000);

  Serial.print("AT+NAME");
  Serial.print(NOMBRE);
  delay(1000);

  Serial.print("AT+BAUD");
  Serial.print(BPS);
  delay(1000);

  Serial.print("AT+PIN");
  Serial.print(PASS);
  delay(1000);
}

void loop()
{
  digitalWrite(13,!digitalRead(13));
  delay(500);
}


Datos personales