Bonjour a tous.

Je suis en train de mettre au point une liaison série type RS232.

J'ai fait des tests sans le handshaking tout va bien mon appli Visual C++ fonctionne et je reçois bien les octets dans le récepteur.

Je veux utiliser le handshaking RTS/CTS.

j'initialise mon port comme ca :

dcbMaster.BaudRate = m_dwBaudRate;
dcbMaster.Parity = NOPARITY;
dcbMaster.ByteSize = 8;
dcbMaster.StopBits = ONESTOPBIT;
dcbMaster.fRtsControl = 2;
dcbMaster.fOutxCtsFlow = 1;

Avant le premier octet, RTS passe de 1 à 0. Je fais passer CTS de 1 à 0.

Le problème est de suivant, RTS ne remonte JAMAIS. Je m'attends a ce qu'il remonte après chaque octets envoyé.
Dans la doc de msdn il est dit :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Enables RTS handshaking. The driver raises the RTS line when the "type-ahead" (input) buffer is less than one-half full and lowers the RTS line when the buffer is more than three-quarters full. If handshaking is enabled, it is an error for the application to adjust the line by using the EscapeCommFunction function.
J'ai donc essayer de changer la taille du buffer avec la fonction "SetupComm" ca ne change rien. les modifications entrainner par "setupcomm" n'apparaissent même pas quand je fais un "GetCommProperties".

Avez-vous une idée??

Nicolas