Hallo in die Runde! Eine kurze Frage meinerseits zum Receiver Timeout der USART-Schnittstelle im STM32F03x (u.a.) Ich möchte die Funktion gerne für die Erkennung der 3.5 Zeichen für Modbus RTU verwenden (was ja auch im Ref.Manual RM0091 unter 27.5.8 explizit aufgeführt wird). Was mir noch unklar ist, wie berechnet sich der Wert im RTOR Register? "The value corresponding to a timeout of 2 character times (for example 22 x bit duration) must be programmed in the RTO register." oder auf Seite 745: "This bit-field gives the Receiver timeout value in terms of number of bit duration." So weit so schön, aber in welcher Zeiteinheit muss die Bitlänge eingesetzt werden? Oder werden nur die Anzahl der Bits eingetragen und der Zähler läuft mit 1/Baudrate? Ich danke Euch für einen Tip im Voraus! Gruß, Andreas
Andreas S. schrieb: > Oder werden nur die Anzahl der Bits eingetragen und > der Zähler läuft mit 1/Baudrate? So sehe ich es auch.
Es ist wieder auf "Versuch macht klug" hinausgelaufen... Mit einem RTOR von 28 erhalte ich ein Delay zwischen Stopbit und Interrupt von rd. 3,3ms. Was ziemlich genau 3,3 Zeichen bei 9600baud entspricht. Also RTOR ist in Anzahl der Bits anzugeben.
Es ist wieder auf "Versuch macht klug" hinausgelaufen... Mit einem RTOR von 28 erhalte ich ein Delay zwischen Stopbit und Interrupt von rd. 3,3ms. Was ziemlich genau 3,5 Zeichen bei 9600baud entspricht. Also RTOR ist in Anzahl der Bits anzugeben.
Es sind Bit-Längen ab dem letzten Zeichen, die da angegeben werden.
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.