Hallo allerseits, Ein Optimierungsproblem: ich würde gerne die größtmögliche Baudrate über die serielle Schnittstelle versenden und dabei die geringstmögliche Fehlerrate in Kauf nehmen. Bisher habe ich einen 32MHz Quarz verwendet. Was kann ich hier herausholen? Kann ich auftretende Fehlerraten durch Verwendung von 1,5 oder 2 Stoppbits reduzieren? mfg
Großes Fragezeichen schrieb: > Bisher habe ich einen 32MHz Quarz verwendet. Und welches IC? > Was kann ich hier herausholen? Was sagt die Formel zur Baudratenberechnung? > Kann ich Fehlerraten durch Verwendung von 1,5 oder 2 Stoppbits reduzieren? Nein.
Die Fehlerrate duch Clock-Mismatch ist im Datenblatt beschrieben. Wenn der Teiler mit Null Rest aufgeht ist man da. Das haengt auch von der Baudrate ab. Die Fehlerrate weiter zu senken geschieht mit dem Protokoll. Dabei sollte man eine Idee der auftretenden Fehler haben. Sind es Burst Fehler, oder von welchen Einfluessen auch immer. Das ganze Thema nennt sich Forward Error Correction. Im Wesentlich sendet man redundante rekonstuktions Bits mit, die es erlauben fehlende, oder fehlerhaft Bits beim Empfang zu rekonstruieren.
@ Großes Fragezeichen (112) >ich würde gerne die größtmögliche Baudrate über die serielle >Schnittstelle versenden Mit einer Standardbaudrate oder nur so schnell wie möglich? > und dabei die geringstmögliche Fehlerrate in Kauf nehmen. Dann brauchst du einen Baudratenquerz. MfG Falk
Falk Brunner schrieb: > Dann brauchst du einen Baudratenquerz. Nein, eher einen Baudratenquarz. SCNR
>und dabei die geringstmögliche Fehlerrate in Kauf nehmen.
Was ist denn bei Dir diese Fehlerrate? Ich glaub das sollten wir mal
erst klären.
- Fehlerrate: Fehler in der Übertragung -> wird durch ein schlaues
Protokoll abgefangen
- Fehlerrate: Abweichung der Baudrate von einem vorgegebenen Wert ->
Toleranzen der Bausteine beachten -> geht oder geht nicht
hm ok, zwei Folgefragen: 1) welchen Zweck hat es dann 1,5 oder 2 Stoppbits zu verwenden, wenn nicht die Reduzierung von Fehlern? 2) Wieso hängt die Übertragungsfehlerrate von dem verwendeten Chip ab?
Großes Fragezeichen schrieb: > welchen Zweck hat es dann 1,5 oder 2 Stoppbits zu verwenden, 1,5 Stoppbits ist für Fernschreiber (da ist die Mechanik bei 50 Baud einfach zu langsam). Mit insgesamt 7,5 Bits/Zeichen kommt man dann auf 400 Anschläge die Minute. 2 Stoppbits ist dann wohl analog für langsame Terminals. Damit die dann auch noch Zeit haben das ganze auf dem Bildschirm darzustellen. Gruß Anja
Großes Fragezeichen schrieb: > 1) > welchen Zweck hat es dann 1,5 oder 2 Stoppbits zu verwenden, wenn nicht > die Reduzierung von Fehlern? Nix mit Fehlerreduzieren: "Ein Startbit und bis zu zwei Stoppbit werden bei der asynchronen seriellen Datenübertragung verwendet, um dem Empfänger eine Synchronisation auf jedes übertragene Zeichen zu ermöglichen." Zitat aus Wikipedia :-)
Großes Fragezeichen schrieb: > Wieso hängt die Übertragungsfehlerrate von dem verwendeten Chip ab? Wenn der Chip ein Mikrocontroller ist, welcher über einen "fractional baud rate generator" verfügt, dann kommst Du mit den 32 MHz Takt für UART an höhere Baudraten in guter Qualität. Zumindest einige der msp430 oder lpcXXXX haben so ein Teil: - msp430g2553 kommt mit 16 MHz auf 115200 in guter Qualität - beim lpc1769 geht's angeblich sogar bis 921600 (http://knowledgebase.nxp.com/showthread.php?t=1931). Bei mir macht vorher bei 230k der USB-Seriell-Wandler schlapp. Da braucht's dann vermutlich eine "echte" serielle Schnittstelle.
Es gibt auch UART -> USB-Wandler, die mit anderen Raten zurechtkommen, wie 250kBaud oder so.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.