使用TI Chronos在Python中打开端口时出错

问题描述

| 我正在尝试从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.
为什么拒绝访问?我是系统管理员代码有问题吗?     

解决方法

我想到了。这很简单。 我只是在“设备管理器”窗口中禁用了COM端口,然后再次启用了它。     ,此类错误的最常见来源是该端口已被某个其他应用程序打开,或者经常被您的代码的先前(已执行,但被杀死)实例打开。 为了检验这个假设,最简单的方法是运行其他程序,在遇到错误时打开相同的端口(例如,超级终端)。如果也失败,请尝试查找谁在握住端口。 另外,Portmon是调试串口类似问题的有用工具。     ,还会导致“访问被拒绝”错误的另一种情况: 实际上,将端口权限设置为拒绝普通用户访问!一些系统管理员出于充分的原因锁定端口,因此只有具有管理员权限的用户才能访问。 最简单的解决方法是以管理员身份运行cmd.exe。请参阅在Windows 7、8或10中从运行框以管理员身份运行命令 摘要:Win + R,\“ cmd \”,Shift + Ctrl + Enter \“对我有用!\”(tm)     ,有时端口会被阻塞。 尝试重新启动系统。它为我工作。     ,以管理员身份从cmd运行
python
也对我有用。 跑步: 在搜索中键入cmd 右键单击并选择以管理员身份运行     ,我今天在Jupyter Notebook中遇到类似的错误,并设法通过Anaconda Navigator打开Jupyter Notebook而不是通过Anaconda Prompt打开它来解决了这一问题。     

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...