Hallo Leute kann mir jemand einen Tip geben mit welchem quarz ich eine
Baudrate von 19200 am ehesten hinbekomme? Hab irgendwie bei dieser
Einstellung Probleme. Benutze einen Atmega8
Danke im vorraus für die Hilfe :-)
Hallo Huub,
am einfachsten sind folgende Frequenzen :
3,686411 und die Vielfachen davon z.B:
7.372822....11,059233...usw
@Erwin : Find ich toll, daß du alle 270 Seiten vom Datenblatt auswndig
kannst !
felack
"Für die herkömmlichen Baudraten..."
115200 Baud ist also nicht herkömmlich ?
Besser:
Für kleine Baudraten sind die Rundungsfehler bei Quarzen mit glatten
MHz-Werten oft tolerierbar.
Für herkömmliche Baudraten sind Standardquarze zu empfehlen (2,4576MHz,
7,3728MHz, 11,0592MHz usw.).
Peter
@Peter Dannegger
Najaa, hab da ´n bisserl was durcheinandergewürfelt, weil ich halt in
letzter Zeit genau für 19,2kBaud Module gebaut habe, die mit exakt 8Mhz
laufen und bei 0,2% Error von der Nominalfrequenz absolut zuverlässig
gehen. Desweiteren können sie bei dieser Frequenz auch MIDI
(31,25kBaud) mit 0% Error... Sicher ist man gut beraten, sich die
Baud-Tabellen im Datenblatt anzuschauen, wenn man weiß, was man bauen
will und welche Baudraten das Gerät beherrschen muß.
@felack
Man muß kein Datenblatt auswendig können sonder nur das
Inhaltsverzeichnis lesen können: UART -> Examples of Baud rate settings
-> übersichtliche Tabelle
@Peter
> 115200 Baud ist also nicht herkömmlich ?
Nein, ist nicht herkömmlich. Diese Baudrate wird im Hobbybereich selten
benutzt.
Gruß
Jens
Ich versteh nicht, dass die bei den AVRs noch keinen Modulator für die
Baudrate wie beim MSP eingebaut haben. Damit kann ich auch nicht
ganzzahlige Teiler recht genau erreichen.
>Fehler von -3.5%
Dennoch kommen alle Bytes nicht ohne verfälscht zu sein an. Senden
funktioniert auch.
Ich habe es mit 2 verschiedenen Rechnen ausprobiert.Ich habe keine
Fehler bei der Übertragung feststellen können.
Die Fehler der einzelnen Bits addieren sich auf, bei 3,5% Fehler
entsteht beim Stopbit bereits eine Verschiebung von 35%
Welche Baudrate-Toleranzen zulässig sind, steht im Datenblatt (mega16:
S.158). Beachten muss man, dass die Toleranz für das Gesamtsystem gilt,
also Sender UND Empfänger. Atmel ist da übrigens recht großzügig, bei
anderen mc habe ich schon Angaben zwischen 1% und 1,5% gesehen.
Stefan
Man kann auch mal das 2X Bit, oder wie das heißt, einschalten.
Dann muss man nicht durch Baud*16 sondern durch Baud*8 teilen. Kann
schon was bringen.
So beträgt bei 12MHz und 2X de Wert, der einzutragen ist, 12,021.