Hi! Ich hätte gern, dass wenn ich meinen Taster am Eingang drücke, das erste Unterprogramm kommt und wenn ich den gleichen ein zweites mal drücke ins nächste! Compiler ist BASCOM, µC ist der ATMEGA8 Hab schon einiges im Internet gelesen, und da hab ich mal gesehen das man das mit debounce auch realiesieren kann!Geht das?? Denn mit dem Counter ist das Resourcen verschwendung! Naja hab schon probiert das ich das mit dem counter löse aber das funktioniert nicht... Hier ist mein Beispiel:(hab vorher schon den timer auf null gestzt) Do Debounce Pind.4 , 0 , Keypressed , Sub If Timer0 = 0 Then Portb.1 = 0 End If If Timer0 = 1 Then Gosub Bpm40 End If If Timer0 = 2 Then Gosub Bpm40 End If usw... Loop Sub Keypressed: Incr Timer0 Retur Bpm40: Da soll das Programm was ausführen… Return usw... Hab echt keine Ahnung! Kann man das so überhaupt so lösen?? Vielleicht kann mir wer weiter helfen, das wäre echt sehr nett! Danke!!! Lg Bernd
Wenn Timer0 eine Variable wäre, dürfte das so funktionieren. Wenn es sich dabei um den Hardware-Timer0 handelt, geht es nicht.
Genau - nimm eine andere Variable für Timer0 und vergess nicht, die Variable auch irgendwann wieder zurückzusetzen.
>vergess nicht, die Variable auch irgendwann wieder zurückzusetzen.
Wenn er Single nimmt und 256 Unterprogramme anspringen will, ist das
doch egal...
Ich denke Du meinst ein Byte (0-255) Glaube aber kaum, das er 255 Sachen schalten will :-)
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.