我已经使用 pyserial 几天了。然而,今天出现了一个问题。我遇到了串行写入超时。几天前,当我使用交换机时,一切正常。但是今天我换了另一个开关。然后出现串行写入超时。我没有更改任何代码,但问题实际上很严重。更严重的是,超时并不总是发生,这意味着有时我可以成功写入串行。
ser = serial.Serial( #Serial COM configuration
port='COM5',
baudrate=9600,
parity=serial.PARITY_NONE,
stopbits=serial.STOPBITS_ONE,
bytesize=serial.EIGHTBITS,
rtscts=True,
timeout=2,
writeTimeout=5
)
strInput = "show ver"
ser.flushInput()
ser.flushOutput()
ser.write(strInput.encode('utf-8')+b'\n')
我已经确定端口是COM5,交换机的波特率是9600。非常感谢您回答我的问题。
请您参考如下方法:
我最近遇到了这个问题。我发现设置 write_timeout=0 解决了这个问题(另外,不太确定为什么写超时甚至存在......)
另一个答案here暗示同样的事情:)
