Pyserial公司串行写入()没有

2024-04-28 06:15:56 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要和一个阿杜诺人交流。做serial.readline()来阅读Arduino说的话很好。做serial.write('something')似乎什么也做不了。在

有趣的是,如果我在控制台或命令行中编写相同的代码,它将按预期工作。。。在

使用Python2.7。在

Python代码:

import time
import serial

# setup Arduino USB communication
try:
    arduinoSerialData = serial.Serial('com3', 9600)

except: # not connected/damaged
    pass

while True:
    if arduinoSerialData.inWaiting() > 0:
        arduinoSerialData.write('A')
        arduinoSerialData.flush()
        datastr = arduinoSerialData.readline()
        print datastr
        time.sleep(1)

Tags: 代码命令行importreadlinetimesetupserial交流
2条回答

尝试在Python脚本中添加timeout参数,然后尝试在while循环中设置主arduino代码 第一步:Python

 arduinoSerialData = serial.Serial('com3', 9600, 1)

更换arduinoSerialData.flush文件()签署人:

^{pr2}$

步骤2:Arduino:

void loop(){
    while (Serial.available > 0){
            // your main code
    }
}

在您打开端口后放一条time.sleep(2)行,给Arduino重新启动的时间。在

相关问题 更多 >