Go Down

Topic: SoftwareSerial ricezione caratteri indesiderati... (Read 174 times) previous topic - next topic

stefanoxjx

Ciao a tutti, ho collegato un ESP8266 tramite softwareserial.
Il problema è che SoftwareSerial::available() mi da l'impressione che a volte restituisca true anche se in realtà dovrebbe essere false.
Per esempio, con questo banale sketch, ricevo correttamente i dati trasmessi tramite rete ma quando non sto ricevendo nulla dalla rete riceve comunque dei caratteri spurii anche se in realtà non riceve nulla.
Code: [Select]

#include <SoftwareSerial.h>
const int ESP8266_RXPIN=5;
const int ESP8266_TXPIN=6;

SoftwareSerial ESP8266(ESP8266_RXPIN, ESP8266_TXPIN);

void setup()
{
   Serial.begin(9600);
 
   ESP8266.begin(9600);
   while(!ESP8266);
}

void loop()
{
   while(ESP8266.available())
      Serial.println((char)ESP8266.read());
 
}


Quando dico che riceve dei caratteri spurii anche se in realtà non vengono trasmessi dalla seriale intendo che essendomi collegato in parallelo al pin TX del modulo tramite un convertitore FTDI, nel terminale del modulo non vedo nessun carattere arrivare, mentre sul terminale dell'ide arduino (che passa attraverso lo sketch e quindi ESP8266.available()) vedo caratteri continui che arrivano.
Non riesco a capirne il motivo.
Ho provato anche a mettere una resistenza di pulldown (cosa che non ho mai dovuto fare prima e credo che non sia necessaria) ma il problema non si risolve.
Consigli?
Grazie.

Stefano

stefanoxjx

Confermo, arduino riceve dati che in realtà non gli vengono trasmessi dal modulo ESP.
A dire il vero non mi è mai successa una cosa simile.
Ora provo a cambiare Arduino, vediamo se si risolve.

Grazie.

Stefano

gpb01

Scusa, ma che modello di Arduino stai usando ? Arduino UNO ?

Guglielmo
Search is Your friend ... or I am Your enemy !

docdoc

Connessioni o cavi "ballerini"? Massa mancante o connessa anche questa male?
Alex "docdoc" - ** se ti sono stato d'aiuto, un punto karma sarà gradito ;-) **

stefanoxjx

Scusa, ma che modello di Arduino stai usando ? Arduino UNO ?

Guglielmo
Si, arduino uno.

stefanoxjx

Connessioni o cavi "ballerini"? Massa mancante o connessa anche questa male?
Le connessioni le ho già rifatte 3 volte sostituendo anche i cavi.
Ho riferificato anche subito prima di risponderti.
Sembra tutto ok.

stefanoxjx

Problema risolto cambiando arduino.
I caratteri che ricevevo avevano tutti codici ascii dal 248 in su.
Proverò a fondo quell'arduino quando avrò un po' più tempo.
Grazie.

Stefano

Go Up