Flowcontrol auf der seriellen Schnittstelle
-
Hi,
kann mir jemand den Unterschied zwischen den drei möglichkeiten:m_dcb.fRtsControl=RTS_CONTROL_ENABLE
m_dcb.fRtsControl=RTS_CONTROL_HANDSHAKE
m_dcb.fRtsControl=RTS_CONTROL_TOGGLEbei der Initialisierung einer seriellen Schnittstelle erklären?
Einstellen kann ich im DCB ja nur eines davon.
Wenn meine Verbindung RTS/CTS als flowcontrol benötigt, welche Einstellung ist dann die richtige?
-
Das musst doch Du wissen, was Dein gegenüber will...
I.d.R. wird "RTS_CONTROL_HANDSHAKE" als "Flow-Control" bezeichnet. Was es bedeutet solltest Du ja aus der Doku entnehmen können, oder?
i.d.R. sollte man dann auch "DTR_CONTROL_HANDSHAKE" verwenden...
-
Das sollte ich schon wissen,...
Also Auszug aus der doku des Gerätes:
A correct serial communication between host and printer is only granted with an
serial connector including handshake (RTS / CTS) and a handshake-operating host.Ich nehme also RTS_CONTROL_HANDSHAKE an. Der Unterschied zu RTS_CONTROL_TOGGLE ist mir trotzdem nicht klar, auch wenn ich die MSDN Seite dazu schon zweimal gelesen habe.
RTS_CONTROL_TOGGLE würde, wenn ich es richtig verstanden habe, genauso wie auch RTS_CONTROL_HANDSHAKE auf die RTS Leitung achten, und den Datentransfer stoppen, bis der Client wieder bereit ist, Daten entgegen zu nehmen.Von Dtr/Dsr steht in der Doku nichts, DTR_CONTROL_xxx ist dementsprechend disabled.
Wozu dann die unterschiedlichen Werte bei RTS_CONTROL_xxx