Hallo zusammen, ich wollte mal nachfragen, wie das mit der RS232 ist. Wenn mein System mit 115200Baud läuft, bedeutet das, dass ich bei 8 datenbits und einem stopbit die baudrate durch 9 teilen muss, um auf die gesendeten zeichen zu kommen? Danke und Gruß Kleini
Startbit | 8 Bit Daten | Parity ? | Stopbit Das sind 11 Bit, ohne Parity 10 Bit.
ALso das mit den 11520 Zeichen pro Sekunde ist immer noch sehr theoretisch mit einem PC, denn dazu muessten die Zeichen sofort nacheinander gesendet werden, was bei einem Betriebssystem wie Windows oder auch Linux schon mal sehr unwahrscheinlich ist. Da sind schon mal ein paar millisekunden verbraten bis das OS wieder mitspielt. Kannst also davon ausgehen, es wird auf keinen Fall schneller als 11520 Zeichen / sekunde sein. Robert
> es wird auf keinen Fall schneller als 11520 Zeichen / sekunde sein.
ganz sicher nicht, da in den allermeisten Fällen halt 11 bit, und nicht
10 bit übertragen werden.
Es würden also theoretisch maximal 11470 Byte werden. Geh mal
praktischerweise von max. 80% aus, dann bist du bei ca. 8 KByte/Sekunde
Robert Teufel schrieb: > ALso das mit den 11520 Zeichen pro Sekunde ist immer noch sehr > theoretisch mit einem PC, denn dazu muessten die Zeichen sofort > nacheinander gesendet werden, was bei einem Betriebssystem wie Windows > oder auch Linux schon mal sehr unwahrscheinlich ist. Da sind schon mal > ein paar millisekunden verbraten bis das OS wieder mitspielt. Seit bald 20 Jahren verwenden die UARTs in PCs sowohl Sende- als auch Empfangs-FIFOs, die solche "Lücken" ausgleichen können. Das reduziert auch die Interruptlast, weil ein Interrupt nur erzeugt wird, wenn der Füllstand des Sende-FIFOs beinahe leer ist (bzw. wenn das Empfangs-FIFO beinahe voll ist oder noch nicht abgeholte Daten längere Zeit darin liegen). Diese FIFOs sind beim "Klassiker" der PC-UART 16550 je 16 Bytes groß, neuere UARTs, die auch höhere Baudraten als 115200 unterstützen (und entweder als USB-Seriell-Bridge oder auf PCI/PCIe-Karten zu finden sind), können auch 128 Byte oder mehr zwischenspeichern. Der Treiber des Betriebssystemes schreibt soviele Daten auf einem Rutsch in das Sende-FIFO, wie hineinpassen bzw. liest soviele Daten auf einem Rutsch, wie im Empfangs-FIFO vorhanden sind. Damit ist es auch Betriebssystemen wie Windows schon seit langem möglich, auch über längere Zeit einen kontinuierlichen Datenstrom mit maximaler Übertragungsrate zu senden und zu empfangen. UARTs mit FIFO eignen sich nur schlecht für Übertragungsprotokolle mit byteweisem Handshake oder "Ping-Pong"-Betrieb, hier stören sie eher, als daß sie von Nutzen sind. In solchen Fällen ist es ratsam, die FIFOs zu deaktivieren. Wegstaben Verbuchsler schrieb: >> es wird auf keinen Fall schneller als 11520 Zeichen / sekunde sein. > > ganz sicher nicht, da in den allermeisten Fällen halt 11 bit, und nicht > 10 bit übertragen werden. Das variiert je nach Umfeld - für die Ansteuerung von Modems, Terminals oder Druckern ist 8n1 ziemlich verbreitet. 8e1/8o1 oder gar zwei Stopbits sind in diesen Fällen bereits exotisch.
Vielen Dank für die Antworten. Wenn ich also mit 8n1 übertrage, dann übertrage ich 1 Startbit, 8 datenbits und 1Stopbit. Wären 10 bits pro zeichen? oder wird das Paritybit auch immer mit übertragen, egal ob 0 oder 1, also 11 bit Übertragung bei 8n1? Danke nochmal an alle Gruß Kleini
Korrekt, bei 8N1 sind es pro Byte 10-Bits die schlussendlich übertragen werden. Jeder halbwegs vernünftige, moderne Mikrocontroller ist ebenfalls wie der PC in der Lage, ohne zusätzliche Pausen zwischen den Bytes zu senden. Auch hier kommt eine Art Buffer zum Einsatz, welcher allerdings meist nur ein Byte gross ist. Reicht aber mit Verwendung von Interrupts (oder DMA) und gescheiter Implementation der IRQ-Routine völlig aus.
Kleini schrieb: > oder wird das Paritybit auch immer mit übertragen, egal ob 0 oder 1, > also 11 bit Übertragung bei 8n1? Das 'n' steht für no parity, also kein Paritätsbit. Damit sind es 10 Bit pro übertragenes Byte.
ja, da konnte ich wohl nicht bis 10 zählen (1 Start + 8 data + 0 Parity + 1 stop)
>ich wollte mal nachfragen, wie das mit der RS232 ....
(RS232 hat nichts mit UART oder Protokoll zu tun)
MCUA schrieb: >>ich wollte mal nachfragen, wie das mit der RS232 .... > (RS232 hat nichts mit UART oder Protokoll zu tun) Dass die beiden Sachen nix miteinander zu tun haben, alte ich hingegen aber auch für übertrieben. Eine UART lässt sich eben über RS232 (EIA-232) realisieren. Also hat es schon was miteinander zu tun.
MCUA schrieb: > (RS232 hat nichts mit UART oder Protokoll zu tun) Das ist ungefähr so als würdest du sagen: "Reifen haben nichts mit Rädern zu tun"
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.