某设备的DB9界面如下,通过一根接口线与PC的串口相连:6为信号,7为参考地,现要求PC给6脚一个高电位信号(>+5V),并保持1秒。请给出尽量简洁的C语言示范代码(只需要考虑windows2000平台即可)(请只用尽量简单的WindowsAPI接口,即只需要Windows2000就可以运行。有人说可用IOCtrl)。┌—————I
│ I
│1 ○ I
│ 6 ○ │Signal
│2 ○ │
│ 7 ○ │GND
│3 ○ │
│ 8 ○ │
│4 ○ │
│ 9 ○ │
│5 ○ │
│ I
│ I
└—————I
│ I
│1 ○ I
│ 6 ○ │Signal
│2 ○ │
│ 7 ○ │GND
│3 ○ │
│ 8 ○ │
│4 ○ │
│ 9 ○ │
│5 ○ │
│ I
│ I
└—————I
另外 6脚为DCE就绪信号,7脚为请求发送信号。直接产生行吗??
status = TIOCM_DTR;
ioctl(dev, TIOCMSET, &status);我没有编过底层程序,不知道在Windows下如何处理?试了一下
SetCommState 和
EscapeCommFunction对DTR进行置位,但不起作用。
http://expert.csdn.net/Expert/topic/2870/2870334.xml?temp=.9661829
得到解决。