打印
[综合信息]

HC32F4 CAN——筛选器

[复制链接]
2410|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
白虎姐|  楼主 | 2021-11-19 15:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
HC32F4xx的CAN
华大HC32F4系列目前已搭载标准CAN、CAN-FD(具体因不同型号而异),完全遵循CAN2.0A/B、CAN-FD协议。

主要特性
CAN2.0支持最高波特率1Mbps;
灵活的波特率时钟分频1~256;
8个接收缓冲器(FIFO、错误或滤波数据不覆盖存储)
1个高优先级主发送缓冲器PTB
3个副发送缓冲器STB(FIFO、优先级仲裁方式)
16组独立筛选器(支持11位ID及扩展29位ID)
静默模式
回环模式
错误类型报警
可编程错误警告限定值

支持TTCAN模式

一个古老的CAN节点们的故事
更多信息咨询请联系angel.qi:13827489351(微信与手机号码同步)
对CAN总线通信机制有一定了解的朋友可能知道,CAN总线上的任意节点,都能接收到总线上的数据;但在一个CAN网络或系统中,并非每个节点都需要关心或处理来自总线的消息。
每每此时,总有这样一些玩转各类嵌入式通信的“高手们”按捺不住自己激动的心情:“在协议中加入特殊序列,收到后看看是否和自己有关,决定是否进一步处理……”
这时候……
“休眠者节点”发话了:“我就想事不关己高高挂起,别将我有限的“绳命”投入到无限的琐事当中,芝麻大点的事就不要烦我了”;
“高级职场PUA节点:“你们这些节点工作不饱和啊,什么事都瞅一眼,啥时候干活啊”;

但仍不乏一些“奋斗者节点们”:“我们拼了命地干活,但高峰期的时候还是忙不过来啊,导致丢失了很多重要的信息”

一声声哀怨叹息,随着凄凉的秋风吹到了CAN老大的身边,随着CAN老大轻轻挥一挥自己手中的“筛选神器”,这些哀怨又随风消逝,无影无踪,仿佛来过很多次,又仿佛从未来过,又仿 “佛 跳 墙”……


如此神器,究竟为何物?
HC32F4xx的CAN筛选器

CAN_CTRL提供16组(具体型号可能不同)32位的筛选器:
可用于过滤不需要的ID的数据从而来降低CPU的负荷;
CAN筛选器支持11位的标准ID和29位的扩展ID;
每组筛选器由CODE和MASK组成;
总线上的数据只要能通过其中一组筛选器,便可被CAN_CTRL接收处理。

如此神器,该如何驾驭?

筛选器的原理及配置方法示例,千说万道,不如一张图 ↓ ↓ ↓
上图紫色部分为寄存器及其配置值

CODE:希望匹配的ID;

MASK:对应位为‘1’表示不比较ID的该位,为‘0’表示比较ID的该位;

筛选器的配置:

(1)通过ACFEN使能对应的筛选器组;

(2)通过ACFADR选择当前待配置的筛选器组;
(3)配置筛选器(MASK和CODE)

        a、设置SELMSK=0,向CODE写入希望匹配的ID;

        b、设置SELMSK=1,向MASK写入希望比较的掩码值;


筛选器的应用场景:
(1)降低CAN节点的负载,CAN节点只关注自己希望处理的ID;
(2)降低MCU的负荷,MCU可处理其他业务逻辑;

(3)简化系统开发,应用软件不必对非必要的ID进行接收判断,避免系统开发的冗余;

使用特权

评论回复
沙发
七毛钱| | 2021-11-19 17:10 | 只看该作者
这个筛选器挺好的

使用特权

评论回复
板凳
skyred| | 2021-12-27 17:01 | 只看该作者
筛选器是专有的硬件单元吗

使用特权

评论回复
地板
b5z1giu| | 2022-2-22 12:21 | 只看该作者
华大做加密好像很强,不知道做汽车芯片怎么样

使用特权

评论回复
5
ex7s4| | 2022-2-22 12:41 | 只看该作者
属实,can的话操作很难的呀,哎,玩了这么久都没搞懂

使用特权

评论回复
6
t1ngus4| | 2022-2-22 12:55 | 只看该作者
这种can是不是和485一样,都是使用轮询的方式啊?

使用特权

评论回复
7
l1uyn9b| | 2022-2-22 13:07 | 只看该作者
Can还是有好处的,不过我们一般还是不用,都是485操作

使用特权

评论回复
8
q1d0mnx| | 2022-2-22 14:17 | 只看该作者
现在can用的比较广泛了,不仅仅是用在车里了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

40

主题

41

帖子

0

粉丝