在python中打开端口时出错

Jay*_*Jay 6 python port

我正在尝试从TI Chronos获取加速度计数据,当我运行代码时,我收到以下错误消息:

Traceback (most recent call last):
  File "C:\Python32\chronos_accel.py", line 50, in <module>

.

 .

   .

raise SerialException("could not open port %s: %s" % (self.portstr, ctypes.WinError()))
serial.serialutil.SerialException: could not open port COM4: [Error 5] Access is denied.
Run Code Online (Sandbox Code Playgroud)

为什么拒绝访问?我是系统管理员.这可能是代码的问题吗?

谢谢,

松鸦

Jay*_*Jay 18

我想到了.很简单,我只是在设备管理器窗口中禁用了COM端口并再次启用它.


Eli*_*sky 17

此类错误的最常见来源是端口已被某些其他应用程序打开,或者经常由您的代码的先前(已执行但被遗忘)实例打开.

要测试这个假设,最简单的方法是运行一些其他程序,当你收到错误时打开同一个端口(例如Hyperterminal).如果它也失败了,试着找出谁在拿着这个端口.

此外,Portmon是调试串行端口类似问题的有用工具.