Red de conocimiento informático - Problemas con los teléfonos móviles - El pin CTS detecta cambios de nivel durante la comunicación del puerto serie VC. ¿Cómo programar en MFC?

El pin CTS detecta cambios de nivel durante la comunicación del puerto serie VC. ¿Cómo programar en MFC?

Defina una variable usted mismo, como bool CTSholding=false;

if (mscomm.GetCommEvent()==3) CTSholding=true;

Pero esto habrá un problema, es decir, mscomm.GetCommEvent()==3 en realidad detecta el cambio de señal del pin CTS, es decir, CTS de bajo a alto y de alto a bajo activará mscomm.GetCommEvent()==3 .

Puedes hacer esto

bool CTSholding=false;

if (mscomm.GetCommEvent()==3)

{

if (CTSholding = false) CTSholding = true;

else CTSholding = false

}

De esta forma, el valor de CTSholding se puede utilizar para determinar el nivel del pin CTS.

La premisa de este método es que el programa de detección debe iniciarse primero y el nivel del pin CTS debe monitorearse en todo momento, de lo contrario, si la señal de onda cuadrada en CTS se agregó y luego se detectó a través de este. programa, es muy probable que el valor de nivel obtenido del pin CTS sea exactamente opuesto al valor real