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
was spricht dagegen beide mit 8Bit und einem Stoppbit zu empfangen?
Dies führt dazu, dass das erste Datenwort falsch Interpretiert wird und ich kein Triggersignal zur Verfügung steht.
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...
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.
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.
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
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.