Habe gerade bei Pollin einen Panasonic Chip- und Magnetkartenleser gefunden http://www.pollin.de/shop/detail.php?pg=Ng==&a=NDc0ODcyOTk=&ts=40 hat sich schon jemand damit beschäftigt und es zum laufen gebracht ? Die Daten sollen Seriell auslesbar sein. Grüße Chris
Das ist ein Standard Magnetkartenleser, dazu findet sich einiges (z.B. auch bei Pollin selbst, oder hier: http://www.elektor.de/jahrgang/2000/juni/magnetkarten-leser.60168.lynkx) Die Daten stehen als Takt + Daten zur Verfügung. Man muss sie also nur einsammeln und anzeigen.
Du kannst ja mal meine Testversion versuchen. Für ATmega32 mit 16 MHz Ohne jede Garantie ;-) Werner
@Werner: Ich nehme an du hast auch eine kleine Schaltung aufgebaut, falls du zufällig den Schaltplan hast wäre es nett den hier abzudrucken. Danke, Chris
Für diese simple Belegung habe ich keinen Plan gemacht. Alles einfach dem Quellcode auszulesen
1 | #define RDPORT A /* Magnetkartenleser belegt Port/Pin A */ |
2 | |
3 | #define RDT3BIT 2 /* PA2 = Track 3 Daten */ |
4 | #define RCL3BIT (RDT3BIT+1) /* PA3 = Track 3 Takt */ |
5 | |
6 | #define RDT2BIT 4 /* PA4 = Track 2 Daten */ |
7 | #define RCL2BIT (RDT2BIT+1) /* PA5 = Track 2 Takt */ |
8 | |
9 | #define RDT1BIT 6 /* PA6 = Track 1 Daten */ |
10 | #define RCL1BIT (RDT1BIT+1) /* PA7 = Track 1 Takt */ |
11 | ...
|
OK, so beim nachlesen... Ich geb zu. Doch nicht sooo übersichlich...
1 | /* ############# "Card Detect" and "Card Loaded" signals ######### */
|
2 | #define PH1P RDPORT /* ist PINA/PORTA (siehe Oben */ |
3 | #define PH1B 0 /* PA0 - an ... */ |
4 | #define PH2P RDPORT /* dto. */ |
5 | #define PH2B 1 /* PA1 - an ... */ |
6 | |
7 | |
8 | /* ############# Eject Selenoid ############# */
|
9 | #define SLNDP C /* Auswurfmagnet an PC0 */ |
10 | #define SLNDB 0
|
11 | |
12 | /* Telefon-Chipkartenleser */
|
13 | #define READER_IO B /* PINB/PORTB */ |
14 | #define VCC_BIT 0
|
15 | #define RESET_BIT 1
|
16 | #define CLOCK_BIT 2
|
17 | #define DATA_BIT 3
|
Und nachdem ich das mit dem Pollin AVR Board V1.0 (v1.0, nicht v2.0x) getestet habe, gibt es nich zwei LEDs auf dem Board an PORTD.5 und PORTD.6.
1 | /* Temporary use */
|
2 | /* ------------- */
|
3 | #define LED_INIT DDR(D) |= ((1<<5)|(1<<6));
|
4 | #define LED1(v) do { if(v) PORT(D) |= (1<<5); else PORT(D) &= ~(1<<5); } while(0)
|
5 | #define LED2(v) do { if(v) PORT(D) |= (1<<6); else PORT(D) &= ~(1<<6); } while(0)
|
Klaro, die Belegung der Kartenleser war mir schon klar, das hast du ja auch gut kommentiert. Aber dass du das Pollin AVR Board benutzt hast wußte ich zB nicht. Ist aber hilfreich zu wissen, weil du ja zB das UART benutzt. Danke, ich denke so komme ich weiter. PS.: Was hast du denn mit dem auswurfmagneten gemacht, direkt am AVR? Stand da nicht was im Datenblatt von 1A? Oder sitzt der Transistor dafür auf dem Leser?
> PS.: Was hast du denn mit dem auswurfmagneten gemacht, direkt am AVR? > Stand da nicht was im Datenblatt von 1A? Oder sitzt der Transistor dafür > auf dem Leser? Einfach mit PORTC.0 ansteuern. Wenn dann der AVR neu startet war das Netzteil zu schwach ;-) Gruss Werner
ok, also sitzt der transitor im leser. Klar, das Netzteil muss 1A+x liefern ;-) Konntest du denn bisher schon sinnvolle Ergebnisse mit dem Leser erzielen? Bin mal gespannt, in den nächsten Tagen wird meine Bestellung wohl ankommem, hatte ihn einfach mal mitbestellt ;-)
Konnte bisher alles lesen. z.B. meine Kreditkarten, Frequent Flyer, EC Karte, eine alte Telefonkarte (1995 abgelaufen), ... Bei vielen Karten wird allerdings nur Spur3 verwendet. Also nicht wundern. Viel Erfolg Werner
ja schonmal gelesen, gab mal nen artikel in der CT. Hast du ein speziellen Programm zum auswerten der Daten oder einfach ein Terminal?
Wow, das Ding tuts ja echt. Zuerst kam ein "kaputter" von Pollin, konnte nichts lesen, kein mucks. Heute kam dann der Ersatz, perfekt. Bankkarte, Kinokarte, Kreditkarte, Telefonkarte... nette Bastelei ;-)
Hat mal einer noch das Datenblatt ? Ich hab das verpasst zu downloaden. Danke. Gruß Andreas
... findet man auf der Pollin-Seite unter service/downloads. Im alten Jahr noch eine gute Tat (s. Anhang). Guten Rutsch! Rainer
Danke Rainer, da hab ich noch nicht geschaut. Gutes Neues Jahr. Gruß Andreas
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.