Forum: Mikrocontroller und Digitale Elektronik Taster Eingang Zählen und dann ins Unterprogrann


von Bernd (Gast)


Lesenswert?

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

von STK500-Besitzer (Gast)


Lesenswert?

Wenn Timer0 eine Variable wäre, dürfte das so funktionieren.
Wenn es sich dabei um den Hardware-Timer0 handelt, geht es nicht.

von Papsi (Gast)


Lesenswert?

Genau - nimm eine andere Variable für Timer0 und vergess nicht, die 
Variable auch irgendwann wieder zurückzusetzen.

von STK500-Besitzer (Gast)


Lesenswert?

>vergess nicht, die Variable auch irgendwann wieder zurückzusetzen.

Wenn er Single nimmt und 256 Unterprogramme anspringen will, ist das 
doch egal...

von Papsi (Gast)


Lesenswert?

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
Noch kein Account? Hier anmelden.