CAN调试心得

引言:
出来工作以后,关于底层的通信调试的最多的便是CAN驱动了,现在来总结一下调试过程出现的各种各样的问题点,方便后续查阅!

1.外部条件

1.1接线不稳定

在调试CAN通信不了的原因,非常有必要检查的就是接线,很多时候都是接线松动导致无法通信,有时候杜邦线会出现接口不稳定,容易脱离的情况,在线束很多的时候,往往就容易检查不到的情况。有条件的话,尽量使用接插件,这样子会比较稳定;

1.2接线断了

这种情况出现的概率极低,也比较难检查了,出现这种情况的往往是线经常拉扯,出现了接线损坏,这个情况下,使用万用表去检查接线是否正常就可以了,或者换跟线;

1.3没有终端电阻

这种情况我也遇到过,这种方式很好验证,就是如果接入了CAN工具盒能正常工作,不接就工作不了,那往往可能就是硬件上面没有接终端电阻;

1.4CANH 和CANL接反

这个往往是粗心导致,这个需要自己去检查

在这里建议,在遇到CAN通信的问题,真的首先要检查这四个,避免一些外部条件引起的通信不正常

2.硬件原因

由于本人未从事硬件工作,所以硬件方面的只是写下了我遇到过的情况,后续遇到了会接着补充;

2.1 硬件短路

遇到过一次这个情况,我在拉低CAN StandBy引脚时,使用万用表去测量引脚的电压,发现一颗电阻左右两端的电压不一致,MCU端为0V,收发器端为3.3V。这种情况下一般就是硬件短路造成的,可以检查一下硬件;

2.2电压不够

有些情况下,调试器并不能够提供足够的电压,这个这种情况不能算做硬件的问题,这个一般都是有其他的电源接口,可以量量收发器的电压是否达到,如果没有达到,需要外接电源;

3.软件原因

3.1 引脚使用错误

这种情况,也是粗心导致,我的情况是这样子的,一般MCU上CAN的通信管脚会有很多,但是由于更换了硬件,管脚也更换了,但是我的代码还没有变,所以软件方面,这个管脚要配置好,不然容易出现这个问题;

3.2 STY状态

有些情况下,CAN StandBy会由硬件上拉低或者拉高(这个具体看硬件的设置),有些情况需要通过软件来设置,这种情况下,也是要配置好管脚,可以通过测量管脚的电压判断是否有拉高或者拉低;

3.3 初始化的CAN通道与使用的不一致

MCU上一般会有很多的CNA通道,这个时候可能会出现初始化的CAN通道没有使用,但是使用其他的CNA通道;

目前先整理这么多,后续再慢慢的完善;

  • 5
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值