Hallo zusammen...
ich arbeite mich durchs AVR Tutorial durch und versuche nun mit Ein- und
Ausgängen eines ATMEGA8515 etwas zu experimentieren.
...das ganze auf dem STK500
eine simple Aufgabe, aber irgend was mache ich wohl falsch?!
Port A sind alles Eingänge, mit den Tastern verbunden und PortB alles
Ausgänge mit LED's verbunden.
Mein code:
1 | DDRB=0xFF; // alle pins des Port B als Ausgang setzen
|
2 | DDRA=0x00; // alle Pins des Port A als Eingang setzen
|
3 | PORTA=0xFF; // Pull Up wiederstände an Eingang A aktivieren
|
4 |
|
5 | while(1)
|
6 | {
|
7 | if (PINA & (1<<PINA0)) {
|
8 | PORTB|= 0x00;
|
9 | }
|
10 | else {
|
11 | PORTB|= 0xFF;
|
12 | }
|
13 | }
|
14 | return 0;
|
15 |
|
16 | }
|
nach dem Reset leuchten alle LED's, das geht...
durch drücken des Tasters an PinA Bit 0, wird dieser Low und alle Bits
des PortB werden 0 gesetzt... geht soweit...
lässt man den Taster wieder los bleiben die LED'sb aber Dunkel! wieso?
diese sollten doch wieder leuchten, da die if bedingung wieder erfüllt
ist...
Hat jemand einen Tipp?
Danke und gruess
Hanns