UART Baudrate 460800 Atmel328P / Arduino Uno

OP #4535900
Hallo,

ich möchte mein Arduino Uno mit einer Baudrate von genau 460800 
betreiben. Serial.begin() lässt zwar Werte bis 2.000.000 zu, jedoch ist 
die tatsächliche Baudrate bei 500.000, wenn man Serial.being(460800) 
angibt. Kennt hier jemand eine Lösung oder weiss, was ich falsch mache?

Danke!
Gast #4535920
Hallo,

was steht im Datenblatt eines atmega328p ?
Warum fragst Du dich nicht selbst ?

Richtig geht nicht !

16Mhz/16/2 = 500.000 Bit/s
16Mhz/8/4 = 500.000 Bit/s
16Mhz/8/5 = 400.000 Bit/s
#4535928
Da es den Arduino, soweit mir bekannt, nicht mit Baudratenquarzen gibt, 
würde ich mir (vorher) ganz genau überlegen, und auch im Handbuch 
nachschlagen, was da machbar ist.
Bei niedrigen Übertragungsraten ist das oft kein Problem. Aber an den 
Grenzen muss man den Fehler, der bei der Teilung entsteht, im Auge 
behalten.
#4535936
460800 Baud kannst Du mit den üblichen Baudratenquarzen erzeugen, z.B. 
mit 14,7456MHz.
In 8051 Schaltungen hat man daher häufig 11,0592MHz als CPU Takt 
verwendet.
Quarze mit ganzzahligen MHz-Werten nimmt man vorzugsweise für den 
CAN-Bus.
Allen anderen Anwendungen ist die Quarzfrequenz völlig schnurz.
OP #4535942
Danke für die schnelle Antwort.
Es sollen nur 8 ASCII Zeichen übertragen werden, evtl. geht es daher mit 
einer höheren Fehlerrate.
Wäre die richtige Herangehensweise den Quarz am Uno gegen einen anderen 
zu wechseln, um auf die 460800 zu kommen? Oder was sollte ich am besten 
machen?
OP #4535945
Merci, da waren die Antworten jetzt schneller als meine Frage / Beitrag. 
Ich versuchs dann mit einem anderen Quarz :D

Wenn ich mir den 14,7456MHz Quarz draufklatsch, gibts dann Probleme beim 
Flashen mit der Arduino IDE?
Gast #4535981
Vermutlich gibt es keine Probleme. Allerdings musst du bedenken dass 
alles was genaue Zeiten braucht etwas langsamer läuft 
(Software-Verzögerungen, UART-Baudrate, u.ä.), denn die Arduino-IDE 
denkt es wäre ein 16MHz Quarz angeschlossen.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 10 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.