Gast
#996882
Hallo!
Ich hab einen Taster an einen ATmega8 angeschlossen. Jetzt sollte
folgende Funktion realisiert werden:
Wenn der Taster kurz gedrückt wird, dann geht PortB.1 auf high.
Wenn der Taster länger als 2 Sek. gedrückt wird, dann geht PortB.1 auf
low.
Ich habe es so versucht:
---
...
Config Timer1= Timer , Prescale = 256
On Timer1 timerirq
Enable Timer1
Timer1 = 22336
...
Dim sekunden as byte
Main:
Do
If Taster = 0 and PortB.1 = 0 Then
waitms 25
bitwait Taster , Set
PortB.1 = 1
End If
If Taster = 0 and PortB.1 = 1 Then
waitms 25
sekunden = 0
If Sekunden < 2 Then
PortB.1 = 1
Elseif Sekunden >=2 Then
PortB.1 = 0
End If
End If
...
loop
Timerirq:
Timer1 = 22336
incr Sekunden
Return
---
Leider funktioniert das so nicht. Der Pin wird zwar angeschalten aber
das mit dem Ausschalten nach 2 Sek. funktioniert nicht.
Vielleicht hat jemand noch eine andere Idee.
Danke schonmal.
Max