CC1101数据过滤机制详解:地址、长度与CRC过滤
需积分: 5 177 浏览量
更新于2024-08-07
收藏 3.89MB PDF 举报
"CC1101 数据手册"
在CC1101这款无线通信芯片中,接收模式下的数据过滤是保障数据传输准确性和效率的关键特性。数据过滤主要包括三种类型:地址过滤、最大长度过滤和CRC(循环冗余校验)过滤。
1. **地址过滤**:
- 当PKTCTRL1寄存器中的ADR_CHK位设置为大于0的值时,地址过滤功能启用。
- 数据包处理器会检查包的目标地址字节,与ADDR寄存器中设定的节点地址进行比较。
- 如果ADR_CHK设置为10,则匹配广播地址0x00;设置为11时,匹配0x00和0xFF的广播地址。
- 匹配成功,数据包会被接收并写入RX FIFO;不匹配则丢弃,并重启接收模式,不受MCSM1.RXOFF_MODE设置的影响。
- 在无限数据包长度模式和地址过滤开启的情况下,若地址匹配正确,0xFF将先写入RX FIFO,然后是地址字节和有效载荷。
2. **最大长度过滤**:
- 在可变数据包长度模式(PKTCTRL0.LENGTH_CONFIG=1)下,使用PKTLEN.PACKET_LENGTH寄存器设定最大允许的数据包长度。
- 如果接收的长度字节超过这个值,数据包将被丢弃,同时重启接收模式,不论MCSM1.RXOFF_MODE的设置如何。
3. **CRC过滤**:
- 通过设置PKTCTRL1.CRC_AUTOFLUSH=1,可以启用CRC过滤,即在CRC校验失败时自动清除RX FIFO。
- CRC校验失败后,RX FIFO会被清空,之后的操作取决于MCSM1.RXOFF_MODE的配置。
- 在自动清除功能启用时,最大数据包长度在可变长度模式下为63字节,定长模式下为64字节。如果PKTCTRL1.APPEND_STATUS使能,最大长度会减少2字节以容纳状态字节。
- 只有当CRC校验正确后,MCU才会从RX FIFO中读取数据,且之前接收的错误数据包必须先从FIFO中移除。
这些过滤机制确保了CC1101在无线通信中的数据可靠性,防止无效或错误的数据包占用资源,提高了系统的整体性能。对于开发基于CC1101的无线通信系统来说,理解和正确使用这些过滤功能至关重要。
2019-08-13 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
2024-11-10 上传
2024-11-10 上传
2024-11-10 上传
2024-11-10 上传
黎小葱
- 粉丝: 24
- 资源: 3961
最新资源
- NIST REFPROP问题反馈与解决方案存储库
- 掌握LeetCode习题的系统开源答案
- ctop:实现汉字按首字母拼音分类排序的PHP工具
- 微信小程序课程学习——投资融资类产品说明
- Matlab犯罪模拟器开发:探索《当蛮力失败》犯罪惩罚模型
- Java网上招聘系统实战项目源码及部署教程
- OneSky APIPHP5库:PHP5.1及以上版本的API集成
- 实时监控MySQL导入进度的bash脚本技巧
- 使用MATLAB开发交流电压脉冲生成控制系统
- ESP32安全OTA更新:原生API与WebSocket加密传输
- Sonic-Sharp: 基于《刺猬索尼克》的开源C#游戏引擎
- Java文章发布系统源码及部署教程
- CQUPT Python课程代码资源完整分享
- 易语言实现获取目录尺寸的Scripting.FileSystemObject对象方法
- Excel宾果卡生成器:自定义和打印多张卡片
- 使用HALCON实现图像二维码自动读取与解码