Hallo Leute. Ich habe noch ein Verständnisproblem mit dem RFID Tag und dem Lesen eines solchen. Woher weiß der Microcontroller, wann das übertragene Paket beginnt und endet? Bei DCF 77 ist es ja die lange "Stille" bei der 59ten Sekunde. Aber der Tag kommt doch in das RF-Feld und beginnt zu senden. Macht der das genau einmal, oder mehrmals mit einer bestimmten Bitfolge als Referenz? Irgendwie bin ich aus den bis jetzt gefundenen Dokumenten noch nicht wirklich schlau geworden. Ich such zwar weiter, aber Rückendeckug von euch wäre super. Danke.
Hi Marco, Das kann man nicht so genau sagen. Es gibt RFID-Tags, die lediglich ein bit senden ("bin da", wie bei Diebstahlschutz), dann gibt es welche die senden richtig Daten. Mal so zur kurzen Info: http://www.rfid-handbook.de/german/chipkarten.html Üblicherweise haben die Tags ne Adresse, über die der Master abfragt. Da gibt es dann Kollisionsdetektion und -vermeidung. Dann liefern sie dem Master die angeforderten Daten. Wie sie das machen hängt nun wieder davon ab, welche Kodierung eingesetzt wird. Du siehst: schwierig zu sagen. Günther
Ich habe mir das Datenblatt vom EM4102 Glastag angeschaut und denke mal, dass ich dass ganze so zu verstehen habe, dass am Anfang 9 Bits "1" sind und das letzte Bit 0. Insgesammt sind es 64 manchestercodierte Bits.... ich werde es herrausfinden :-). Sollte ich was erreichen, werde ich es hier vielleicht noch reinstellen... bei Interesse.
Hab diese Woche ne Low-Level Routine für den EM4102 geschrieben :) Leider für die Firma, somit kann ich es nicht veröffentlichen, aber der EM4102 ist recht einfach. Wie do schon gemerkt hast, kommt vor den 9 Header Bits ne 0. Somit schaust du einfach mit einem Timer nach ob das Eingangssignal länger als 256µS lang gleich bleibt (das bedeutet das ein logischer Pegelwechsel stattgefunden hat). Folgen auf diesen "Trigger" 18 Pegelwechsel (jeweils <=256µS), ist der Header gefunden.
Oder Du fragst in der Manchesterroutine einfach auf 9 Einsen ab, danach kommen dann die gültigen Daten. Das ist zuverlässiger, als direkt auf eine reine Zeitspanne abzufragen, da sich die Breite der Bits je nach Entfernung zu Antennenspule und der Stärke des induzierten Feldes leicht ändern können (Erfahrung).
Irgendwo muss man aber ne Zeit abfragen. Man muss ja erkenne ob ein kurzer Wechsel kommt (logisch 0 folgt auf 0 bzw. 1 folg auf 1) oder eine lange Impulsdauer kommt (logisch 0 folgt auf 1 bzw. 1 folgt auf 0). Das muss ja nicht 100%ig sein. Es muss halt ein "Fenster "getroffen" werden.
Jörg, das ist richtig - wie sonst willst Du die Manchesterdekodierung machen? Tip: programmiere einen Timer so, daß er Dir ein Fenster schafft, daß etwa 90% bis 110% des kurzen Pegelwechsels beträgt. Paßt Dein empfangener Bitstrom da hinein, ist alles okay, wenn nicht, kommen eh nur Fehler oder Dein Transponder ist bereits außer Reichweite.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.