Gast
#272895
Hallo, hatte vor einiger Zeit mal ein ähnliches Problem geschildert aber ich kam zu keinem Ergebnis. Hier mal eine genaue Beschreibung. Hoffe jemand kann helfen. Also das Problem ist folgendes: simples Taster Abfrage Programm, wo z.B. eine LED leuchten soll, wenn ein Taster gedrückt ist. Das Problem: immer wenn ein Taster gedrückt ist verhält sich der atmega so als ob man Reset drücken würdest und schaltet sich komplett ab. lässt man den Schalter los, so läuft alles wieder aber das Programm laeuft von neu ab. Was ich bis jetzt gemacht habe: -> man denkt zuerst an einen falsch definierten interrupt. Aber habe alles mal für den Port (PIN: PE6 = INT6) in die ISR geschrieben hat immer noch nicht funktioniert. Habe dann mit cli(); alle Interrupts ausgeschaltet. Problem blieb unverändert. -> habe dann ein einfaches Programm wie dies hier geschrieben (ohne jegliche Interrupts) zum Taster abfragen: #include "main.h" int main (void){ DDRE &= ~(1<<PE6); while(1){ if ( PINE & (1<<PINE6)) { Debug("Test1); } else { Debug("Test2); } } return 0; } // main Problem gleich geblieben!!! ->habe es an Port PE7 probiert. Gleiches problem. ->habe neuen Schalter benutzt und ihn an den nicht Interrupt fähigen Port PC2 probiert. Immer noch nix!!! -> habe in das Forum avrfreaks.net geschrieben. Alle denken da an Interrupts aber irgendwie glaube ich nicht mehr daran... Naja jetzt weiss ich nicht mehr weiter. Hast jemand vielleicht eine Idee was ich mal probieren sollte? Vielen Dank Alex
