我想知道是否有一种方法可以在串行通信打开时检测设备的物理断开连接?是每当发送数据时编写除尝试代码的唯一方法吗?
答案 0 :(得分:0)
使用pyserial isopen()会返回一个布尔值(如果未打开)。 导入序列
ser = Serial.Serial(“您的序列号”) Ser.isOpen()
答案 1 :(得分:0)
没有检测串行设备是否连接到RS-232,RS-422和其他串行接口的标准方法-可能会有例外,尽管我不知道。对于RS-232,能够接收和发送的最低要求电线是地线,TX和RX。对于像RS-422或RS-485这样的差分串行接口,不需要接地。如果您了解所连接设备的行为,则可以使用它。就像您希望对发送的命令有特定的响应,或者以某种方式设置RS-232标志一样。