thinkphp6 接收不到数据_CAN通信收不到数据现象解读

前几天来自北京某公司的计工使用我们的GCAN-205模块时遇到了一个问题。

计工:“杨工,我在使用GCAN-205模块周期发送CAN数据时遇到了这样一个问题,当我使用USBCAN分析仪测试这个模块的时候,将模块上电后,USBCAN分析仪可以正常接收到模块发出的报文,但是还有些时候插上USBCAN分析仪只能收到几帧数据之后就再也收不到数据了,这时我如果对GCAN-205重新上电,就又能正常的收到数据了。我还特意把数据保存下来了,麻烦你帮我看一下。”

73e35217c8653bbb9a509d72f7b5e6cb.png

一般出现通讯问题都是需要先检查接线、终端电阻和波特率是否一致,但根据计工的描述来看,他遇到的问题不是由这三个问题引起的,因此我仔细的询问了计工到底是如何操作才会出现这种收不到数据的现象,得到的结果是:在总线上只有USBCAN分析仪和GCAN-205模块时,并且只有在反复重启USBCAN分析仪的软件时或是模块先上电再插入USBCAN分析仪时才会出现这种问题。

50de76faf89c55a9c7dd1f077959d511.png

现象分析

基于计工的以上操作和现象,我们基本可以判断出导致这种现象的原因是在USBCAN分析仪关闭软件期间或没有接入GCAN-205模块时,总线上只有GCAN-205模块一个节点,当它发送数据时没有其他节点与他应答,导致GCAN-205模块发送错误,最终总线关闭,而在总线关闭的时候,再接入USBCAN分析仪就没法接收到数据了。找到产生问题的原因后我们让计工将这两个设备接入到实际的CAN总线系统中就可以了。

5d429da4aa662e42d0352778c03e335a.png

杨工总结

最后杨工在这里要提醒一下广大用户:CAN总线物理层有一个保护机制,当一个设备向总线上发送数据而没有其他设备应答的时候发送失败的设备会提示主动错误,同时错误计数会增加。当错误计数增长到一定数量的时候发送失败的设备就会主动关闭CAN总线,此时将不再向总线上发送数据了。进入总线关闭状态的设备只能通过复位或重新启动的方式才能让设备恢复正产通信模式。

5863b6616db496bb45c248ac23333ee1.png

广起点滴,成于累计

广成科技,陪你一路成长

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值