屏蔽位模式:

  在屏蔽位模式下,标识符寄存器和屏蔽寄存器一起,指定报文标识符的任何一位,应该按照“必须匹配”和“不用关心”处理。

标识符列表模式:

  在标识符列表模式下,屏蔽寄存器也被当做标识符寄存器用。因此,不是采用一个标识符加一个屏蔽位的方式,而是采用两个标识符寄存器。接收报文的每一位都必须跟过滤器标识符相同。

STM32普通型芯片的 CAN 有14组过滤器组(互联型有28组过滤器组) ,用以对接收到的
帧进行过滤。每组过滤器包括了2个可配置的32位寄存器:CAN_FxR0和 CAN_FxR1。
对于过滤器组, 可以将其配置成屏蔽位模式, 这样 CAN_FxR0中保存的就是标识符匹配值,
CAN_FxR1中保存的是屏蔽码,即 CAN_FxR1中如果某一位为1,则 CAN_FxR0中相应
的位必须与收到的帧的标志符中的相应位吻合才能通过过滤器; CAN_FxR1中为0的位表
示 CAN_FxR0中的相应位可不必与收到的帧进行匹配。 过滤器组还可以被配置成标识符列
表模式,此时 CAN_FxR0和 CAN_FxR1中的都是要匹配的标识符,收到的帧的标识符必
须与其中的一个吻合才能通过过滤。

一般我们用的都是普通型的,所以在本文中可以说 STM32有14组过滤器组。
根据配置,每1组过滤器组可以有1个,2个或4个过滤器。
这些过滤器相当于关卡,每当收到一条报文时,CAN 要先将收到的报文从这些过滤器上”
过”一下,能通过的报文是有效报文,收进 FIFO,不能通过的是无效报文(不是发给”我”
的报文),直接丢弃。
所有的过滤器是并联的,即一个报文只要通过了一个过滤器,就是算是有效的。
每组过滤器组有两种工作模式:标识符列表模式和标识符屏蔽位模式。
每组过滤器组必须关联且只能关联一个 FIFO。复位默认都关联到 FIFO_0。
所谓“关联”是指假如收到的报文从某个过滤器通过了,那么该报文会被存到该过滤器相连
的 FIFO。
从另一方面来说,每个 FIFO 都关联了一串的过滤器组,两个 FIFO 刚好瓜分了所有的过
滤器组。

STM32,CAN总线过滤器的设置详细讲解相关推荐

  1. Linuxwindows时间服务器搭建定时同步设置详细讲解

    目录 一.Linux关闭防火墙 二.ntp时间同步配置 二.chrony配置时间同步 1.服务端配置(192.168.65.188) 2.客户端配置(192.168.65.166) 三.windows ...

  2. ​​​​​​​简述STM32 CAN总线的设置

    简述CAN总线 最近公司开发CAN总线项目,以前也学习了,没有实际的用于项目制作,现在具体的总结一下,也是借鉴了很多大神的资料,站在巨人的肩膀之上写下来这篇文章 CAN 是 Controller Ar ...

  3. Iframe用法的详细讲解(属性、透明、自适应高度)和html中滚动条属性设置

    Iframe 用法的详细讲解(属性.透明.自适应高度)和html中滚动条属性设置 scrollbar属性.样式详解 1. overflow内容溢出时的设置(设定被设定对象是否显示滚动条) overfl ...

  4. 卷积神经网络中各个卷积层的设置及输出大小计算的详细讲解

    我将从以下几个方面来进行解说: 1.卷积神经网络的结构 2.卷积神经网络的计算 3.以AlexNet为例进行详细讲解 4.常见的两个卷积层设置的问题 1.卷积神经网络的结构 卷积神经网络(CNN)由输 ...

  5. 再谈STM32的CAN过滤器-bxCAN的过滤器的4种工作模式以及使用方法总结

    1. 前言 bxCAN是STM32系列最稳定的IP核之一,无论有哪个新型号出来,这个IP核基本未变,可见这个IP核的设计是相当成熟的.本文所讲述的内容属于这个IP核的一部分,掌握了本文所讲内容,就可以 ...

  6. 使用STM32Cube MX为STM32 CAN总线快速配置上手教程_HAL库_CAN协议_STM32_附波特率计算工具

    使用STM32Cube MX为STM32 CAN总线快速上手教程_HAL库_CAN协议_STM32 前言 博主也是刚接触CAN协议的新手,如有不对的地方欢迎交流 本文旨在使用STM32Cube MX快 ...

  7. 硬件:详细讲解台式电脑上的常用的几个接口!

    详细讲解台式电脑上的常用的几个接口! I/O接口部分 下图所有的接口,也是我们机箱后面的接口,统称为:I/O接口. 键鼠PS/2 PS/2接口是I/O接口中比较常见的一种接口,用来连接键盘和鼠标,二者 ...

  8. Redis最详细讲解

    Redis最详细讲解 原文地址 本文脑图 redis基本数据结构 本文脑图 前言 Redis核心对象 String类型 int SDS SDS与c语言字符串对比 String类型应用 Hash类型 字 ...

  9. stm32f103利用HC06进行蓝牙通信,在7针的OLED屏幕上显示,带数据更新功能(带超详细讲解)

    stm32f103利用HC06进行蓝牙通信,在7针的OLED屏幕上显示,带数据更新功能(带超详细讲解) 首先看看效果吧 手机端发送一个数据在OLED屏幕上显示 其实蓝牙通信就是个蓝牙转串口的过程,手机 ...

最新文章

  1. 每日起床前做这五个动作,可保障你终身不感冒——奥运福娃设计师韩美林老师亲测可用
  2. 服务器需不需要虚拟内存,服务器需不需要虚拟内存
  3. html meta 跳转 白屏,vue使用keepAlive之后页面空白白屏?route和router什么区别呢?...
  4. makefille的使用
  5. Oracle 数据库DBA管理手册!
  6. Activiti工作流从入门到入土:入门实例
  7. VTK:图片之ImageShiftScale
  8. 安全随笔2:对称加密应用场景
  9. 企业即时通讯一个全新行业的诞生
  10. hi模板文件报乱码问题
  11. GoF设计模式——单例模式(C++实现)
  12. 华为交换机重置Console口密码
  13. 帕累托法则(Pareto Principle)、二八定律、帕累托定律、最省力法则、不平衡原则、犹太法则、马特莱法则
  14. CV战神常用代码-----kj15
  15. YOLO基础教程(三):视频处理
  16. redission实现分布式锁
  17. 游戏中的镜头语言和应用
  18. pwd python 安装 模块_python模块学习之OS、PWD
  19. 【Tushare转存SQL】可转债数据(待续)
  20. python for循环与函数

热门文章

  1. 智能化家庭弱电布线标准规范
  2. hdu 2544最短路(Dijkstra)
  3. UVA 10519 !! Really Strange !!
  4. NYOJ 228 士兵杀敌(五)
  5. SQL Server 2008 允许远程链接 解决方法
  6. c#启动EXE文件(简单的)
  7. Android学习—补间动画(渐变动画)
  8. 《微信企业号开发日志》之企业号接入
  9. 重拾Javascript (四) KnockoutJs使用
  10. 解决:此错误(HTTP 500 内部服务器错误)意味着您正在访问的网站出现了服务器问题,此问题阻止了该网页的显示...