欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

STM32之间的CAN无法通信问题解决

程序员文章站 2022-01-13 10:55:46
两个CAN设备无法通信的问题,大概有以下几点1、120欧电阻没形成闭环网络2、波特率设置出问题3、接线错误4、模式设置出错5、筛选器掩码设置解决办法1、120欧电阻是必须的,但是一条总线只需要两个120欧电阻2、波特率这可是大坑,因为CAN是有过滤功能的,只要你不符合,完全看不到主机发来了什么,不像串口那样就算波特率出错了,也能看到乱码。特别时F407和F429两个主频不同的M4芯片(本人遇到的),CAN_Prescaler最好的应该是F407=14,F429=15(这是APB1之间的比值)...

两个CAN设备无法通信的问题,大概有以下几点
1、120欧电阻没形成闭环网络
2、波特率设置出问题
3、接线错误
4、模式设置出错
5、筛选器掩码设置
解决办法
1、120欧电阻是必须的,但是一条总线只需要两个120欧电阻
2、波特率这可是大坑,因为CAN是有过滤功能的,只要你不符合,完全看不到主机发来了什么,不像串口那样就算波特率出错了,也能看到乱码。特别时F407和F429两个主频不同的M4芯片(本人遇到的),CAN_Prescaler最好的应该是F407=14,F429=15(这是APB1之间的比值)。
3、接线CAN_H对CAN_H,L对L。
4、模式设置为回环模式可以向外发送数据,但是不能接收数据。两个CAN测试可以用一个回环模式,一个正常模式来测试,回环模式能接收到自己的数据。确保发送没问题。
5、筛选器掩码可以设置为0x0000先测试一下。

<完>

本文地址:https://blog.csdn.net/bdjsm_hh/article/details/107918973

相关标签: 笔记 单片机