pythonioerror0 121_获取IOError:[Errno 121]尝试通过I2C从Arduin获取数据时,python(raspberry)上的smbus发生远程I/O错误...

在Raspberry Pi 3上运行Python脚本尝试通过I2C从Arduino获取数据时遇到了IOError 121。尽管电气连接正常且i2cget命令无误,Python脚本偶尔会抛出错误。问题可能与Python SMBus库的使用或通信同步有关。已分享涉及Arduino和Python的I2C通信代码以供分析。
摘要由CSDN通过智能技术生成

我面临的问题是,在启动一个通过I2C从Arduino请求数据的脚本时,Pyton在我的raspberry Pi3上抛出了这个IOError

电气连接是完美的,所以这不是问题所在。

此外,在使用i2cget-y10x04时,我也没有收到任何错误

只有python脚本有时很糟糕,我不知道为什么。在

这是我的Arduino代码:

注册并接收请求。

onReceive回调将定义应该将什么类型的数据发送回raspberry。

onRequest回调执行响应。在#include

#include

#define I2C_ADDRESS 0x4

commonFunc GetCountsEverySecond;

int g_iOnRequestActionCode = 0;

unsigned long g_lSecondsSinceStart = 0;

void setup()

{

Wire.begin(I2C_ADDRESS);

Wire.onRequest(sendDataOverI2CGateway);

Wire.onReceive(defineOnRequestAction);

}

void loop()

{

tickSeconds();

}

void tickSeconds()

{

if (GetCountsEverySecond.TimeTriggerAt(1000))

{

g_lSecondsSinceStart++;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值