-
-
Versuchs mal so (ungetestet):
main:
bcf INTCON, T0IF ; Clear INT-Flag
movlw D'245' ; Timer preload
movwf TMR0
movlw B'00000000' ; port b auf "00000000"
movwf PORTB
loop:
BTFSC INTCON, T0IF ; Counter-Overflow?
goto port_on ; ja -> mach an
goto loop ; nein -> warten af weitere Tastendrucke
port_on:
movlw B'1111111' ; port b auf "11111111"
movwf PORTB
endlos ; und auf ewig warten
goto endloos ; (hier kommt was auch immer hin)
end
Das ganze funktioniert genau einmal - nach dem Einschalten ist PORTB auf "0", nach 10 (entprellten) Tastendrucken wird PORTB auf "1" gesetzt und auf ewig gewartet. Das entprellen kann man auch in Software machen.
Ich hoffe das funktioniert und macht es Dir aunschaulich.
Andreas
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen