Go Down

Topic: [HOWTO] Guida (più o meno) completa all'utilizzo di Moduli Bluetooth (Read 107099 times) previous topic - next topic

swipon

Scusate ma sarebbe possibile passare al setup dello sketch i valori di default da impostare aziché passare tramite comandi seriali? (sono ancora in attesa del modulo bt quindi non posso ancora effettuare test)
In questo modo si otterrebbe un preset all'avvio con le ns. impostazioni personalizzate.

Allego l'Esempio che sto scrivendo:

Code: [Select]

#include <SoftwareSerial.h>

// ###########################################
// Programma di configurazione Bluetooth stack
// ###########################################

// pin ricezione n 2 sul modulo bt
const int rxPin = 2; //con resistenza 2k2

// pin trasmissione n 1 sul modulo bt
const int txPin = 3; //nessuna resistenza necessaria

// pin configurazione n pio11 su modulo bt
const int atPin = 4; //con resistenza 2k2

// pin arduino led integrato
const int connPin = 13;

// attivo la trasmissione e ricezione seriale
SoftwareSerial bluetooth(rxPin,txPin);

void setup() {
 
  // wait 2 second for inizialize
  delay (2000);
 
  // inizializzo la seriale
  Serial.begin(9600);
  // inizializzo Bluetooth SoftwareSerial port
  bluetooth.begin(9600);
 
  // attivo la configurazione del modulo bt
  pinMode(connPin, OUTPUT);
  pinMode(atPin,OUTPUT);
  Serial.println("Seriali attive...");
  digitalWrite(atPin,HIGH);
 
  // imposto la baudrate di default
  digitalWrite(connPin, HIGH);
  bluetooth.write("AT+BAUD4");
  digitalWrite(connPin, LOW);
//     1----1200bps
//     2----2400bps
//     3----4800bps
//     4----9600bps // consigliata per HC-03-04
//     5----19200bps
//     6----38400bps // consigliata per HC-05-06
//     7----57600bps
//     8----115200bps
//     9----230400bps
//     A----460800bps
//     B----921600bps
//     C----1382400bps
 
  // imposto nome device bluetooth di default
  digitalWrite(connPin, HIGH);
  bluetooth.write("AT+NAMEArduinoBluetooth");
  digitalWrite(connPin, LOW);
 
  // imposto password bluetooth di default
  digitalWrite(connPin, HIGH);
  bluetooth.write("AT+PIN0000");
//  bluetooth.write("AT+PSWD0000");
  digitalWrite(connPin, LOW);

  // imposto modalità master o slave
  digitalWrite(connPin, HIGH);
  bluetooth.write("AT+ROLE1"); // 0=slave(default) / 1=master / 2 Slave-Loop
  digitalWrite(connPin, LOW);
 
  // imposto abbinamento fisso master/slave (binding)
  //digitalWrite(connPin, HIGH);
  //bluetooth.write("AT+CMODE=1"); //connect to everyone
  //bluetooth.write("AT+CMODE=0"); //connect only to slave
  //bluetooth.write("AT+BIND=11,3,252002"); // set mac address dello slave
  //digitalWrite(connPin, LOW);
 
  //clean pairing list
  digitalWrite(connPin, HIGH);
  bluetooth.write("AT+RMAAD");
  digitalWrite(connPin, LOW);
}

void loop() {
  if (bluetooth.available() > 0) {
    digitalWrite(connPin, HIGH);
    Serial.write(bluetooth.read());
    digitalWrite(connPin, LOW);
  }
  if(Serial.available() > 0) {
    digitalWrite(connPin, HIGH);
    bluetooth.write(Serial.read());
    digitalWrite(connPin, LOW);
  }
}


Ciao a tutti
Luca

Go Up
 


Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

Arduino
via Egeo 16
Torino, 10131
Italy