如何在串行通信打开时检测设备何时断开连接?
How to detect when a device is disconnected while serial communication is open?
我想知道是否有一种方法可以在串行通信打开时检测设备的物理断开连接?是每次发送数据时都编写try-except代码的唯一方法吗?
使用 pyserial isopen() return 布尔值是否打开。
导入序列
ser = Serial.Serial("your serial info")
Ser.isOpen()
没有标准的方法来检测串行设备是否连接到 RS-232、RS-422 和其他串行接口 - 可能会有例外,但我不知道。对于 RS-232,能够接收和发送的最低要求电线是接地、TX 和 RX。对于 RS-422 或 RS-485 等差分串行接口,不需要接地。如果您对所连接设备的行为有所了解,那么您可以使用它。就像您希望对发送的命令做出某些响应,或者以某种方式设置 RS-232 标志。
我想知道是否有一种方法可以在串行通信打开时检测设备的物理断开连接?是每次发送数据时都编写try-except代码的唯一方法吗?
使用 pyserial isopen() return 布尔值是否打开。 导入序列
ser = Serial.Serial("your serial info") Ser.isOpen()
没有标准的方法来检测串行设备是否连接到 RS-232、RS-422 和其他串行接口 - 可能会有例外,但我不知道。对于 RS-232,能够接收和发送的最低要求电线是接地、TX 和 RX。对于 RS-422 或 RS-485 等差分串行接口,不需要接地。如果您对所连接设备的行为有所了解,那么您可以使用它。就像您希望对发送的命令做出某些响应,或者以某种方式设置 RS-232 标志。