我在帮一个朋友做他的电气工程项目。他正在构建一种设备,该设备将使用串行端口与某些软件通信。在windows平台(Win7)上,如何直接读写串行端口上的特定引脚?Windows有没有为这类事情公开的API?
发布于 2011-03-26 11:31:14
是的,从本质上讲,您可以使用特殊名称打开一个串行端口设备,例如COM1,并对其进行读写操作,就像对文件进行读写一样。所使用的引脚(自然)将是串行发送和接收引脚。
如果您想要控制特定的引脚,但不一定是串行方式,那么您最好使用并行端口。并口电压通常对TTL电平逻辑更友好,并且通常可以直接驱动。
更新:如果您只需要根据您的评论切换一个pin,您可以使用DTR行来实现此目的。有关如何执行此操作的信息,请参阅EscapeCommFunction函数文档。
发布于 2014-10-28 04:42:32
您可以使用WaitCommEvent函数来监控特定的引脚。假设电压变化触发CTS信号,可以是这样的
hCommn = CreateFile("COM1", GENERIC_READ | GENERIC_WRITE, 0, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);
......
WaitCommEvent(hCommn, EV_CTS, NULL);
......WaitCommEvent from MSDN
https://stackoverflow.com/questions/5440189
复制相似问题