gpt4 book ai didi

python - 使用 pySerial 从 Python 获取输入/输出错误

转载 作者:太空狗 更新时间:2023-10-30 03:08:07 25 4
gpt4 key购买 nike

我有一个 Python 脚本,它通过 pySerial 将数据包写入 Arduino 板。 .有时,在将代码写入开发板时,pySerial 会引发错误号为 5 的输入/输出错误。

一些研究表明,这表明在写入表示与 Arduino 板的连接的文件时出现错误。

发送的代码,只发送单字节数据包:

try:
# Check if it's already a single byte
if isinstance(byte, str):
if len(byte) == 1: # It is. Send it.
self.serial.write(byte)
else: # It's not
raise PacketException
# Check if it's an integer
elif isinstance(byte, int):
self.serial.write(chr(byte)) # It is; convert it to a byte and send it
else: raise PacketException # I don't know what this is.
except Exception as ex:
print("Exception is: " + ex.__getitem__() + " " + ex.__str__())

这段代码打印出的错误是:

OS Error Input/Output Error Errno 5

发送时我的代码有问题吗?我是否需要检查串行连接是否已准备好发送某些内容,或者发送后是否应该有延迟?还是硬件或与硬件的连接有问题?

编辑:我从 pyserial 研究了 Linux 实现,该实现只是将错误传递给我的代码。所以从那里没有新的真正见解。有什么好的方法可以测试程序中发生了什么?

最佳答案

抱歉打扰了,但我很确定这个错误是由于 arduino 自身重置并因此关闭了与计算机的连接造成的。

关于python - 使用 pySerial 从 Python 获取输入/输出错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/994538/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com