Forum: Mikrocontroller und Digitale Elektronik USART-Routine läuft auf ATTiny2313 nicht


von Markus Reichert (Gast)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

ich habe folgendes Problem:

Ich habe auf einem 90S2313 eine UART-Routine laufen lassen.
Geschwindikeit lag bei 9600 Baud.

Jetzt wollte ich diese auf einen ATTiny2313 exportieren und habe sie
nach dem Datenblatt angepasst.
Ich lasse den AVR mit dem internen OSC auf 4 Mhz laufen und habe somit
laut Datenblatt 0,2% Abweichung.

Jetzt die große Frage: ist das schon zu viel für manche Geräte? Oder
ist etwas an meiner Routine faul?

Wäre super, wenn mir geholfen werden könnte.

Danke + Gruß
Markus

von Markus Reichert (Gast)


Lesenswert?

ich nehme jetzt mal an, dass die 0,2% Abweichung schon zu viel sind.

In diesem Zusammenhang:

kann man 9600 Baud aus 4 Mhz gewinnen?

Oder muss man dazu einen externen Quarz nehmen, der darauf abgestimmt
ist?

von Gunter (Gast)


Lesenswert?

Hi Markus,

0,2% sind die Abweichung, die aus 4MHz Takt entstehen.
Die internerne Oszillator bringt aber einen zusätzlichen
Fehler. Bei den Megas bis 3% und selbst das nur, wenn das
Calibration Byte geladen wird.

Gunter

von Hannes L. (hannes)


Lesenswert?


von ichbins (Gast)


Lesenswert?

Hallo Markus,

hast du schon die Fuses kontrolliert. Mein letzter Tiny2313 kam mit
gesetzter CKDIV8-Fuse (Divide clock by 8).

Michael

von TravelRec. (Gast)


Lesenswert?

Die Tiny2313s kommen generell (bis auf einzelne Ausnahmen) mit gesetzter
CKDIV8-Fuse. Steht auch so im Datenbladdel.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.