你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32G4 CAN无法检测到bus-off状态?

[复制链接]
lthuijoljnk 提问时间:2024-12-22 17:12 / 未解决

我将STM32G473的板子配置了CAN,并周期发送了报文,使用USBCANFD-200U进行了接收。

1、起先在CAN盒子的接口处直接对总线CAN-H和CAN-L进行短接,发现无法进入bus-off。

2、随后我将盒子断开,总线处于开路,只有STM32板子这一个节点,此时注意到在开路状态下并没有处于bus-off,外设的TEC计算器并没有超过255。

3、接着我在开路状态下继续对总线进行短接,最开始是在总线的末端,没有进入bus-off。当我在对板子的CAN收发器接口处进行短接时进入了bus-off。我意识到好像与短路的距离有关,我开始用一节金属丝重新再总线的末端短接,并将CAN-H和CAN-L末端在金属导线上滑动以减小短接的距离,发现距离减小到一定时就进入了bus-off。

4、细节:总线除了CAN盒子(接上位机)后只有板子,直接通过两根线进行了连接,总线长还不到0.5m。当我将总线开路时只有板子和这段线进行连接。在板子上收发器输出是有120欧的电阻的。总线其它位置没有电阻。

这让我有两个问题。一个是为什么直接开路后没有进bus-off,另一个是总线短路为什么还和距离有关,直接在板子接口短接就能进bus-off。这是硬件有什么问题吗?还是软件配置的原因,我附上我的CAN外设配置如下:

image.png

image.png
收藏 评论3 发布时间:2024-12-22 17:12

举报

3个回答
xmshao 回答时间:2024-12-23 10:08:01
如果你没有在CAN总线的两端分别使用120欧姆电阻的话,建议配置好后再行测试。
lthuijoljnk 回答时间:2024-12-23 14:34:33

xmshao 发表于 2024-12-23 10:08
如果你没有在CAN总线的两端分别使用120欧姆电阻的话,建议配置好后再行测试。 ...

今天找到了原因,CAN收发器输出接了两个保险丝。将保险丝用零欧电阻替代测试就正常了

xmshao 回答时间:2024-12-23 16:46:01

lthuijoljnk 发表于 2024-12-23 14:34
今天找到了原因,CAN收发器输出接了两个保险丝。将保险丝用零欧电阻替代测试就正常了
...

呵呵 你是说在总线上接了保险丝吧。按理保险丝电阻也该很小才对。

所属标签

相似问题

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版