CAN控制器验收滤波器模式与访问控制解析
需积分: 30 4 浏览量
更新于2024-08-06
收藏 13.01MB PDF 举报
"验收滤波器模式和访问控制-leetcode 参考 java版本"
在LPC17XX系列微控制器中,验收滤波器是CAN (Controller Area Network) 控制器的关键组成部分,用于筛选接收到的CAN总线报文,确保只有符合特定标识符的报文被接收。CAN总线是一种多主站通信协议,广泛应用于汽车电子系统和其他工业领域。
验收滤波器具有512个32位的存储单元,总计2KB的RAM空间,可以存储1到5个标识符表。这些表可以容纳1024个标准标识符(11位)、512个扩展标识符(29位),或者两者的组合。验收过滤的目的是确保微控制器只接收与其业务相关的数据,减少不必要的处理负担。
验收滤波器的模式可以通过设置AccOff、AccBP和eFCAN位来改变。这些模式包括:
1. 关闭模式:AccOff为1,AccBP为0。在这种模式下,验收滤波器被复位并停止工作,CPU可以直接读写其配置。
2. 旁路模式:AccOff任意,AccBP为1。同样停止工作,但所有报文都会被接收,CPU可读写配置。
3. 工作模式和FullCAN模式:AccOff和AccBP都为0。在这种模式下,硬件执行验收过滤,CPU只能读取配置,而不能修改,过滤规则由滤波器根据存储的标识符执行。
在不同的模式下,对ID查找表RAM和配置寄存器的访问权限也不同。例如,在关闭和旁路模式中,所有配置寄存器都可以被CPU写入,而在工作模式中,只能读取配置,不能修改,以确保过滤规则的稳定。
此外,CAN控制器的状态可以通过CAN1GSR和CAN2GSR寄存器中的位(如E1、E2、BS1、BS2)来监控,这些位反映了错误计数器的状态和总线活动情况。如果错误计数器达到预设界限,相应的E1或E2位会被置1;BS1和BS2位表示CAN1和CAN2是否正忙于处理总线事务。
总结来说,LPC17XX系列微控制器的验收滤波器和访问控制机制是其CAN通信的核心部分,通过灵活的配置模式和访问权限管理,实现高效、安全的数据接收。正确理解和使用这些功能对于构建可靠的CAN网络至关重要。
2019-09-17 上传
2019-09-17 上传
185 浏览量
2021-06-30 上传
2021-06-30 上传
2021-06-30 上传
2021-06-29 上传
2021-06-29 上传
2021-07-01 上传
一土水丰色今口
- 粉丝: 23
- 资源: 3988
最新资源
- 单片机串口通信仿真与代码实现详解
- LVGL GUI-Guider工具:设计并仿真LVGL界面
- Unity3D魔幻风格游戏UI界面与按钮图标素材详解
- MFC VC++实现串口温度数据显示源代码分析
- JEE培训项目:jee-todolist深度解析
- 74LS138译码器在单片机应用中的实现方法
- Android平台的动物象棋游戏应用开发
- C++系统测试项目:毕业设计与课程实践指南
- WZYAVPlayer:一个适用于iOS的视频播放控件
- ASP实现校园学生信息在线管理系统设计与实践
- 使用node-webkit和AngularJS打造跨平台桌面应用
- C#实现递归绘制圆形的探索
- C++语言项目开发:烟花效果动画实现
- 高效子网掩码计算器:网络工具中的必备应用
- 用Django构建个人博客网站的学习之旅
- SpringBoot微服务搭建与Spring Cloud实践