ATMega8L USART Problem

Gast #318115
Lesenswert?
• ▲
▼
Ich initialisiere den USART mit diesem Code:

        //2 Stop Bits / 8 Data Bits
  UCSRC = (1<<URSEL) | (1<<USBS) | (1<<UCSZ1);// | (1<<UCSZ0);

  //USART Options
  UBRRH = 0;
  UBRRL = 25; //Baudrate 9600kbit
  UCSRB |= (1<<TXEN); //Enable USART Transiver

Wenn ich ihn auf den µC lade überträgt er nur Fehler über der COM-Port.
Wenn ich in AVR-Studio simuliere setzt er trotz URSEL auch den UBRRH mit
und erzeugt eine falsche Baudrate. Hat jemand eine Idee woran das liegen
kann?
Gast #318118
Lesenswert?
• ▲
▼
Danke für die schnellen antworten
Ich benutze ein externes 4MHz Quarz.

Wenn ich UCSRC nicht beschreibe, also mit 5bit/1Stopbit arbeite
funktioniert er auch mit 9600 baud.
Ist das normal, dass der Simulator immer beide Register beschreibt und
nicht mit dem URSEL-Bit auswählt?
Gast #318122
Lesenswert?
• ▲
▼
Moin

Ich bin blöd ich habe immer auf die Stückliste vertraut da stand 4Mhz
drin. Auf dem Quarz steht aber richtig 3.68Mhz. Manchmal ist man so
blind wenn man sich festgefressen hat.

Wie ist das mit dem Simulator ist das Verhalten normal?
Gast #318123
Lesenswert?
• ▲
▼
Hallo,

ich bin neu hier und bis jetzt habe ich unzählige Beiträge Durchgelesen
and ausprobiert.
Es geht trotzdem nichts. :o(

Mein STK500 mit einem ATmega8 spricht über das RS232 mit mir nicht mit
der Sprach die ich benutze.
Es kommen nur Hiroglifen zurück (sehe Bild).
Das lustige mit AT90S8515 geht es.
Hat jemand eine Idee bevor ich das ganze AVR zeug aus dem Fenster
schmeiße?
Bitte.
Angehängte Dateien:
Gast #318124
Lesenswert?
• ▲
▼
Das ist nicht lustig, sondern langweilig weil der immer gleiche Effekt.
Der 8515 arbeitet mit externem Takt, er kann nicht anders. Der Mega8
kann anders und tut anders. Solange man ihm nicht beibringt, den
externen Takt zu nutzen (Fuses), arbeitet er mit einem für UART
ungeeigneten internen Takt.
Gast #318125
Lesenswert?
• ▲
▼
Hallo zusammen,

ich habe eine Frage zu der Ausgangssituation des Thread-Eröffners. Er
gibt an 2 Stopbits zu benutzen.
Für welche Datenübertragungen bringt das einen Vorteil gegenüber einem
Stopbit und warum? Und warum gibt es manchmal sogar die Möglichkeit 1.5
Stopbits auszuwählen?

Mit freundlichen Grüßen
Dumpfi
#318126
Lesenswert?
• ▲
▼
@Dumpfi

>Er gibt an 2 Stopbits zu benutzen. Für welche Datenübertragungen
>bringt das einen Vorteil gegenüber einem Stopbit und warum? Und >warum
gibt es manchmal sogar die Möglichkeit 1.5 Stopbits >auszuwählen?


Manche Geräte mir RS232-Schnittstellen (z.B. mein 10-Jahe altes DVM)
arbeitet mit solch ungewöhnlichen Übertragungsprotokoll,
muss jedesmal daran denken und alles dementsprechend anpassen   ;(

Bernhard

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.