Puerto serie en marco compacto: RTSEnable y DtrEnable
-
03-07-2019 - |
Pregunta
¿Cómo se utilizan RTSEnable
y DtrEnable
? Estoy encontrando que algunos balances pueden comunicarse con mi aplicación, pero otros no pueden hacerlo aunque la configuración coincida. (Velocidad en baudios, paridad, bits de datos, bits de parada y protocolo de enlace)
La configuración del puerto serie se guarda en el archivo de configuraciones y la idea es admitir diferentes combinaciones de las configuraciones posibles, si es necesario. Normalmente, nuestros dispositivos están programados para tener handshake = NONE
, pero en caso de que algún dispositivo extraño no pueda tener handshake = NONE
, debería insertar una condición como:
if (serialport.Handshake != NONE) {
serialport.RTSEnable = true;
serialport.DtrEnable = true;
}
O, mejor dicho, ¿funcionarán otros handshakes (que no sean NONE
) sin que RTSEnable
y DtrEnable
estén configurados en true
?
Solución
El hecho de que se requiera o no el handshaking de hardware se basa únicamente en el dispositivo serie al que se está conectando. Tendría que leer las especificaciones del OEM para el dispositivo y ver si el dispositivo necesita una solución y si necesita un manejo especial de RTS o DTR.