STM32 CAN调试小记

  1. 涉及到2块及以上CAN设备通讯时,先全部断开,各自设置为回环测试模式(对应:正常模式),可以判断自身是否OK.

  2. 只有对方CAN设备功能正常(例如:STM32 CAN外设已经处初始化成功),自身CAN设备才能发送数据成功,应该是须收到对方ACK,才算一帧CAN消息完整;

  3. 涉及到两个CAN的STM32,有主,从之分,它们的过滤组起始分配编号不一样,其中0~13是给主CAN的,14~27是给从CAN的。在CAN_FilterTypeDef结构体中,FilterBank 和 SlaveStartFilterBank均要设置,才能让slaver CAN 过滤组生效。

  4. 接收过滤理解:分为标识符(就是帧ID)屏蔽过滤,标识符列表两种过滤方式。两种过滤方式下,都可以通过过滤组位宽寄存器选择使用每CAN_FiRx(因为该寄存器由CAN_FiR1和CAN_FiR2组成)32bit还是16bit过滤配置寄存器。如果选择标志符屏蔽模式:32bit位宽下,CAN_FiR1放用户基于这个ID来实施屏蔽用的参照ID,CAN_FiR2就是用户的屏蔽条件了,16bit位宽下,就是把CAN_FiR1拆成两个用,CAN_FiR2自然也就对应拆成两个用。
    标志符列表理解如上,只是它允许通过过滤筛选更加苛刻而以。
    在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值