moduli bluetooth

ciao,
ho fatto fuori un modulo bluetooth hc-05 , ora vorrei acquistare un hc-06 poichè il negozio di elettronica vicino a casa mia ha solo quello.
Io utilizzavo l hc-05 con la libreria softwareserial e andava tutto perfettamente , la mia domanda è : Con l’ Hc 06 cambia qualcosa?
programma

#include <SoftwareSerial.h>
SoftwareSerial mySerial(10, 11);

int potB2 = A2;
int potB4 = A3;
int luminositaB2 = 0;
int luminositaB4 = 0;
int ledB1 = 2;
int ledB2 = 3;
int ledB3 = 4;
int ledB4 = 5;
int pulsB2 = 7;
int pulsB3 = 8;
int pulsB4 = 6;
int buttonB2 = 0;
int buttonB3 = 0;
int buttonB4 = 0;
int vecchio_valB2 = 0;
int vecchio_valB3 = 0;
int vecchio_valB4 = 0;
int statoB1 = 0;
int statoB2 = 0;
int statoB3 = 0;
int statoB4 = 0;
void setup()
{
  pinMode(ledB1, OUTPUT);
  pinMode(ledB2, OUTPUT);
  pinMode(ledB3, OUTPUT);
  pinMode(ledB4, OUTPUT);
  pinMode(pulsB2, INPUT);
  pinMode(pulsB3, INPUT);
  pinMode(pulsB4, INPUT);

  mySerial.begin(9600);
  delay(1000);
}
void loop()
{
  buttonB4 = digitalRead(pulsB4);
  buttonB2 = digitalRead(pulsB2);
  buttonB3 = digitalRead(pulsB3);
  luminositaB2 = analogRead(potB2) / 4;
  luminositaB4 = analogRead(potB4) / 4;
  delay(10);
  if ((buttonB4 == HIGH) && (vecchio_valB4 == LOW))
  {
    statoB4 = 1 - statoB4;
  }
  vecchio_valB4 = buttonB4;
  if (statoB4 == 1) {
    analogWrite(ledB4, luminositaB4);   
  }
  else {
    digitalWrite(ledB4, LOW);    
  }
  if ((buttonB2 == HIGH) && (vecchio_valB2 == LOW))
  {
    statoB2 = 1 - statoB2;
  }
  vecchio_valB2 = buttonB2;
  if (statoB2 == 1) {
    analogWrite(ledB2, luminositaB2);   
  }
  else {
    digitalWrite(ledB2, LOW);    
  }
  if ((buttonB3 == HIGH) && (vecchio_valB3 == LOW))
  {
    statoB3 = 1 - statoB3;
  }
  vecchio_valB3 = buttonB3;
  if (statoB3 == 1) {
    digitalWrite(ledB3, HIGH);   
  }
  else {
    digitalWrite(ledB3, LOW);    
  }
  if (mySerial.available())
  { char dato = mySerial.read(); 
    switch (dato)
    { case 'A':
        statoB1 = 1;
        break;
      case 'a':
        statoB1 = 0;
        break;

      case 'B':
        statoB2 = 1;
        break;
      case 'b':
        statoB2 = 0;
        break;

      case 'C':
        statoB3 = 1;
        break;
      case 'c':
        statoB3 = 0;
        break;

      case 'D':
        statoB4 = 1;
        break;
      case 'd':
        statoB4 = 0;
        break;
    }
  }
  if (statoB1 == 1)
  { digitalWrite(ledB1, HIGH);   
  }
  else
  { digitalWrite(ledB1, LOW);    
  }
  if (statoB2 == 1)
  { analogWrite(ledB2, luminositaB2);  
  }
  else
  { digitalWrite(ledB2, LOW);    
  }
  if (statoB3 == 1)
  { digitalWrite(ledB3, HIGH);   
  }
  else
  { digitalWrite(ledB3, LOW);    
  }
  if (statoB4 == 1)
  { analogWrite(ledB4, luminositaB4);   
  }
  else
  { digitalWrite(ledB4, LOW);    
  }

NO, se non il fatto che, mentre l'HC-05 può fare sia da SLAVE che da MASTER ... normalmente l'HC-06 fa solo da SLAVE.

Ma nel tuo caso, in cui mi sembra venga usato come SLAVE, non cambia nulla :slight_smile:

Guglielmo

grazie mille,
devo stare attento a prendere un hC-06 Slave e non master :slight_smile:

Tranquillo, la versione più comune è la SLAVE ... difficile che trovi gli HC-06 che fanno anche da MASTER :wink:

Guglielmo