Pyserial out_waiting总是返回零。

问题描述 投票:0回答:1

我正在做一个简单的项目,需要我写一个Python脚本,通过串口从PC向Arduino发送数据,作为这个项目的一部分,我希望能够检查Arduino的64字节输入缓冲区有多少字节。作为这个项目的一部分,我希望能够检查Arduino的64字节输入缓冲区中有多少字节。问题是,当我尝试写入数据,然后使用pySerial的out_waiting方法时,它总是返回零。这是我一直用来测试的一个玩具模型。

Arduino代码。

void setup() {
  Serial.begin(9600);
}

void loop() {    
}

Python代码:

import serial
import time

Arduino = serial.Serial('COM5',9600)

for i in range(20):
    Arduino.write('1'.encode())

time.sleep(1)

print(Arduino.out_waiting)

Arduino.flushOutput()
Arduino.flushInput()

print(Arduino.out_waiting)

Arduino.close()

我希望第一条打印语句输出20,第二条输出0,但都是0,我真的不知道为什么。

这里是pySerial文档的链接。pySerial文档

先谢谢你的帮助。

python serial-port arduino-uno pyserial
1个回答
0
投票

在开始向端口写入信息之前,你可以初始化write_timeout=0。

© www.soinside.com 2019 - 2024. All rights reserved.