Go Down

Topic: Stringhe e comunicazione seriale (Read 542 times) previous topic - next topic

matteventu

Ciao a tutti.

Sto cercando di far comunicare l'Arduino con un monitor seriale (su PC o cellulare), e mi servirebbe inviare delle "parole".

Se scrivo "ciao" e lo invio all'arduino, esso lo riceve tutto separato.

Siccome mi servirebbe fare un ciclo if dove la stringa memorizzata in una variabile viene confrontata con un'altra stringa, di conseguenza intera (e non tutta divisa), come potrei fare?

Ho già cercato e di discussioni a questo tema ne ho trovate, ma nessuna abbastanza chiara per un principiante :(

Grazie mille!! :D

leo72


Ho già cercato e di discussioni a questo tema ne ho trovate, ma nessuna abbastanza chiara per un principiante :(

Ah, Pinocchio... non sai che ti si allunga il naso, poi?  :P

Di discussioni ce ne sono un sacco. L'argomento seriale e la ricostruzione dei dati ricevuti è trattata un sacco di volte. In pratica lato Arduino tu devi "ricostruire" una stringa combinando i caratteri che ricevi. La seriale trasmette un byte alla volta.
Qui altro materiale:
http://arduino.cc/en/Reference/Serial

PS:
anche l'oggetto String ti può far comodo:
http://arduino.cc/en/Reference/StringObject

contecavour

Leo in parte gli do ragione. E' vero che ci sono mille esempi, ma spesso viene veicolato qualche carattere e basta o in mezzo ad altre cose.
Io ad esempio ho messo insieme grazie anche ad un po di aiuti un programma che chiede la risoluzione da Serial Monitor, si aspetta un carattere e poi scatta una foto che riceve via seriale e manda in post ad un server che esegue PHP, ma nonostante questo ho ancora poco chiaro l'uso di stringhe complesse e non ho trovato un solo esempio simile pur cercando da 2 giorni.

Ho cercato SERIALE o COMUNICAZONE SERIALE ma trovi esempi che si utilizzano la seriale ma in cose che mi sembrano banali.
Forse sono io che non riesco a vedere le analogie, ma vicino a quello che mi servirebbe non ho trovato nulla.

Io posso capire che per voi forse sarà banale, ma se uno chiede è perchè non riesce a risovere già dopo aver ricercato qui e con google.
N

Go Up