PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Probleme mit Counter ! Grundsatzfragen



Roberto
15.01.2006, 23:15
Hallo Leute

Plage mich gerade mit einem Counter herrum und der will nicht so, wie ich will :-(

Folgendes Versuchsprogramm:


$regfile = "m8def.dat"
$crystal = 8000000


'---Config für LCD -----------------
Config Lcd = 40 * 2
Config Lcdpin = Pin , Db4 = Portb.0 , Db5 = Portb.1 , Db6 = Portb.2 , Db7 = Portb.3 , Rs = Portb.4 , E = Portb.5
Config Lcdbus = 4
Config Lcdmode = Port
Cursor Off


'----Variablen ------------
Dim A As Byte
Dim B As Byte

Config Portd = Input
Portd = 255

Config Portc = Output

Config Timer0 = Counter , Edge = Falling , Prescale = 1

Enable Interrupts
Enable Timer0
On Timer0 Auswerten



Do
Loop

End

Auswerten:
Toggle Portc.4
Waitms 400
Toggle Portc.4
Waitms 400
Return


Als Versuch wollte ich mal probieren, ob die ISR überhaupt reagiert.
Dazu einen Taster an Portd.4
Leider leuchet die Led die in der ISR geschalten wird, nur alle Heiligen Zeiten :-(

???

Was macht eigentlich ein Counter genau.
Springt er in die ISR jedesmal bei einer fallenden Flanke oder nur wenn der Counter überläuft.

Ganz blicke ich da leider noch nicht durch .. :-(

Wer weis da mehr darüber und kann mir helfen ??

Roberto
16.01.2006, 00:38
Hat sich erledigt.
Bin selber drauf gekommen :-)

Grund war ein prellender Taster und das falsche setzen von Timer0
(Load timer0 ,1 )

Anscheinend springt er zur ISR erst dann, wenn er überläuft..