Tutorial: Módulo Bluetooth







Este post ensina a configurar seu módulo bluetooth que por padrão vem configurado com nome tipo: Linvor, HC-06 entre outros. A partir deste código você poderá configurar seu módulo conforme a necessidade de sua aplicação. Neste exemplo eu utilizei meu Arduino Mega, caso você venha utilizar o Arduino Uno, é possível utilizar no lugar da "Serial1" a rotina de softwareSerial ou também é só alterar todas "Serial1" para"Serial"
Bom trabalho!!!


CÓDIGO DA CONFIGURAÇÃO





  1. String command = ""; // variavel que recebe as respostas do comando AT
  2. // do dispositivo a ser configurado 
  3. void setup()  {
  4.  
  5. Serial.begin(9600);
  6. Serial.println("AT comandos!");
  7.  // JY-MCU v1.03 defaults to 9600.
  8.  Serial1.begin(9600); //UTILIZAR SOTFWARE_SERIAL NO LUGAR DE TODO Serial1
  9.  delay(3000); //AGUARDA APROXIMADAMENTE 3 SEGUNDO
  10.  
  11. void loop() {
  12. Serial1.write("AT"); //inicia a configuração do comando AT
  13. delay(1000); //AGUARDA APROXIMADAMENTE 1 SEGUNDO
  14. ler_serial(); //executa subrotina ler_serial
  15. //inicia a configuração do modulo
  16. Serial1.write("AT+NAME");
  17. Serial1.write("Bruno"); //COLOCAR O NOME DESEJADO AO DISPOSITIVO
  18. delay(1000);
  19. ler_serial();
  20. Serial1.write("AT+PIN");
  21. Serial1.write("1111"); //COLOCAR O CODIGO PIN PARA PAREAR
  22. delay(1000); 
  23. ler_serial();
  24.  
  25. Serial1.write("AT+BAUD");
  26. Serial1.write("4"); 
  27. /* SELECIONAR O NUMERO CONFORME A VELOCIDADE DO BAUD RATE
  28. 1 -> 1200
  29. 2 -> 2400
  30. 3 -> 4800
  31. 4 -> 9600 (default)
  32. 5 -> 19200
  33. 6 -> 38400
  34. 7 -> 57600
  35. 8 -> 115200
  36. 9 -> 230400*/
  37.  
  38. delay(500);
  39. ler_serial();
  40. Serial.println("Configuração Realizada");
  41. while(1)
  42. {
  43. //trava se programa neste loop
  44. }// END loop()
  45. //subrotina de leitura da porta serial.
  46. void ler_serial()
  47. {
  48. if (Serial1.available() ) { //verifica se algum dado na serial
  49. while(Serial1.available()) { //executa leitura enquanto tiver dado na serial.
  50. command += (char)Serial1.read(); // escreve a informação lida nesta variavel
  51. }
  52. Serial.println(command); // escreve na serial a informação lida
  53. command = ""; // limpa a variavel
  54. }
  55. }