
MSCAN标识符接收过滤器配置详解
5星
- 浏览量: 0
- 大小:None
- 文件类型:PDF
简介:
本文详细解析了MSCAN模块中用于控制数据收发的标识符接收过滤器配置方法与技巧,帮助读者掌握其应用。
在汽车、工业控制系统以及多节点通信系统领域,CAN总线协议发挥着至关重要的作用,并成为目前应用最广泛的现场总线技术之一。MSCAN(Multi-Channel Serial CAN)是一种基于CAN协议的通信控制器,在微控制器内部被广泛应用以实现高效稳定的数据传输。
### MSCAN标识符接收滤波器的功能
该过滤器用于确定哪些CAN报文是有效的并需要处理。它通过配置接收模式、设置掩码和识别ID来操作。每个接收到的消息都会由其自身的标识符与预设的接受ID寄存器值进行比较,符合规则的消息才会被接纳。
### MSCAN标识符接收滤波器的配置
MSCAN的过滤器配置主要包括以下步骤:
1. **选择合适的模式:** 通过设置MSCAN_CANIDAC中的IDAM位来确定使用哪种接收模式。这些选项包括:
- 使用两个32位接收过滤器;
- 使用四个16位接收过滤器;
- 使用八个8位接收过滤器;
- 关闭滤波功能。
2. **配置接受标识符寄存器:** 这涉及到设置用于匹配不同类型的ID的扩展和标准识别符寄存器。
3. **设定掩码寄存器值:** 掩码决定了哪些位需要与接收到的消息进行比较,而哪些可以忽略不计。
4. **实现细节:** 在特定硬件如FRDM-KE06开发板上完成上述步骤的具体操作以启用接收过滤功能。
### MSCAN标识符接收滤波器的详细配置
在FRDM-KE06开发版中,我们通过设置MSCAN模块中的寄存器来安排接受过滤机制。为了便于理解,我们需要先了解扩展和标准识别符寄存器的相关信息:
#### 扩展识别符寄存器的情况
- REIDR0到REIDR3:用于处理扩展标识。
- RSIDR0与RSIDR1:同样支持标准标识,并且它们的地址重叠于REIDR0及REIDR1,但包含非识别位。
#### 标准识别符寄存器的情况
- RSIDR0标准0:含有非识别位如RTR和IDE。
- RSIDR1标准1:同样包括了RSRTR、RSIDE以及前2个位置的标识信息。
### 四种接收模式描述
1. **32位可屏蔽标识符过滤器**:分为两组,每组两个滤波器用于匹配扩展或标准识别。
2. **16位可屏蔽标识符过滤器**:同样分成两组,适用于处理CAN 2.0B帧的SRR和IDE位等。
3. **8位可屏蔽标识符过滤器**:八种不同的筛选机制,每个使用前八个位置来检查接收的数据包。
4. **关闭模式**:当不需要进行报文过滤时选择该选项。
### 滤波配置例程说明
在官方驱动CAN代码中提供了具体的滤波配置示例。例如,为了接纳扩展ID 0x802和0x803的报文,需定义对应的接收标识符寄存器及掩码寄存器宏值来实现。
### 结论
掌握MSCAN标识符过滤机制对于构建高效的CAN通讯网络至关重要。正确配置这些筛选工具能确保仅处理必要的数据包,并优化整个通信系统的性能和效率。在实际应用中,理解如何设置这些参数对调试与增强嵌入式系统中的通信功能来说是必不可少的技能。
全部评论 (0)


