Buona sera a tutti!
vi rendo partecipi del mio dramma ricevendo i dati su seriale da un
fonometro!!
allora la catena hardware è così strutturata:
Fonometro----- "connessione seriale"------->> Arduino------------>>
Vdrive2------------>> Penna usb
Il mio intento è quello di leggere i dati memorizzati nel fonometro e
memorizzarli nella penna usb
per fare questo il fonometro comunica tramite seriale, e risponde i
dati da me richiesti
Esempio: (loggato durante una fase di download con il software
originale che gira su win)
R 90[ // richiesta inviata dal pc verso il fonometro
1.5512jun1999 // risposta inviata dal il fonometro al pc ( sarebbe la
data del firmware)
R 25 // richiesta inviata dal pc verso il fonometro
08102009 23:16:16 // risposta inviata dal il fonometro al pc
( sarebbe l ora corrente)
e via così!
Quindi ho detotto che per completare il file .bin (che è il file
prodotto del download fatto dal software di serie) non è altro che un
log dei dati ricevuti ponendogli un centinaio di domande (se così
vogliamo definirle!)
a questo punto per iniziare sto creando un programmino che invii
queste domande e mi memorizzi le risposte, nel fare questo mi sono
imbattuto nella necessità di riempire un ' char buffer[18] ' con i
vari singoli byte di risposta su seriale che mi arrivano dal fonometr!
questo è il risultato:
void setup()
{
Serial.begin(9600);
}
char str0[ ] = "R 90[";
char buffer[18] ;
int inByte = 0 ;
int outByte = 0;
int pointer = 0;
void loop()
{
Serial.println(str0);
for ( int i = 0; i < 17 ; i++){
inByte = Serial.read();
while (pointer < 17) {
buffer[pointer] = Serial.read();
pointer++;
}
}
Serial.println(buffer[]);
if(outByte == 0) {
while(true) {
continue;
}
}
}
Premettendo che prima di iniziare a usare la variabile char buffer
tutto funzionava ma stampavo in loop i 17 byte di risposta singoli e
mi apparivano uno sotto l'altro nel serial monitor.
Ho fatto un errore da qulche parte ma non riesco ad uscirne
Ringrazio in anticipo chiunque sappia darmi qualche info!! Volendo
anche sulla parte di invio di questo benedetto buffer contenente 18
byte alla penna usb!!
grazie ciao!
brysky