如何从串口读取数据?蟒

时间:2017-04-11 14:15:25

标签: python arduino serial-port pyserial

嗨,请接受我的基本问题,因为我是python的新手。
我试图从串口读取数据。基本上串口是虚拟转换为串口的USB端口。我正在使用arduino。
首先我尝试了这段代码:

while(True):
    ser=serial.Serial('COM6',9600)
    bytoread=ser.inWaiting()
    val=ser.read(bytoread)

但它给了我错误。

Permission Error(13,Access is denied, none 5)

但是当我把代码改为

while(True):
    ser=serial.Serial()
    ser.baudrate=19600
    ser.port='COM6'
    ser
    ser.open()
    bytoread=ser.inWaiting()
    val=ser.read(bytoread)

权限错误未到,但程序始终忙于连接端口。我等了很多分钟,但它从来没有前进过。我在这里做错了什么?

1 个答案:

答案 0 :(得分:3)

你可以这样做:

import serial
ser = serial.Serial('COM6', 9600, timeout=None)

while True:
    data = ser.readline()

您无法将ser = serial.Serial('COM5', 9600, timeout=None)放入while循环,因为它会永久(重新)创建连接...