Intel 8051 Derivat: DS89C420: Timer0 Frage

Gast #110009
Lesenswert?
• ▲
▼
Hallo Leute,

ich betreibe einen DS89C420 und habe eine Frage zum Timer0.
Der uC wird mit einer Frequenz von 22118400 Hz betrieben.
Es geht mir darum, dass ich den T0 (Mode 2, 8Bit ,autoreload) zum
Erstellen eines Rechtecksignals verwenden möchte mit Bitraten von 1KBit
.. ca. 10KBit.
Alles darüber kriege ich problemlos hin, nur in meiner Bandbreite
nicht. Vielleicht rechne ich da etwas falsch, bitte überprüft meine
Rechnung:
Der Timer2 wird als Baudraten Generator für SCI0 verwendet mit 115200
KBit/s.
Also:
T2:
fxtal = 22118400 Hz

fbase2 = fxtal / (2*16) = 691200 Hz
Der notwendige Reloadwert beträgt also:
div2 = fbase2 / 115200 = 6, heißt also die SFR für T2 werden mit -6
geladen.

Nun zum T0, die fbase0 ist genauso hoch wie vom T2, ich dachte man
teilt hier durch 12 nicht durch 8. Wie kann ich diesen Teiler
beeinflussen?

fbase0 = 22118400 / 8 = 691200 Hz
div2 = fbase0 / 9600 = 72 Ok
div2 = fbase0 / 4800 = 144 ok
div2 = fbase0 / 2400 = 288 NOK


Ich sehe nun folgende Möglichkeit:
1) Statt den 8bit Timer 16Bit nehmen, aber ich kappier nicht wie ich
dann den Timerwert manuell nachladen kann (bei T0 16Bit gibt es ja kein
auto-reload, oder?)

2) Den Teiler beim Timer0 (immer noch 8) erhöhen, aber wie?

Über Tipps freu ich mich sehr! Viele Grüße
Gregor
Gast #110010
Lesenswert?
• ▲
▼
ups kleiner denkfehler: nochmal die rechnung

T2:
fxtal = 22118400 Hz

fbase2 = fxtal / (2*16) = 691200 Hz
Der notwendige Reloadwert beträgt also:
div2 = fbase2 / 115200 = 6, heißt also die SFR für T2 werden mit -6
geladen.

Nun zum T0, die fbase0 ist genauso hoch wie vom T2, ich dachte man
teilt hier durch 12 nicht durch 8. Wie kann ich diesen Teiler
beeinflussen?

fbase0 = 22118400 / (2*16) = 691200 Hz
div2 = fbase0 / 9600 = 72 Ok
div2 = fbase0 / 4800 = 144 ok
div2 = fbase0 / 2400 = 288 NOK


Also nicht 8 sonder 32. Nun, wie kann ich diesen Teiler beeinflussen?

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.