打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
对ShockBurst与Enhance ShockBurst的理解

一开始接触到nRF24L01,Datasheet中大量提到Enhance ShockBurst 模式的好处,但是就是不明白这到底是一个什么模式,这些优点是相对于什么模式而言的,如果不适用Enhance ShockBurst模式,那么传输使用的是什么模式呢?
通过认真阅读Datasheet和官方的Demo程序,对于ShockBurst与Enhance ShockBurst的区别,我的理解如下,相对于ShockBurst 模式 Enhance ShockBurst 模式增加了自动应答和自动重发功能。

nRF24L01+芯片有2种通信模式:ShockBurst? Mode(突发模式)和Enhanced ShockBurst Mode(增强式突发模式)。当在ShockBurst Mode下芯片自己完成需要高速处理的RF协议,发送数据时只需要将数据放入发送数据缓冲区,芯片会自动产生PREAMBLE和CRC数据并将这些数据和地址信息、发送数据缓冲区的数据等组成一个数据包发送出去,这个数据包的组成为“1字节字头 + 3~5字节地址 + 9bit标志位 + 1~2字节CRC”。配置为接收数据的nRF24L01+接收到数据包后由硬件解析地址数据和数据信息,当接收到有效的数据信息后在IRQ引脚产生中断通知外部处理器读走数。
Enhanced ShockBurst Mode比前一种多了数据传输的握手信号可以保证数据传输的可靠性。当配置为Enhanced ShockBurst Mode,nRF24L01+发送数据后会自动切换到接收模式以接收返回的握手信号,当收到确认信号后IRQ引脚产生数据发送完成中断,如果没有握手信号返回表示发送失败,芯片会自动重新发送。如果重新发送的次数超过在ARC_CNT寄存器里面设定的值则会在IRQ引脚产生中断。MCU查询STATUS寄存器的值即可知道是发送完成中断还是重发次数超限中断。
推荐将nRF24L01+配置工作于Enhanced ShockBurst?模式,这种工作模式下,系统的程序编制会更加简单,并且稳定性也会更高。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
一次因网络引起的诡异GC问题,DBA该怎么做
nrf24l01
对2.4GHz无线数传模块 nRF2401A 的使用及测试
STC89C52 STC89LE52 NRF24L01无线 教程 (一)
基于ATmega16和nRF905的无线射频收发系统设计
nRF905
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服