Hallo, ich habe mal zwei Fragen zum Timing bei halbduplex RS485-Verbindungen. Ich versuche gerade eine Verbindung herzustellen und schalte den Transmitter ab nachdem das TXC-Bit 1 ist. Dabei gibt es aber Datensalat. Sobald ich Verzögerungsschleifen stattdessen in den Code einfüge funktioniert alles zuverlässig. In diversen Forenbeiträge hier liest man von ähnlichen Problemen. 1. Das TXC-Bit im UCSRA-Register (Mega8) scheint ja schon eher als der gesamte Frame über das TxD-Pin geschickt wird auf 1 zu gehen. Ist das wirklich so? Das wäre ja ein arger Bug.... 2. In einigen Beiträgen liest man, dass zum Schreiben einer Null auf das TXC-Bit eine inverse Logik benutzt werden soll. Also eine 1 schreiben statt einer Null. Stimmt das? Danke Danilo
Pollst Du das Bit oder nutzt Du den TXC-Interrupt?
> Stimmt das?
Was sagt das Datenblatt?
1 | The TXC Flag bit is automatically cleared when a transmit complete interrupt |
2 | is executed, or it can be cleared by writing a one to its bit location. |
> Ist das wirklich so?
Wozu gibt es eigentlich Datenblätter?
Hi >1. Das TXC-Bit im UCSRA-Register (Mega8) scheint ja schon eher als der >gesamte Frame über das TxD-Pin geschickt wird auf 1 zu gehen. Ist das >wirklich so? Das wäre ja ein arger Bug.... Kann ich aus eigener Erfahrung nicht bestätigen. >2. In einigen Beiträgen liest man, dass zum Schreiben einer Null auf das >TXC-Bit eine inverse Logik benutzt werden soll. Also eine 1 schreiben >statt einer Null. >Stimmt das? Ja. Steht sogar im Datenblatt. Wenn du TXC pollst und nicht weisst, wie das Bit zurückzusetzen ist, dann liegt der Bug wohl bei dir. MfG Spess
Danke Leute. ...can be cleared by writing a ONE to its bit location.... ich glaube das habe ich zu flüchtig gelesen. Probier ich heute abend gleich mal aus. Danke nochmals!
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.