Salve a tutti!
Vado subito al sodo....Sono riuscito ad inviare tramite altra scheda elettronica(nel mio caso diglient Nexys2) ad Arduino una stringa di bit. In particolare uno start bit, 8 di informazione e uno stop bit. Premesso che sono alle prime armi, volevo sapere se qualcuno ha qualche suggerimento da darmi per la conversione di questa stringa di bit in intero, soprattutto visto che il primo e ultimo bit li devo ignorare visto che sono start e stop. Qualche suggerimento??
Non ho capito come ricevi quella sequenza di dati.
Se usi la seriale sui pin 0 e 1 di Arduino UNO é il circuito che gestisce la seriale che automaticamente toglie i bit di start e stop e eventuali bit di paritá. Ricevi un numero di un Byte.
Certo che so che 8 bit sono un byte...ma la nexys me l'hanno data già programmata in modo che mi invii 10 bit per dato, compresi start e stop bit, dopo aver premuto un pulsante sulla scheda...ho collegato la nexys ai pin 10 e 11 di Arduino...quello che volevo sapere era se Arduino ignora i due bit e mi permette di gestire solo gli 8 dell'informazione...
corner86:
.ho collegato la nexys ai pin 10 e 11 di Arduino...quello che volevo sapere era se Arduino ignora i due bit e mi permette di gestire solo gli 8 dell'informazione...
Quello che stai descrivendo è il normale pacchetto dati inviato da una UART, non devi fare altro che collegare la tua Digilent alla UART di Arduino, ovvero i pin 0 e 1, devi incrociare tra loro il Tx della Digilent con l'Rx di Arduino e viceversa.
Dopo di che non devi fare altro che aprire la comunicazione seriale di Arduino con la corretta velocità di trasmissione usata dalla Digilent.
Attenzione che con il pin Rx di Arduino impegnato dal Tx della Digilent non puoi programmare Arduino, devi scollegarlo, in alternativa puoi usare la software serial che ti permette di creare una UART virtuale collegata ai pin che preferisci di Arduino, però è limitata nella massima velocità di comunicazione gestibile.