PIC 16F84, Timer0, Prescaler ?

OP (Firma: Andreas Stell Funktechnik) #1482744
Lesenswert?

Wir haben für unseren Azubi ein Experimentier-Board für den PIC 16F84 
angeschafft. Die ersten einfachen Programme funktionieren, aber wir 
haben ein Problem mit dem Timer 0, Beispiel von www.sprut.de

Ich habe unten nur die Initialisierung eingefügt, wir lassen eine LED 
blinken. Das Programm reagiert nicht auf eine Änderung des Vorteilers.

Die LED blinkt immer im gleichen Takt ?


Init
; 250 Hz-Timer-Interrupt einstellen
        bsf     STATUS, RP0     ; auf Bank 1 umschalten
        movlw   B'10000100'     ; internen Takt zählen, Vorteiler zum 
Timer0, 32:1
        movwf   OPTION_REG
        movlw   D'131'          ; 256-125=131 ((1MHz : 32 ): 125 = 250 
Hz)
        bcf     STATUS, RP0     ; auf Bank 0 zurückschalten
        movwf   TMR0
        bsf     INTCON, T0IE    ; Timer0 interrupt erlauben
        bsf     INTCON, GIE     ; Interrupt erlauben

loop    goto    loop            ; eine Endlosschleife
OP (Firma: Andreas Stell Funktechnik) #1483129
Lesenswert?

Hallo John,

wir haben mit dem Scope gemessen, sie blinkt mit einer Frequenz von 250 
Hz. Das Originalprogramm kann ich erst nächste Woche anhängen.

Bei den AVR Controllern habe ich keine Programme. Wir arbeiten jetzt mit 
den PIC's, weil sie für die Prüfung (Elektroniker für Geräte und 
Systeme) verwendet werden, im Moment ist da noch der 'alte' 16F84 im 
Einsatz.

Es wird ein kleiner Konfigurationsfehler sein beim setzen der Register, 
vielleicht sind ein falsches Bit im Konfigurationsword.

Gestartet haben wir mit dem PICkit2 Starter Kit, das ist aber nicht 
geeignet für den 16F84, sondern für die neueren Typen.

Für den 16F84 habe ich dann ein Experimentier-Board K8048 von 
www.Velleman.be bestellt.

Bis nächste Woche
Andreas

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren