Hallo, vielleicht kann mir jemand helfen?
Versuche vergeblich ein RF-ID12 Modul von Innovation auszulesen, geht
aber leider nicht. Über den "Seriellen Monitor" kommen div. Zeichen an,
aber leider keine Zahlen bzw. Buchstaben.
Im Datenblatt steht etwas von: Encoding (Manchester 64-bit, modulus 64).
RF-ID-Modul:
http://hcgilje.wordpress.com/resources/rfid_id12_tagreader/
Meine Frage:
Kann man das Modul nicht einfach über den Serielle Eingang (Rx)
einlesen. Oder muss man dieses Machester-Bitmuster in ein ASCII
umcodieren.
Vielleicht stehe ich momentan auf der Leitung?
Am Seriellen Monitor der Arduino-Entwicklungsumgebung kommen nach
Ausführung des Codes folgendes zu Tage:
Du hast ÿÿÿÿ gesendet!
Du hast ÿÿÿÿÿÿ gesendet!
Du hast ÿÿÿ gesendet!
Danke für die Hilfe
Mad
Anbei mein bisheriger Code:
1 | /*
|
2 | String über die serielle Schnittstelle empfangen
|
3 | */
|
4 |
|
5 | int laenge = 255;
|
6 | char empfangeneDaten[255];
|
7 |
|
8 | void setup()
|
9 | {
|
10 | // Konfig. serielle Schnittstelle
|
11 | Serial.begin(9600); //Übertragungsgeschwindigkeit
|
12 | }
|
13 |
|
14 | // the loop routine runs over and over again forever:
|
15 | void loop()
|
16 | {
|
17 | int i = 0;
|
18 |
|
19 | //Serielle Daten sind vorhanden
|
20 | if(Serial.available())
|
21 | {
|
22 | //Daten einlesen
|
23 | while(Serial.available())
|
24 | {
|
25 | empfangeneDaten[i++] = Serial.read();
|
26 | //warten zwischen den einzelenen Zeichen
|
27 | delay(2);
|
28 | }
|
29 | //Ausgabe des empfangenen Wertes
|
30 | Serial.print("Du hast ");
|
31 | Serial.print(empfangeneDaten);
|
32 | Serial.println(" gesendet!"); // println steht für Zeilenumbruch
|
33 |
|
34 | }
|
35 | //Daten in Array löschen
|
36 | ClearArray();
|
37 | }
|
38 | void ClearArray()
|
39 | {
|
40 | for(int x = 0; x < laenge; x++)
|
41 | empfangeneDaten[x] = NULL;
|
42 |
|
43 | }
|