树莓派与Arduino串口通信导致Arduino一直复位的解决方法分享

问题现象

树莓派在和Arduino通信的过程中发现Arduino的程序一直被复位,从Arduino的开发板上也可以看出rst的灯会亮。

问题分析

这里使用python3编程,看了网上其他语言这种情况,思路应该是一样的,而且下面的并没有官方说法,是我实验的出的结论,仅供参考。
当树莓派中python程序只有发送函数没有接收函数的时候,在自身程序不执行发送的时候会将串口关闭,在有接收函数的时候则不会关闭串口。
这是为什么呢?根据实际考虑,我认为关闭串口考虑到节约能耗或者是串口多用的原因;
那有接收函数的时候为什么就不关了呢?因为发送函数自身是知道什么时候需要使用串口进行发送的,接收就需要一直挂在那里,因为不知道另一端数据什么时候会发过来。

解决方法

既然只有发送函数会导致这样的问题,那我们就把接收函数加上去,接收函数写的时候不管有没有数据过来,不进行处理就行,我们只需要挂一个接收函数让python3知道不要关闭串口就行

如果这篇博客对你有帮助,请点赞收藏让更多有需要的人看到
我为人人,人人为我❤

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值