Forum: Mikrocontroller und Digitale Elektronik Baudratenfehler egal, wenn bei allen Teilnehmern gleich?


von Reinhard (Gast)


Lesenswert?

Hallo,

habe zwei Baugruppen, die über RS232 möglichst schnell kommunizieren 
sollen (Mega 16). Dummerweise habe ich 16 MHz Quarze eingesetzt, besser 
wären ja 14,7456 MHz.
Jetz ist mir eingefallen, das der Baudratenfehler doch egal sein müßte, 
da ja beide sie gleiche Abweichung haben.

Ist dem so, oder liege ich da fallsch?


Gruß Reinhard

von Ulrich (Gast)


Lesenswert?

jo müsstest du recht haben

von Reinhard (Gast)


Lesenswert?

Hallo Ullrich,

das ging ja schnell, besten Dank!

Gruß Reinhard

von Gregor B. (gregor54321)


Lesenswert?

Im Datenblatt steht ganz genau! AtMega32_Complete Seite 163 von 344. 
Examples of Boaud Rate Setting. Bei gleichen Takten wirst du 0% Fehler 
erreichen.

von crazy horse (Gast)


Lesenswert?

solange du innerhalb deines Systems bleibst, spricht absolut nichts 
dagegen, überall z.B. 127,456 kBaud zu verwenden.

von W. B. (wb1)


Lesenswert?

Ich glaube Baudreatenfehler bis 7,5% spielen keine Rolle wenn die Daten 
nicht Rücken an Rücken kommen.

von Daniel B. (und3rt4ker)


Lesenswert?

hi!

.....nur wirds blöd, wenn du mit dem PC kommunizieren willst, der nimmts 
nämlich genau.

MfG
und3rt4ker

von W. B. (wb1)


Lesenswert?

Das eintreffen des startbits löst die ganze maschinerie aus.

Der logische wert des empfangenen bits wird in der Mitte des 
dazugehörigen Taktes bestimmt. Damit ist eine gewisse Fehlertoleranz 
gewährleistet.

Liegt zwischen dem stoppbit und dem nächsten startbit eine pause die 
länger als ein baud (takt) ist, erfolt eine neusynchronisation des sio.
Der gesamte Datenrahmen kann bei startbit+8datenbit+stopbit=10bit auch 
mit einer toleranz (wenn mich nicht alles täuscht sogar 10%, siehe 
anzahl bits) übetragen werden.

Ist das beim PC nicht so?

von mehrfacher STK500-Besitzer (Gast)


Lesenswert?

>Ich glaube Baudreatenfehler bis 7,5% s

Glauben kannst du in der Kirche!
Das Thema mit den Abweichungen hatten wir hier schon öfter...

von yalu (Gast)


Lesenswert?

Die Frage ist eigentlich schon von Ulrich beantwortet worden, trotzdem
hier noch eine etwas andere Sichtweise:

Wenn du nur zwischen 16-MHz-Systemen kommunizieren willst, solltest du
gar nicht erst versuchen, eine "Standard"-Baudrate (z.B. 115200)
einzustellen und Fehlerrechnungen anstellen, sondern gleich eine exakt
darstellbare Baudrate nehmen, also bspw. 100000 oder 128000.

Das hat den Vorteil, dass du dieselbe Baudrate, die im Quellcode
steht, auch bei Testmessungen mit dem Oszi sehen oder für
Performanceberechnungen verwenden kannst.

von Reinhard (Gast)


Lesenswert?

Hallo,

besten Dank für die vielen Antworten!

Die beiden Atmegas (16 und 162) können jetzt problemlos mit 115200 Baud 
kommunizieren, allerdings hat der Mega 162 ja noch eine zweite 
Schnittstelle zum Anschluß eines Pocket PCs.
Da sind sicher nur 38400 möglich.

Auf längere Sicht werde ich die beiden Quarze doch noch austauschen.

Übrigens, bei Rowald habe ich gelesen,
http://www.rowalt.de/mc/avr/avrboard/03/avrb03.htm
das bei der Einrichtung eines Sende oder Empfangspuffers mit Bascon 
(Config Serialin und Config Serialout)zusätzlicher externer Ram 
angeschlossen werden muß.
Ist dem so, oder bezieht sich das nur auf Prozessoren ohne SRAM

Gruß Reinhard

von Peter D. (peda)


Lesenswert?

Reinhard wrote:

> Die beiden Atmegas (16 und 162) können jetzt problemlos mit 115200 Baud
> kommunizieren

Das ist Quatsch mit Soße.

Bei 16MHz sinds entweder 111 oder 125kBaud.

Der Baudratenfehler ergibt sich nicht durch den Unterschied zu 
irgendeinem Phantasiewert, sondern zwischen den Teilnehmern.

Und bei gleichen Quarz und Teilerwert ist der Fehler immer 0.


Peter

von crazy horse (Gast)


Lesenswert?

117.6k geht auch noch bei double speed, das könnte gerade noch klappen 
mit einem Standard 115,2k-Teilnehmer, knapp über 2%.
Ob der 162er den double-speed-mode hat, weiss ich nicht aus dem Kopf.

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.