Forum: Mikrocontroller und Digitale Elektronik RS232 - 1.Wort (7Bit) / 2.Wort (8-Bit) Übertragung Triggern auf 2.Wort


von S. S. (Gast)


Angehängte Dateien:

Lesenswert?

Moin Moin,
ich habe eine RS-232 Schnittstelle auf der die Daten nur in eine 
Richtung übertragen werden. Dabei handelt es sich um zwei Zähler (1.Wort 
(Zähler kleiner Wertigkeit) 2.Wort (Zähler großer Wertigkeit)).
Mein Problem ist, dass das Datenwort des ersten Zählers mit 7 Bit 
Übertragen wird (siehe TEK00004) und das zweite mit 8 Bit (siehe 
TEK00003). Zusätzlich werden noch jeweils 1 Startbit und 2 Stoppbit 
jeweils übertragen.

Meine Annahme ist, dass die Schnittstelle mit 7. Bit und 2 Stopbit P. 
None betrieben wird. Bekannt ist mir dies jedoch nicht.
Der Betrieb müsste eigentlich jeweils zu einem Interrupt im zweiten 
Datenwort führen, auf den wahrscheinlich "Getriggert" wird.

Hat jemand eine Ahnung, wie diese Schnittstelle zu verwenden ist?
Die Schnittstelle soll mittels BAB760 ELTEC als Empfänger realisiert 
werden. Derzeit "verschluckt" sich aber scheinbar der Controller oder 
ähnliches.

Mein Ziel ist, die beide Datenwörter im 7 Bit Modus zu erfassen.
Das 8. Bit im zweiten Wort ist immer low (physikalisch high), dies 
ergibt im zweiten Wort einen Interrupt da dort "normalerweise" das erste 
Stopbit erwartet wird. Dieser Interrupt wird als Trigger/Flag zusätzlich 
benötigt.

Vielen Dank
Seelo2010

von ... .. (docean) Benutzerseite


Lesenswert?

was spricht dagegen beide mit 8Bit und einem Stoppbit zu empfangen?

von S. S. (Gast)


Lesenswert?

Dies führt dazu, dass das erste Datenwort falsch Interpretiert wird und 
ich kein Triggersignal zur Verfügung steht.

von ... .. (docean) Benutzerseite


Lesenswert?

kannst du diese interpretation nicht ändern? also das 7Bit das als 8Bit 
empfangen wurde wieder gerade rücken?

oder kannst du vlt. umschalten? also zuerst im 7Bit Modus das erste 
empfangen und dann umschalten auf 8Bit...

von S. S. (Gast)


Lesenswert?

Zu der ersten Version,.. (Betrieb im 8Bit Modus)
Spricht einiges dagegen.
-> Synchronisation (1. oder 2. Wort Welches ist welches?)
-> Fehlender "Trigger"
-> Theoretisch Interrupt beim Stopbit (würde sich aber wahrscheinlich in 
grenzen halten, sofern man auf 1 Stopbit runter geht)

---> Das wäre so der Plan weiter hinter Plan C g

Zum zweiten Vorschlag, leider nicht möglich, die Befehle haben einen 
SEHR kleinen zeitlichen Abstand (µs Bereich).
Befürchte das schafft keine UART.
Das wäre dann schon eher die Aufgabe für einen FPGA.

von Karl H. (kbuchegg)


Lesenswert?

Bist du sicher, dass du hier nicht

  7Bit   - 2 Stoppbit

mit

  8Bit   - 1 Stoppbit

verwechselst?

Denn ein MSB von 1 kannst du ja physisch nicht von einem Stoppbit 
unterscheiden.

Die beiden Bytes würden sich dann im MSB unterscheiden.
Ist es 1, dann handelt es sich um das erste Byte, ist es 0, dann um das 
zweite Byte.

Die 1 im MSB müsste man ausmaskieren und hat dann die beiden Byte 
svorliegen.
Das wäre sogar ein übliches Vefahren, wie man bei nur 2 zu übertragenden 
Bytes die beiden unterscheidbar macht.

von S. S. (Gast)


Lesenswert?

das klingt plausibel!
Hatte das gestern Abend bereits einmal versucht zu testen,..
jedoch bekomme ich auch dabei Fehler!

Muss noch mal schauen!
Aber das könnte die Information sein die ich gebraucht habe!

Danke

von S. S. (Gast)


Lesenswert?

Problem gelöst!
Der Wertebereich führte ZUSÄTZLICH zu Problemen die ich zu Beginn nicht 
erkannt hatte (xoff/xon und Co.) in Kombination mit dem MSB1 und der 
8Bit Variante läuft es nun!

Danke

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.