maximale Baudrate 32MHz

OP #2550172
Lesenswert?

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
#2550192
Lesenswert?

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.
Gast #2550236
Lesenswert?

>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
Gast #2551239
Lesenswert?

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
Gast #2551249
Lesenswert?

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 :-)
#2551426
Lesenswert?

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.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren