通过USB端口与Python的串行通信在重新连接几次后停止工作

通过USB端口与Python的串行通信在重新连接几次后停止工作,python,serial-port,usb,arduino,pyserial,Python,Serial Port,Usb,Arduino,Pyserial,我有一个简单的Python代码,通过串行端口使用串行通信连接到Arduino板 我正在使用Python库“pyserial”。它是Python2.7 我创建了一个连接,基本上是这样做的 ser = serial.Serial("/dev/ttyACM0", 115200) 在此之后,我使用serial.write向我的arduino板发送命令。我有一个自制的固件,读取命令和移动一些电机 这个代码正在运行,目前正在运行。虽然我每天都会连接和断开好几次,用我的机器人做事。我总是冲洗所有东西(串行

我有一个简单的Python代码,通过串行端口使用串行通信连接到Arduino板

我正在使用Python库“pyserial”。它是Python2.7

我创建了一个连接,基本上是这样做的

 ser = serial.Serial("/dev/ttyACM0", 115200)
在此之后,我使用serial.write向我的arduino板发送命令。我有一个自制的固件,读取命令和移动一些电机

这个代码正在运行,目前正在运行。虽然我每天都会连接和断开好几次,用我的机器人做事。我总是冲洗所有东西(串行。冲洗)。在某种程度上,它完全失败了。它似乎在连接,但没有执行任何操作。这就像在某个点上串行端口被损坏一样

一旦我重新启动电脑,一切正常

你知道我如何在不重启电脑的情况下修复它吗


拔下USB电缆不起作用。

我遇到的一个问题是没有关闭串行连接:

ser.close()
这导致python进程没有关闭并阻止对串行连接的任何访问。
这可能是因为pyserial在后台启动了一个线程,所以它可以防止进程死亡。

对此有任何后续操作吗?如果这仍然是一个问题,并且我遇到了它,我就不想被困在这种问题上。