Hallo! Ich möchte ein Programm für meinem atMega32 schreiben, dass abhängig vom gedrückten Taster, meine 8 LED's immer anders ansteuert! Dafür hab ich mal zwei case geschrieben, die je nach der Eingangskombination der Taster wechseln. Ist es möglich, dass das Unterprogramm, das ich jeweils im Case aufrufe so lange wiederholt wird, bis ich einen anderen Taster drücke? Also so eine Art "Selbsthalteschaltung"?
> _delay_ms(10); // Eine Sekunde warten...
Aha 10 Millisekunden sind also eine Sekunde? Geht's noch ;)
Gruß Jonas
Gast
#2564579
Jonas Biensack schrieb: > Aha 10 Millisekunden sind also eine Sekunde? Geht's noch ;) das pass zu: #define F_CPU 16000000UL /* Quarz mit 3.6864 Mhz */
hoppla, warte mal, das ist die Falsche Version vom Code ;)
Peter II schrieb: > Jonas Biensack schrieb: >> Aha 10 Millisekunden sind also eine Sekunde? Geht's noch ;) > > das pass zu: > #define F_CPU 16000000UL /* Quarz mit 3.6864 Mhz */ Jaaa, hab eh alles schon ausgebessert gehabt, aber nicht gespeichert^^ also könnt ihr mir helfen?
Ja du musst halt den Zustand der Taster speichern und nicht ständig neu abfragen. Gruß Jonas
Hier mal Pseudocode: //Funktion die in Endlosschleife laufen soll speichern char EndlosFunktion; // Taster speichern char taster; char = einlesenTaster(); // Funktion zuweisen if (char ==1) EndlosFunktion = 1 else EndlosFunktion = 2 switch(EndlosFunktion) case 1: mod() case 2: mod2() Gruß JOnas
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.