Forum: Compiler & IDEs beim AT Mega 16 die UART Baudrate einstellen


von Gizmo (Gast)


Lesenswert?

Hallo

Ich habe mir gerade mal das Datenblatt zum ATMEGA 16 angeschaut, mit ist 
nicht ganz klar wie man die frame format des USART´s einstellt.
Ich bräächte folgendes farme format: 1 startbit, 8 Datenbits, 1 stopbit
wäre echt super nett, wenn mir jemand helfen könnte.

P.S. hat jemand von euch erfahrungen mit AT MEGA`s und MIDI ?

Gruß Gizmo

von Gizmo (Gast)


Lesenswert?

sorry hab mich beim betreff vertippt, ich meine schon das frame format 
und nicht die baudrate.

von Dirk (Gast)


Lesenswert?

Hi, ein Blick in das AVR GCC Tutorial wuerde reichen.

von Wolfgang Horn (Gast)


Lesenswert?

Hi, Gizmo,

das läuft über die Register UCSRB und UCSRC.

Such Dir hier im Forum oder unter www.avrfreaks.com Beispielprogramme 
und schau Dir an, was die tun.

Oder lad Dir den Atman-Compiler www.atmanecl.com, der hat einen 
"wizzard", wo Du eingibst, was Du möchtest, und der schreibt Dir das 
Programm in C soweit.

Ciao
Wolfgang Horn

von Gizmo (Gast)


Lesenswert?

hab mich vielleicht etwas zu ungenau ausgedrückt

mir ist klar, dass ich für 8 Datenbits nur UCSZ2 auf 1 setzen muss.
Die Problematik liegt bei der einstellung des Start und Stopbits.
Im Datenblatt steht lediglich, dass man in UCRSC durch setzten ode nicht 
bzw. nicht setzen des USBS Bits die Anzahl der stopbits einstellen kann.
Wo aber kann ich einstellen, ob ich ein Stop bit möchte oder nicht ?
das geht aus dem Datenblatt leider nicht hervor.

von Karl H. (kbuchegg)


Lesenswert?

Kein Stopbit geht nicht.
Entweder 1 oder 2

von Gizmo (Gast)


Lesenswert?

was ist mit dem Startbit ?

ist das Start bit automatisch bei jedem frame dabei oder wie läft das ?
Das ganze soll ja mal so aussehen:

1 Start bit, 8 Datenbits , 1 Stop bit

das ich ein stopbit brauche ist klar, wie man einstellt, dass man nur 
ein stopbit möchte ist auch klar. Mir geht es um das Startbit des 
Frames. Wo kann ich das Startbit konfigurieren ?

von Karl H. (kbuchegg)


Lesenswert?

Gar nicht. Das Startbit ist obligatorisch und notwendig
damit sich Sender und Empfänger synchronisieren können.

Wie soll der Empfänger ansonsten unterscheiden können,
ob da auf der Leitung jetzt noch Idle Pegel anliegt
oder ob das schon eine logische 0 ist.
Der Sender zieht die Sendeleitung für die Dauer eines
Bits auf negativ um dem Empfänger anzuzeigen: jetzt gehts los.

von Gizmo (Gast)


Lesenswert?

Danke schön. werde das ganze jetzt mal testen.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Du brauchst übrigens dafür auch gar nichts erst einzustellen, da
das Format mit 8 Datenbits und einem Stopbit das gängigste
asynchrone Frameformat überhaupt ist und daher bereits voreingestellt
bei allen AVR-USARTs.

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.