2
7
21
初级技术员
今天调试HC32F4A0 CANFD通信是遇到问题,CANFD正常情况下能通信,然后测试异常BUSOFF功能发现:拔掉一根CAN线模拟发送错误,发现芯片会一直不断发送,不会进入BUSOFF状态。即使断点停止,也在不停往外发数据。
查看寄存器发现发送错误计数器计到0x80后就不再增加
5822364993c8e0b259.png (24.11 KB ) 下载附件 2023-6-26 15:21 上传
5822364993c8e0b259.png (24.11 KB )
下载附件
2023-6-26 15:21 上传
查看芯片编程手册也发现一个不理解的地方:当发送错误大于255时,节点进入关闭状态,但发送错误寄存最大值是255。这就矛盾了,不知道我是什么地方没弄明白,才导CANFD致进入不了BUSOFF呢。
6431664993d53bdf32.png (97.38 KB ) 下载附件 2023-6-26 15:25 上传 6031764993d3305c6f.png (64.13 KB ) 下载附件 2023-6-26 15:24 上传
6431664993d53bdf32.png (97.38 KB )
2023-6-26 15:25 上传
6031764993d3305c6f.png (64.13 KB )
2023-6-26 15:24 上传
4244364993cd5e87a1.png (50.32 KB )
2023-6-26 15:23 上传
使用特权
6
34
105
中级技术员
kensilong 发表于 2023-6-26 16:50 当节点发生主动错误,同时没有收到ACK时,不会再增加TECNT。TECNT到了0x80的时候已经触发了错误被动ERRINT ...
17
223
1644
助理工程师
jsyanzi 发表于 2023-6-28 11:05 我把节点的CANL接地,测量节点的CANH会一直不停有信号发出,BusOff位没有置位。这种情况下节点都不会自己关 ...
1
13
39
发表回复 本版积分规则 回帖后跳转到最后一页
人才类勋章
时间类勋章
等级类勋章
0
扫码关注 21ic 官方微信
扫码关注嵌入式微处理器
扫码关注21ic项目外包
扫码关注21ic视频号
扫码关注21ic抖音号
本站介绍 | 申请友情链接 | 欢迎投稿 | 隐私声明 | 广告业务 | 网站地图 | 联系我们 | 诚聘英才 | 论坛帮助
京公网安备 11010802024343号