Hallo TB1!
Vielleicht kannst Du meine Modifikation anwenden. Ich habe es bisher nur beim PIC18F252 ausprobiert, sollte aber bei den 12FXXX und 16FXXX auch gehen.
Um den Prescaler auszulesen benutze ich zum "togglen" das Bit im Timer0 Configuration Register, das die Triggerungsflanke ändert:
bsf T0CON,T0SE
bcf T0CON,T0SE
Während des "togglen´s" muss der TOCKI Pin in TRISA Register als Ausgang definiert werden.
Somit habe ich den Pin, das für "togglen" benutzt war, für andere Zwecke frei.
Der Register TMR0 wird in A1 und der Prescalerwert in A0 gespeichert.
Inzwischen habe ich ein fertiges ASM Programm zum Messen der Frequenz in Wiki hochgeladen:
https://www.roboternetz.de/wissen/in...ler#Interrupts
MfG
Code:
GetFreq movf TMR0,0
movwf A1
movwf FTmp
clrf ATmp
FToggle incf ATmp,1
bsf _RP0
bsf T0CON,T0SE
bcf T0CON,T0SE
bcf _RP0
movf TMR0,0
subwf FTmp,0
btfsc _Z
goto FToggle
comf ATmp,1
incf ATmp,0
movwf A0
return
Lesezeichen