doofe Frage vielleicht:
Wenn eine Seite der RS232 Kommunikation (legacy) mit 600 Baud, 7 Datenbits, keine Parity und 2 Stoppbits arbeitet, und die andere Seite hardwarebedingt nur 8 Datenbits kann, kann ich dann nicht einfach das höchstwertige Bit auf "1" festzurren, und damit ein weiteres Stopp-Bit simulieren?
Also eine Seite 600,8n1 ( TX:|0x80 bzw RX:&0x7F ) und andere Seite 600,7N2
kann ich dann nicht einfach das höchstwertige Bit auf "1" festzurren,
und damit ein weiteres Stopp-Bit simulieren
Ja kannst du. UART ist "LSB first".
Empfangsseitig müssen es dann aber auch zwei Stoppbits sein, sonst fehlt dir ein inter-byte-space. Das heißt dein "Gerät" muss ein Bit mehr Platz zwischen den Bytes lassen.
Aus reiner Neugier, was ist das fuer ein Geraet?
Weil 7N2 hab ich noch nie gesehen. Diese 7Bit Sache ist heute
ja SEHR exotisch geworden und gibt es eigentlich nur bei Dingen
die schon seit 20-30Jahren existieren und da kenne ich eher sowas
wie 7E1.
Aber man lernt bei RS232/RS422/RS485 nie aus. Es ist immer ein Quell
neuer Freude wie Entwickler sich daran abarbeiten. :-D
Aber man lernt bei RS232/RS422/RS485 nie aus. Es ist immer ein Quell
neuer Freude wie Entwickler sich daran abarbeiten. :-D
Ja, und als gesteigerte Schwierigkeitsstufe wurde bei Metex noch ein bestimmter Status von RTS und DTR vorausgesetzt (Versorgung des Pegelwandlers), ohne es im Handbuch zu erwähnen.
Das ist eine bei "vernetzten" µCs aus der MCS-51-Reihe beliebte Sonderlocke, denn deren UART kennt den 9-Bit-Betrieb. Ärgerlich wirds, wenn man versucht, so etwas mit einer normalen PC-UART anzusteuern. Dann muss man nämlich das 9. Bit mit dem Parity-Bit nachbilden, also für jedes zu sendende Byte die Parity-Einstellungen der UART ändern, was den Gebrauch eines Sendefifos in der UART natürlich kategorisch unmöglich macht.
Niedrige Baudraten sind praktisch, oft völlig ausreichend und vor allem entschärfen sie Übertragungsprobleme. Die gleichen Pegelwandler, die bei hohen Baudraten à la 115200 schon nach zehn, zwanzig Meter an ihre Grenzen stoßen, können 600 Baud problemlos über hundert Meter transportieren.
2 Stopbits stellt nur den Sender auf 2 Stopbits um. Dem Empfänger reicht weiterhin, wenn er ein Stopbit erkennt (>= 0,5 Bitzeiten).
Damit vergrößert sich der Toleranzbereich beim Empfang. Bei einem Stopbit kann es passieren, wenn der Empfänger etwas langsamer als der Sender ist, daß ihm das nächste Startbit durch die Lappen geht.
7N2 ist also toleranter als 8N1, sollte bei Baudratenquarzen aber egal sein.
Es ist in der Tat ein altes Metex(Voltcraft)-me32 Multimeter, dem ich via hm-10 Modul (TI cc2541 SOC) gerne Bluetooth LE beibringen würde.
CC2541 kann nur 8 datenbit - bevor ich mir jetzt den Toolstack besorge und versuche das BLE zu verstehen, wollte ich erst mal klären, ob ich konzeptuell einen Denkfehler habe.
Vielleicht probiere ich auch erst mal ein hc-05 und das "normale" bluetooth. da gibt es dann wenigstens eine virtuelle serielle Schnittstelle.
Abschirmung muss ich mir auch noch ansehen, will ja nach Möglichkeit die Messung nicht beeinflussen.
Eine eigene Frage?
Dieser Thread ist über 3 Jahre alt.
Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.