mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik PIC 16F84, Timer0, Prescaler ?


Autor: Andreas Stell (Firma: Andreas Stell Funktechnik) (stell-xkom)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: John Bauer (johnbauer)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Initialisierung müsste soweit in Ordnung sein (Interrupt alle 4 ms 
mit 4 MHz Quarz).

In welchem Takt blinkt die LED?
Wie sieht der Rest des Programms aus?

Autor: Andreas Stell (Firma: Andreas Stell Funktechnik) (stell-xkom)
Datum:

Bewertung
0 lesenswert
nicht 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

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.