Hi ich möchte mit dem Entwicklungsboard EVK1101 für den AT32UC3B0256 über die USART im RS485 mode daten vomRS485 Bus einlesen und anschließend auch Daten senden können. dazu habe ich an die USART einen ISL3172 angeschlossen, der die Pegelwandlung und die verarbeitung der Richtung macht. An die Enable Pins DE und RE habe ich das RTS-Pin des Kontrollers angeschlossen. im Datenblatt vom AT32UC3B0256 S.314 steht: The RTS pin is at a level inverse to the TXEMPTY bit. Significantly, the RTS pin remains high when a timeguard is programmed so that the line can remain driven after the last character completion. Figure 24-37 gives an example of the RTS waveform during a character transmission when the timeguard is enabled. TXEMPTY geht auf "1" wenn keine Daten mehr gesendet werden müssen(TX-Register leer) d.h. RTS geht dann auf "0" wenn der sendevorgang abgeschlossen ist. aber genau das passiertbei mir nicht! RTS bleibt durchgehend aus "1" und ich kann danach logischerweise keine Daten mehr lesen, da der ISL3172 auf senden eingestellt ist. nun meine Frage: woran liegt es, dass der RTS Pin nicht wieder auf Low geht, und was sollte ich jetzt ändern? Für eure Unterstützung wäre ich sehr dankbar! christoph
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.