Arduino: collegare modulo bluetooth via SoftwareSerial

Ciao!

in questo breve post vedremo un modo alternativo per collegare un modulo bluetooth ad un Arduino.
Infatti questo collegamento verrà fatto tramite una porta seriale simulata e non tramite la porta seriale hardware nativa della vostra scheda.



Questo stratagemma è utile nel caso abbiate già destinato i pin "tx" e "rx" ad altri usi, oppure se volete evitare problemi durante il caricamento degli sketch.

In questo esempio ho utilizzato un Wemos D1 Mini, ma questo metodo può essere utilizzato anche sulle schede Arduino.

Ecco il collegamento per il Wemos:



Di seguito invece uno sketch di esempio (sempre per il Wemos), per altre schede Arduino dovrete semplicemente cambiare la riga 3 con i pin a cui collegherete il modulo bluetooth).
Dopo aver caricato il codice, aprite il serial monitor, ciò che riceverà il modulo bluetooth verrà stampato a monitor, mentre quello che scriverete verrà inviato.
Per testarlo potete usare il vostro smartphone Android scaricando l'app "Bluetooth Terminal", esistono comunque moltissime app equivalenti, anche per iOS. 


  1. #include <SoftwareSerial.h>

  2. SoftwareSerial mySerial(D2, D1); // RX, TX

  3. void setup()
  4. {
  5.   // Open serial communications and wait for port to open:
  6.   Serial.begin(9600);
  7.   while (!Serial) {
  8.     ; // wait for serial port to connect. Needed for Native USB only
  9.   }

  10.   // set the data rate for the SoftwareSerial port
  11.   mySerial.begin(9600);
  12. }

  13. void loop()
  14. {
  15.   if (mySerial.available())
  16.     Serial.write(mySerial.read());
  17.   if (Serial.available())
  18.     mySerial.write(Serial.read());
  19. }

Come potete vedere dallo sketch, grazie alla libreria "SoftwareSerial" è possibile ottenere l'istanza "mySerial" (vengono passati i pin D2 e D1, verranno usati rispettivamente come RX e TX) che sarà possibile utilizzare come una seriale hardware.

Questo è tutto.
Seguimi sulle mie pagine per rimanere sempre aggiornato sui nuovi post!

Nessun commento:

Posta un commento

Lascia un commento qui sotto, ti risponderò il prima possibile!

Altri Post