mikrocontroller.net

Forum: Projekte & Code unerklärliches Verhalten beim Ändern des System-Prescalers


Autor: Roger K. (birder)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Forum,

Langsam drehe ich hier durch. Folgende Situation:
Ich versuche gerade, einen Software-UART zu bauen. Bei 9600 Baud brauche 
ich einen Timer-Interrupt von ziemlich genau 0,1ms um ein Bit zu takten. 
Nun ist es so, daß bei jeder Einstellung des System-Prescalers, der 
sonstige Code wurde nicht verändert, der Timerinterrupt immer die selbe 
Taktfrequenz bringt, während der Kontrolltakt auf PA4 immer stimmt. Nur 
beim ersten Flashen des Programms stimmte der Timer-Takt mit der 
Berechnung überein.

Meine Hardware:
Tiny44 mit Bootlader von Peter drauf,der auf PA6 und 7 arbeitet. Darüber 
will ich mir im weiteren Verlauf dann Werte auf dem Terminal ausgeben 
lassen. Die Taktpins sind PA4 mit einem Kontrolltakt aus einer Schleife 
und PA5,auf dem der Timertakt ausgegeben wird, kommen sich also nicht in 
die Quere. Nun frage ich mich, wieso sich der geänderte Prescaler nicht 
auf den Timer auswirkt. Zuletzt hatte ich, wie im Code zu sehen, den 
Prescaler nicht benutzt und trotzdem lief der Timer mit 2ms, hat sich 
also nicht geändert. Nun bin ich ziemlich ratlos. Vielleicht hat ja 
jemand einen Hinweis, was da abgeht. Ich habe mal den Code beigelegt.

mfg birder

Autor: Roger K. (birder)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hat sich erledigt. Ich muß natürlich das CLKPCE-Bit zuerst schreiben, 
danach erst den Teilfaktor. Diese Zeile ist mir beim Umkopieren wohl 
unter die Räder gekommen und ich Dussel habs nicht mal mitbekommen. 
Jetzt funktioniert es wie gewünscht und damit ist dieser Beitrag auch 
erledigt und kann gelöscht werden.

mfg birder

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.