Hallo, ich habe mir das Atmel Evaluation Board und einen ATmega32 gekauft und versuche meine ersten Schritte in der Elektronik.
http://www.akagisan.de/electronic/at...ions-Board.pdf hier ist auf Seite 6 der Schaltplan
Die Taster sind, wenn ich alles Richtig verstanden habe "Active High", d. h ich brauche keine Pull Up Widerstände im ATmega aktivieren (Die Pull Down Widerstände sind ja schon auf dem Board).
Die 2 LEDs sind im Register D auf Pin 5 und 6, die Taster sind ebenfalls an Register D aber auf Pin 2, 3 und 4.
Ich habe mir, folgenden Code geschrieben, der sollte LED 1 (Pin 5) leuchten lassen solange der Taster nicht gedrückt ist, sobald der Taster gedrückt ist, soll LED 1 aus und LED 2 (Pin 6) angehen. Der Taster soll Taster 1 auf Pin 2 sein.
Aber der Taster funktioniert nicht ... ich habe die Lötstellen kontrolliert und manchmal, ganz selten und unregelmäßig scheint der ATmega auf den Tastendruck zu reagieren, aber sehr sehr selten.Code:#include <avr/io.h> int main() { DDRD = 0xF8; // entsprich 1111 1000 PORTD = (0 << 2) & (0 << 3) & (0 << 4); // eig. unnötig, aber man weis ja nie while(1){ if(PIND & 0x02){ PORTD |= (1 << 6); PORTD &= ~(1 << 5); }else{ PORTD |= (1 << 5); PORTD &= ~(1 << 6); } } }
Ich hoffe ihr könnt mir sagen wo das Problem liegt.
MfG Icon
EDIT1 : Rechtschreibfehler![]()







Zitieren

Lesezeichen