CAN总线模块报文接收机制详解
需积分: 50 163 浏览量
更新于2024-08-10
收藏 2.54MB PDF 举报
"报文接收机制在iec60730-1 class b标准下的实现,涉及16位PIC微控制器的CAN总线模块"
在IEC60730-1 Class B标准中,报文接收是CAN总线通信的关键部分。16位PIC微控制器,如dsPIC30F4011/4012,具有专门的硬件机制来处理这一过程。以下是报文接收的详细知识点:
1. **接收缓冲器**:CAN总线模块配备三个接收缓冲区,一个用于监视报文进入(MAB),另外两个(RXB0和RXB1)用于即时接收完整报文。MAB会合并满足接收过滤条件的报文,并在接收到报文时设置RXxIF标志,引发中断(如果RXxIE位被设置)。
2. **报文接收过滤器**:过滤器(如RXF0-RXF5)和屏蔽寄存器用于决定报文是否匹配并应被放入接收缓冲器。标准帧和扩展帧由RXIDE位区分,匹配标识符字段后报文被装入对应缓冲器。
3. **报文接收过滤屏蔽**:每个接收缓冲器都有一个与之关联的过滤屏蔽器,用于确定哪些位进行比较。如果屏蔽位为0,相应位将自动接收,无论过滤位如何。
4. **接收溢出**:当MAB有有效报文待处理,而关联的接收缓冲器未清空时,会发生溢出。溢出错误标志(RXxOVR)和ERRIF位会被置1,导致MAB中的报文丢失。DBEN位的设置影响溢出处理方式,决定报文是否转存至另一个缓冲区或被丢弃。
5. **接收错误**:CAN模块会检测CRC错误、位填充错误和无效报文接收错误,这些错误不会触发中断,但会增加接收错误计数器。当计数器达到预设上限时,RXWAR位被置1,产生中断。
6. **接收中断**:接收中断分为两类:基本接收中断和唤醒中断。当报文成功接收并装入缓冲区时,中断被激活,可以通过RXxIF标志判断是哪个缓冲区触发的中断。唤醒中断则发生在设备从禁止或休眠模式中恢复。
报文接收机制在16位PIC微控制器中是通过高效的缓冲管理和过滤策略来确保可靠的数据传输。错误处理和中断机制则保证了系统对异常情况的响应能力,以适应工业自动化和控制系统的高可靠性要求。
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
Fesgrome
- 粉丝: 37
最新资源
- Python脚本管理工具my-scripts使用指南
- VueSetter:实现Vue数据双向绑定的插件
- Java实现的员工数据库MySQL应用程序功能解析
- 在CentOS7上部署Docker与ELK集群实现项目发布和日志管理
- 深入理解SwiftUI的Navigation:基础指南
- R-Studio数据恢复工具:经典与便捷的结合
- 动态黑色箭头PPT模板艺术下载
- 简约黑白风景旅游PPT模板免费下载
- React购物车实现教程:第一步创建React应用
- 方舟助手v1.0.3.34:高效图片视频编辑与发布
- 【电脑主题】熊猫大侠系列:英武动漫风win7桌面主题
- OpenPCS 7 (V8.1 SP1) 过程控制系统使用手册
- SoonToBe即将推出的JoinPay支付技术
- Webpack加载器ihtml-loader深度解析
- 吉卜力电影前端展示与API数据检索学习项目
- PICT工具:生成有效软件测试用例的正交方法