Scusa, ma quello che ti ho postato è un esempio di quello che ho fatto io, ovviamente, tu devi adattarti il programma alle tue necessità! quelle che non ti serve lo togli, quello che ti manca ce lo metti, e così via!
tutte quelle cose a me mi servono per creare una comunicazione bidirezionale con il pc, il pc manda delle richieste, arduino esegue. se a te serve solo che riceva, semplicemente usa la parte ricezione. i controlli di errore mi servono per essere sicuro di non ricevere GARBAGES dalla seriale, se ricevesse un b1w0 invece di un b130 e con il primo l'arduino non eseguirebbe nulla, perchè non lo riconosce, se invece non vi è un minimo di controllo errori, quella "w" potrebbe incasinare (dicasi bloccare) l'esecuzione o no? AH, giusto per chiarezza, i dati ricevuti dalla seriale sono byte, quindi ricevere lettere significa avere dei valori della tabella ASCII, dove a = "65" per esempio... Ma se a te non serve, non lo usare!
idem per la function che azzera i contatori, a me, particolarmente, serve.
il codice da me postato fa parte di uno che è almeno 50 volte più grande e che funziona benissimo, riconosce gli errori, esegue solo i comandi riconosciuti e posso inviare dal pc anche una sequenza di comandi del tipo:
b100,100,130,150,c140,150,160,170, .... nel mio caso, ogni trasmissione comando implica che il pc invia 4 blocchi di 4 numeri di tre cifre in formato ASCII separati da virgola(ma se ne può fare a meno), la lettera all'inizio di ogni blocco è il comando.
mi dispiace di averti fatto perdere del tempo a leggere il mio codice, forse avevi ragione, di sicuro non c'e bisogno di tutto sto casino di programma, magari il tuo fa solo un paio di cose semplici, il mio magari è molto più complicato ed io l'ho complicato ulteriormente...