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)
|