Chciałbym pomierzyć, jaki czas, a w sumie ile cykli zegara mija pomiędzy jednym przerwaniem a drugim (pomiar co drugie przerwanie). Napisałem w tym celu poniższy programik:
Config Timer0 = Timer , Gate = Internal , Mode = 1
Config Lcd = 16 * 2
Dim Tryb As Bit
Dim Cykl As Word
On Int0 Zliczaj
Enable Int0
Enable Interrupts
Enable Timer0
Cursor Off
Cls
Cykl = 0
Tryb = 1
Do
Loop
Zliczaj:
Stop Counter0
Disable Int0
If Tryb = 1 Then
- Tryb = 0
Cykl = 0
Counter0 = 0
Start Counter0
Else
- Cykl = Counter0
Tryb = 1
Cls
Lcd "Cykl = " ; Cykl
End If
Enable Int0
Return
Przerwania są na tyle szybko po sobie, że nie przepełnia się licznik. Program działa ładne w symulacji BASCOMowej, im częściej wciskam INT0, tym mniejsza wartość Cykl, ale w układzie pokazuje mi zawsze tę samą wartość (118), obojętnie co robię.
Co tu jest nie tak? Albo jak inaczej rozwiązać takie zliczanie czasu pomiędzy dwoma przerwaniami?
Z góry dzięki za sugestie