Ricezione dati seriali da pc

Salve a tutti,
Vorrei un aiuto su come risolvere un problema che mi sta uccidendo da tempo...

Vorrei trasmettere dati dal monitor seriale verso arduino esempio:
a1123;b242;c35;d23

e vorrei che arduino salva per esempio sulla variabile a il valore 1123 nella b il valore 242 e cosi via
come posso fare? ci sono delle librerie ò degli esempi?

può andare bene anche se invio un valore alla volta.

Grazie

Con un valore alla volta è semplice, il primo carattere è la variabile quindi estrai questo carattere e poi con una istruzione switch() memorizzi il resto dei dati nella relativa variabile.
Se vuoi avere più comandi sulla stessa riga devi fare uno split() usando il punto e virgola come separatore.

Ma temo che ci siano per te ancora varie cose da imparare per l'ambiente Arduino ed il linguaggio in particolare, visto che hai postato domande simili ben DUE ANNI FA.

In ogni caso è difficile parlare e darti suggerimenti se non ci fai almeno vedere qualcosa, intendo un TUO listato dove cerchi di fare queste cose.

Come ti è stato detto forse il problema è che non hai ancora molta dimestichezza col linguaggio :slight_smile:
Quello che vuoi fare richiede una preparazione un po più delle cose basi di arduino, diciamo che se la normale difficoltà di arduino è 5 qui siamo almeno a sei,sette :wink:

Adesso per seriale trasmetti "byte" ma tu considera un stringa, perché il numero che vuoi trasmettere è una stringa.

Adesso devi partire dagli esempi "come ricevere una stringa da seriale". STRINGA STILE C array di char.
Tu ricevi la stringa, il primo carattere "a-b-c-d" lo memorizzi in una variabile char, e ti servirà per sapere a quale variabile di arduino assegnerai il valore, puoi usare uno switch() su questo carattere.

I successivi caratteri li copi in un array temporaneo di char tmp[10];
Poi usi la funzione atoi(), per convertire l'array in un numero intero da assegnare alla tua variabile.
MiaVariabile=atoi(tmp);

Come vedi ciò che vuoi fare richiede una conoscenza un pelino superiore del linguaggio C "ma poi non di tanto sono sempre concetti base, se non di arduino del linguaggio C".

torn24:
Come ti è stato detto forse il problema è che non hai ancora molta dimestichezza col linguaggio :slight_smile:
Quello che vuoi fare richiede una preparazione un po più delle cose basi di arduino, diciamo che se la normale difficoltà di arduino è 5 qui siamo almeno a sei,sette :wink:

Già, e se poi consideri che in due anni il problema che ha pare sia lo stesso, ma con ben 148 post all'attivo nel forum, temo che più che postare domande debba iniziare studiando il linguaggio e l'ambiente, cercare di "sporcarsi di più le mani" e farsi un poco di esperienza...

Io i primi tempi mi ero fatto una cartella "Esercizi e test" dove sono arrivato a circa 40 progettini affrontando ogni aspetto di quelli principali, uno per volta, prima di cimentarmi nel mio primo "vero" progetto. E già conoscevo abbastanza il C e C++.