nRF24L01模块提供了非常有效和廉价的通信方式,nRF24l01模块实际上是一个无线电收发器模块,它工作在2.4GHz频率上。该模块具有同时发送和接收数据的功能,可用于各种IOT项目以创建无线连接。通过显示它是一个非常小的模块,但它的功能是惊人的。
nRF24L01是由Nordic半导体生产的一种单片无线收发器芯片,它的射频频段在2.4GHz~2.5GHz之间,这个频段也属于我们之前所说的免许可的ISM(工业、科学和医学)开放频段。围绕这个芯片设计的模块就是我们常见的nRF24L01模块,这类模块种类名称也很多,比如nRF24L01模块,nRF24L01+模块,nRF24L01+ PA/LNA模块。
它们其实大同小异,nRF24L01+是nRF24L01芯片的升级版本,nRF24L01只支持1Mbps和2Mbps的传输速率,而nRF24L01+还支持250Kbps的传输速率,nRF24L01+ PA/LNA模块是在nRF24L01+模块的基础上集成了收发放大的外置天线信号模块,增大了模块的传输距离,如果在空旷的环境里,使用板载PCB天线的nRF24L01/nRF24L01+模块传输最大距离只有100米,而PA/LNA模块可以到达1000米。
nRF24L01/nRF24L01+模块收发在特定的频率上,这个频率被成为信道 (Channel)。一对或者多个模块相互通信就必须在同一个频率上。所以这个频率必须在2.4GHz~2.5GHz之间的任意一个频率上,更准确点,应该是2400MHz到2525MHz。由于每个频率占用的信道带宽(bandwidth)要至多1MHz,那么在同一个范围内,如果带宽为1MHz,理论上就可以有125个独立的频率可以用。
nRF24L01/nRF24L01+模块提供了一个原生的多发一收的功能,即多个发送端可以发给一个接收端,但发送端最多是6个。每个物理信道(Channel)被分成6个软件逻辑上的数据管道(Data Pipes),每个数据管道都有自己的配置地址。
中心的nRF24L01/nRF24L01+模块可以同时接收其他6块nRF24L01/nRF24L01+模块的消息,也可以随时停止接收变成发送模块,向其他模块发送消息,但发送过程不能同时,只能一次一个数据管道。
nRF24L01/nRF24L01+模块通信时,通信的信息是遵循一定格式的,这个格式就是ShockBurst协议。最初ShockBurst协议格式是只有Preamble、Address、Payload以及CRC字段的。
nRF24L01+后ShockBurst协议就升级成了增强型ShockBurst协议。加入了Packet Control字段。加入Packet Control字段有以下几个好处:
可以在Packet Control字段里描述Payload字段的长度,可以说明每个包数据的长度。
PacketControl字段里加入了包的ID标记,即Packet ID,这样方便后期处理数据。
可以规定是否要求返回应答字符(ACK),来确认发出去的数据包是否被接收。
两个nRF24L01/nRF24L01+模块通信时,发送端会以增强型ShockBurst协议向接收端发送包数据,接收到接到包以后就会向发送端回复一个应答字符(ACK),这样一个正常发送过程就完成了。
当然这个过程中有时候会出现另外两种情况:
第一种,数据包在发送过程中丢包了,那么接收端没收到也不会返回ACK,发送端没等到ACK过一段时间就会重新发送一次。
第二种,数据包送到了,接收端返回ACK给发送端,但ACK丢了。那同样,发送端没等到ACK过一段时间还是会重新发送一次。
7 X 24 销售服务热线
4000-330-990深圳办事处柯经理:18218726658 杭州办事处戴经理:17512568697
常州办事处崔经理:15906110783 南京办事处葛经理:17626012283
业务邮箱:support@cdhanzaichips.com
全国销售投诉电话:19934352316
地址:四川省成都市高新西区西区大道199号B5栋(前台座机:028-61543675)
©© 成都太阳集团tcy8722电子科技有限公司【版权所有】 蜀ICP备27697263号-3