可以对RS232(Com-Port)RTS/CTS/DTR/DSR进行低电平控制?

Nil*_*nck 7 embedded winapi serial-port handshaking

我想知道是否以及如何直接从win32(旧的C-API)控制RS-232握手线.

我想与外部硬件接口,两条简单的数据线就足以满足我的需求.

那么 - 是否有一个win32 API可以让我读写四个状态行的状态?在正常的串行通信中,握手线由UART自动驱动(如果启用了硬件握手).

我记得在DOS下它是微不足道的.只需要直接对UART进行编程.这个功能在某种程度上在win32中存活了吗?

Mic*_*urr 6

您可以使用控制RTS和DTR SetCommState().您还可以设置硬件或驱动程序处理硬件流控制(CTS和/或DSR),或者您可以设置使用,SetCommMask()以便在这些信号发生变化时获取事件.

这里有一个不错的概述:http: //msdn.microsoft.com/en-us/library/ms810467.aspx

请注意,Win32串行通信API和/或驱动程序可能很挑剔,因此请准备好对线路上发生的事情进行一些调试.