首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python Python串行通信WindowsError(5)

Python Python串行通信WindowsError(5)
EN

Stack Overflow用户
提问于 2013-11-08 00:05:24
回答 1查看 2.2K关注 0票数 0

我正在使用pyserial将我的python代码与arduino连接起来。当我运行我的python代码时,我一直收到这个错误:

代码语言:javascript
复制
File "C:\Python27\lib\site-packages\serial\serialwin32.py", line 66, in open
    raise SerialException("could not open port %r: %r" % (self.portstr, ctypes.WinError()))
SerialException: could not open port 'COM3': WindowsError(5, 'Access is denied.')

下面是我的代码:

代码语言:javascript
复制
import serial
port = 2
class arduino:

    def __init__(self):
        self.ser = serial.Serial(port, 9600)
        self.port = port

    def read(self):

        x = self.ser.read(100)
        self.ser.flush()
        return x

    def close(self):

        ser.close()


glove = arduino()
print(glove.read())
glove.close()

我有我的arduino连接到COM3,并且arduino IDE是关闭的,所以错误肯定不是由干扰arduino串行接口引起的。我是管理员,所以我不认为问题是我没有管理权限。

你知道问题出在哪里吗?

谢谢,

Dhruv

EN

回答 1

Stack Overflow用户

发布于 2013-11-08 00:17:09

您缺少open()

添加此方法,并在阅读前使用:

代码语言:javascript
复制
def OpenPort(self):

    try:
        self.sSerial.open()
    except SerialException, e:
        raise e

还有一件事,你不需要在读取串行端口的输入Q之后读取,因为在self.ser.flush()命令之后它是空的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19840748

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档