Salve,
utilizzo il seguente lettore Rfid
http://www.seeedstudio.com/depot/125khz-rfid-module-uart-p-171.html?cPath=144_153e da quanto dice il rispettivo datasheet (
http://www.seeedstudio.com//depot/datasheet/RDM630-Spec..pdf), comunicando con l interfaccia seriale (pagina 4 del datasheet), il primo byte letto è il numero 2 decimale, i successivi 10 byte sono i codici ASCII delle cifre del TAG letto, i 2 successivi byte per il checksum e un ultimo con il numero 3 di default.
Il mio problema riguarda i 10 caratteri letti, che dovrebbero corrispondere all'ID del tag avvicinato al lettore.
Posto un esempio. Se do in pasto al lettore il tag con codice ID: 0013530444 , il lettore RFID mi riporta in seriale la seguente sequanza:
I received: 2
I received: 51
I received: 67
I received: 48
I received: 48
I received: 67
I received: 69
I received: 55
I received: 53
I received: 52
I received: 67
I received: 67
I received: 66
I received: 3
Ovviamente il primo e l'ultimo byte ricevuto mi stanno bene, perchè devono essere tali.
Il terzultimo ed il penultimo sono il checksum.
Ma i restanti 10, non mi convincono affatto. Per esempio, dato che l'ID del tag inizia per 0013... i primi 4 byte letti non dovrebbero essere 48,48,49,51... ?!?!?
Vi posto il codice con il quale leggo i valori da un Arduino ethernet R3:
int incomingByte = 0;
void setup() {
Serial.begin(9600);
}
void loop() {
if (Serial.available() > 0) {
incomingByte = Serial.read();
//stampo sulla seriale di DEBUG
Serial.print("I received: ");
Serial.println(incomingByte, DEC);
}
}
premetto poi che il codice di lettura l'ho trovato sul sito ufficiale di Arduino.. non so davvero da cosa possa dipendere tutto ciò!