Forum: Mikrocontroller und Digitale Elektronik baudprobleme mega8


von Christoph Peters (Gast)


Lesenswert?

ich hab nen mega8-16Mhz und auf 9600 baud läufer der auch super
stell ich den auf 2400 runter oder auf 19200 rauf kommen nur wirsche
zeichen an
für 2400:
  UCSRB = 0x00; //disable while setting baud rate
  UCSRA = 0x00;
  UCSRC = 0x86;
  UBRRL = 0xA0; //set baud rate lo
  UBRRH = 0x00; //set baud rate hi
  UCSRB = 0x98;
für 19200
  UCSRB = 0x00; //disable while setting baud rate
  UCSRA = 0x00;
  UCSRC = 0x86;
  UBRRL = 0x33; //set baud rate lo
  UBRRH = 0x00; //set baud rate hi
  UCSRB = 0x98;

auch auf pc seite im terminal hab ich die passende baudrate
eingestellt. habs mit dem selbstgeschriebenen terminal und mit dem
hyperterminal von windows getestet, aber kein erfolg

kennt jemand vielleicht das problem und kann mir helfen?
danke
christoph

von Hubert.G (Gast)


Lesenswert?

Sollte dein µC mit 16MHz laufen passt ganz einfach die Baudrate nicht
zur Taktfrequenz. Mit 9200 ist die Abweichung nur minimal drum
funktioniert es auch. Du brauchst nur ins Datenblatt schaun, dort
findest du auch die Berechnung.

Hubert

von Tobias (Gast)


Lesenswert?

solltest du den internen Oszillator verwenden Kalibrierung nicht
vergessen (OSCCAL Register), danach alles wieder im grünen Bereich

von Dirk Broßwick (Gast)


Lesenswert?

hallo,

ist zwar offtopic, aber ich habe mal mit den OSCCAL-Register gespielt
und gemerkt das man den ATMEGA8 so bis auf etwa 16Mhz (15.86Mhz um
genau zu sein) treiben kann wenn man den internen Oszilator auf 8Mhz
setzt und OSCCAL auf 0xff setzt, leider ist das datenblatt da nicht
ganz eindeutig beschrieben, auch traten bei mir die probleme mit dem
Flash und EEprom nicht auf wie erwähnt. Deshalb meine frage ob jemand
das auch schon mal probiert hat.

CA Dirk

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.