Hallo,
vermutlich bin ich einfach zu ....
Ich spiele ein bisschen mit dem Timer 1 und dem Bascom Simulator rum und will mit ICP1 den aktuellen Timerwert aus Timer1 auslesen, also
Code:
$regfile = "M32def.dat"
'Disable Jtag
Mcusr = &H80
Mcusr = &H80
'Timervariablen
Dim Timer_capture As Word
'Capture Interrupt
On Capture1 Cap_int
'Timer Config
Config Timer1 = Timer , Capture Edge = Falling , Prescale = 1
' Interrupts starten und freigeben
Enable Capture1
Enable Interrupts
'Testroutine
Do
Print "testroutine"
Loop
End
' Timer1 Capture Interrupt Routine
Cap_int:
Timer_capture = Capture1
Print Timer_capture
Return
Problem:
Timer1 zählt so wie gewollt,
beim ICP1 Interrupt wird in die Routine gesprungen,
aber die Bascom Variable CAPTURE1 ist und bleibt immer NULL.
Ausprobiert hab ich es mit V1.11.7.4 und V1.11.7.7.
Fehlt was oder ist es ein BUG im Bascom Simulator?
Das Capture Beispiel aus dem ROWALT Buch zeigt den gleichen Effekt.
Ciao,
Werner
Lesezeichen