www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Atmega644 - USART frame format


Autor: Wimme (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute!

Ich habe ein Verständnis Problem was das Einstellen des USART (RS232) 
frame formats angeht.
Ich nutze einen Atmega 644 und AVR Studio.

Zitat aus dem Datenblatt:
"The frame format used by the USART is set by the UCSZn2:0, UPMn1:0 and 
USBSn bits in UCSRnB and UCSRnC. The Receiver and Transmitter use the 
same setting. Note that changing the setting of any of these bits will 
corrupt all ongoing communication for both the Receiver and Transmitter.
The USART Character SiZe (UCSZn2:0) bits select the number of data bits 
in the frame. The USART Parity mode (UPMn1:0) bits enable and set the 
type of parity bit. The selection between one or two stop bits is done 
by the USART Stop Bit Select (USBSn) bit. The Receiver ignores the 
second stop bit. An FE (Frame Error) will therefore only be detected in 
the cases where the
first stop bit is zero."

Also, nehmen wir mal an, dass ich einstellen möchte:
8 Datenbits, 1 Start, 1 Stoppbit und ungerades ParitätsBit.

Woher genau soll ich jetzt wissen, wie das geht?

- 8 Datenbits, sollen also im UCSZn2:0 (wofür steht 2:0?) eingestellt 
werden. Das Register gibt es im UCSR0C und UCSR0B Register. Ich denke 
ersteres ist richtig. UCSZ ist im UCSR0C lediglich 2 Bit groß. Wie soll 
ich denn da 0-8 Bits einstellen?

- Partität: Was muss ich jetzt für ungerades in UPM schreiben?

1 Startbit ist default, oder?
Ins USBSn muss vermutlich nur eine 1?

Und noch allgemein:
zB UPM0 bezeichnet Bit 5 und 6 vom Register UCSR0C. Bedeutet das 
einfach, dass UPM0 eine Konstante mit dem Wert 4 ist?

Oder warum macht anscheinend sowas hier Sinn?
UCSR0B = (1<<RXEN0)


Okay, viele Fragen. Ich hoffe ihr könnt mir schnell weiterhelfen!

Autor: oha (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
UCSZn2:0 bedeutet es gibt UCSZn2, UCSZn1, UCSZn0, das n wird ersetzt, 
denn es gibt 2 UARTs. Neben dem Text gibt es jeweils auch noch ein 
Schema, wie die bis angeordnet sind. Schau dir das mal an.

Autor: Wimme (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo und danke für deine schnelle Antwort!

Hmm..ich kann leider nur 2 der UCSZn2, UCSZn1, UCSZn0 entdecken, nämlich 
UCSZ0 und UCSZ02.

Du meinst vermutlich Tabelle 17.4 (soweit du das gleiche Datenblatt) 
benutzt. Da verstehe ich jedoch nicht, inwiefern mir das hier 
weiterhelfen kann. Das Bild zeigt für mich lediglich, wie so ein 
gesendetes "wort" aussieht. Das sagt mir doch nicht, wie ich das format 
einzustellen habe?

hm...

Autor: spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

>Du meinst vermutlich Tabelle 17.4 (soweit du das gleiche Datenblatt)

Nein, Tabelle 17-5.

MfG Spess

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.