UART Problem bei 57600 Baud

OP #2158790
Lesenswert?
• ▲
▼
Hi Leute,

ich habe ein Problem mit dem USART im ATMega168.
Er ist mit 16 MHz getaktet und funktioniert soweit ganz gut mit 9600 
Baud.
Ich möchte aber eine externe Hardware ansteuern die 57600 verlangt. Die 
Datenrate ist zwar nicht nötig, aber ich kann das nicht ändern.
Wenn ich jetzt die Baudrate auf 57600 umstelle kommen bei mir nur noch 
kryptische Zeichen an. Laut Datenblatt gibt das eine Fehlerrate von 2,1% 
was ja noch im Rahmen ist...

Zu dem speziellen Problem hab ich der Suche jetzt nichts gefunden. Das 
Datenblatt und die Checkliste hat mir auch nicht weiter geholfen.

Hier mein Init Codeschnipsel
1
#define F_CPU 16000000UL
2
#define BAUD 57600UL // Baudrate
3
#include <util/setbaud.h>
4

5
void uart_init() {
6
  UCSR0B |= (1 << TXEN0); // UART TX einschalten
7
  UCSR0B |= (1 << RXEN0); // UART RX einschalten
8
  UCSR0B |= (1 << RXCIE0); // UART RX Interrupt einschalten
9

10
  UCSR0C |= (1 << UCSZ01) | (1 << UCSZ00); // Asynchron, 8Bit
11

12
  //Baudrate setzten
13
  UBRR0H = UBRRH_VALUE;
14
  UBRR0L = UBRRL_VALUE;
15
}

Habt ihr eine Idee ?

Gruß
Gast #2158798
Lesenswert?
• ▲
▼
Hi

>Er ist mit 16 MHz getaktet und funktioniert soweit ganz gut mit 9600
>Baud.
>Ich möchte aber eine externe Hardware ansteuern die 57600 verlangt. Die
>Datenrate ist zwar nicht nötig, aber ich kann das nicht ändern.

Bei 16MHz haben 57600Bd einen Fehler von 2,1%. Nicht mehr so richtig im 
grünen Bereich. Probiere mal Double Speed oder nimm einen 
Baudraten-Quart.

MfG Spess

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.