代码之家  ›  专栏  ›  技术社区  ›  Daniel MoÅ¡mondor

提高或降低串行端口上的RTS(C++)

  •  2
  • Daniel MoÅ¡mondor  · 技术社区  · 16 年前

    我有一段代码,可以读取串行端口CTS线路的当前状态,然后应用程序根据那个里的值进入适当的模式。

    使用此处描述的空调制解调器电缆:

    http://www.lammertbies.nl/comm/info/RS-232_null_modem.html#full

    我可以在通过空调制解调器电缆连接的其他端口上检测RTS线路。

    平台是Win32,C++,但任何信息是什么时候RTS线提高或降低将是有益的。

    3 回复  |  直到 16 年前
        1
  •  7
  •   avakar    16 年前

    看看 EscapeCommFunction .

    EscapeCommFunction(hPort, SETRTS);
    

    必须禁用硬件握手,即。 dcb.fRtsControl 应设置为除 RTS_CONTROL_HANDSHAKE 打电话的时候 SetCommState .

        2
  •  1
  •   Thomas Matthews    16 年前

    这个问题高度依赖于特定的平台,而不仅仅是操作系统。如果 RTS 线路作为输出连接到机器,然后可以提升。

    最低级别的硬件必须提供对线路的访问。一些串行接口不允许软件访问该线路,但通过H/W握手自动处理。

        3
  •  1
  •   dbasnett    16 年前

    在.Net中,它是serialport的.RtsEnable属性。