Hallo

Ich habe deinen Quellcode in einem Code-Tag eingefügt, aber nicht wirklich überprüft. Die Ursache für dein Problem steckt wohl hier:

if ((PIND&(1<<6))==1)

(1<<6) ist 0b01000000 oder 64, bei gesetztem Eingang PD6 ist das Ergebniss von PIND & 64 genau 64. Ein Vergleich mit 1 ist deshalb immer false.

Wie gewünscht wird das aber trotzdem nicht funktionieren, weil der Snaketaster doch gegen GND schaltet, der Eingang also low ist, wenn der Taster gedrückt wird:

if ((PIND&(1<<6))==0) //falls der Schalter nicht gedrückt ist,

https://www.roboternetz.de/phpBB2/ze...ag.php?t=53559

Gruß

mic