Go Down

Topic: Stringa dal monitor seriale (Read 954 times) previous topic - next topic

Mark116

Ciao a tutti, potete spiegarmi come leggere tramite arduino una stringa inviata dal monitor seriale?

lesto

devi usare il serial.read(), però così leggi una stringa alla volta.

sta a te fare il codice. di solito si usa il come carattere di fine stringa il \n, per inviarlo in automatico quando premi invio cìè l'opzione da spuntare nel serila monitor "add newline" o qualcosa del genere
sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Dario Gogliandolo

Forse lesto si è confuso, con Serial.read() leggi un carattere alla volta...
"Se una cosa sembra troppo bella per essere vera, semplicemente... non è vera!"
Video demonstration of my DIY Dashboard OBDII

lesto

si, un carattere, infatti poi perlavo di come riunire la stringa
sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Martinix

se ti può aiutare ti passo un stupido programmino, che riceve uan stringa (max 100 caratteri) e la stampa, a me serviva per fare una specie di protocollo seriale 8accendi, spegni ecc led via seriale).
forse ti potra essere utile.

Code: [Select]

//prova controllo acensione led via seriale
int  lun =2;
void setup ()
{
  delay (3000);
  Serial.begin (9600);
  pinMode (13, OUTPUT);
  pinMode (12,OUTPUT);
  Serial.println ("pronto per comunicare!");
 
}

void loop ()
{
  char prova[100]={0};
 
 
  if (Serial.available() > 0)
  {
    delay (250);
    for (int h=0; h < lun; ++h)
   
      prova[h]=Serial.read();
   
 
   
     Serial.print ("Per ora ricevo ");
     Serial.println (prova);
   // Serial.print (prova[0]);
    if (prova[0] == 'a')
    {
      if (prova [1]== '1')
digitalWrite (13, HIGH);
      if (prova[1]=='2')
digitalWrite(12, HIGH);
    }
    if (prova[0]== 'b')
    {
      if (prova[1]== '1')
digitalWrite(13, LOW);
      if (prova[1]=='2')
digitalWrite(12, LOW);
    }
  }

 
}
Le informazioni date, son suggerimenti, osservazioni, ma come le applicate è a vostro rischio e pericolo!

Go Up