新型高速无线射频器件nRF24L01及其应用
1 nRF24L01概述
nRF24.L01是一款新型单片射频收发器件,工作于2.4 GHz~2.5 GHz ISM频段。内置频率合成器、功率放大器、晶体振荡器、调制器等功能模块,并融合了增强型ShockBurst技术,其中输出功率和通信频道可通过程序进行配置。nRF24L01功耗低,在以-6 dBm的功率发射时,工作电流也只有9 mA;接收时,工作电流只有12.3 mA,多种低功率工作模式(掉电模式和空闲模式)使节能设计更方便。
nRF24L01主要特性如下:
GFSK调制:
硬件集成OSI链路层;
具有自动应答和自动再发射功能;
片内自动生成报头和CRC校验码;
数据传输率为l Mb/s或2Mb/s;
SPI速率为0 Mb/s~10 Mb/s;
125个频道:
与其他nRF24系列射频器件相兼容;
QFN20引脚4 mm×4 mm封装;
供电电压为1.9 V~3.6 V。
2 引脚功能及描述
nRF24L01的封装及引脚排列如图1所示。各引脚功能如下:
CE:使能发射或接收;
CSN,SCK,MOSI,MISO:SPI引脚端,微处理器可通过此引脚配置nRF24L01:
IRQ:中断标志位;
VDD:电源输入端;
VSS:电源地:
XC2,XC1:晶体振荡器引脚;
VDD_PA:为功率放大器供电,输出为1.8 V;
ANT1,ANT2:天线接口;
IREF:参考电流输入。
3 工作模式
通过配置寄存器可将nRF241L01配置为发射、接收、空闲及掉电四种工作模式。
空闲模式1主要用于降低电流损耗,在该模式下晶体振荡器仍然是工作的;空闲模式2则是在当发射堆栈为空且CE=1时发生(用在PTX设备);在空闲模式下,配置字仍然保留。
在掉电模式下电流损耗最小,同时nRF24L01也不工作,但其所有配置寄存器的值仍然保留。
4 工作原理
发射数据时,首先将nRF24L01配置为发射模式:接着把地址TX_ADDR和数据TX_PLD按照时序由SPI口写入nRF24L01缓存区,TX_PLD必须在CSN为低时连续写入,而TX_ADDR在发射时写入一次即可,然后CE置为高电平并保持至少10μs,延迟130μs后发射数据;若自动应答开启,那么nRF24L01在发射数据后立即进入接收模式,接收应答信号。如果收到应答,则认为此次通信成功,TX_DS置高,同时TX_PLD从发送堆栈中清除;若未收到应答,则自动重新发射该数据(自动重发已开启),若重发次数(ARC_CNT)达到上限,MAX_RT置高,TX_PLD不会被清除;MAX_RT或TX_DS置高时,使IRQ变低,以便通知MCU。最后发射成功时,若CE为低则nRF24L01进入空闲模式1;若发送堆栈中有数据且CE为高,则进入下一次发射;若发送堆栈中无数据且CE为高,则进入空闲模式2。
接收数据时,首先将nRF24L01配置为接收模式,接着延迟130μs进入接收状态等待数据的到来。当接收方检测到有效的地址和CRC时,就将数据包存储在接收堆栈中,同时中断标志位RX_DR置高,IRQ变低,以便通知MCU去取数据。若此时自动应答开启,接收方则同时进入发射状态回传应答信号。最后接收成功时,若CE变低,则nRF24L01进入空闲模式1。
5 配置字
SPI口为同步串行通信接口,最大传输速率为10 Mb/s,传输时先传送低位字节,再传送高位字节。但针对单个字节而言,要先送高位再送低位。与SPI相关的指令共有8个,使用时这些控制指令由nRF24L01的MOSI输入。相应的状态和数据信息是从MISO输出给MCU。
nRF24L0l所有的配置字都由配置寄存器定义,这些配置寄存器可通过SPI口访问。nRF24L01
的配置寄存器共有25个。
6 应用电路设计
笔者用单片机和nRF24L01设计了一个无线数据传输电路,并通过串口将数据传输至计算机。
发射和接收电路相同。使用时需在接收端加一个RS232接口,使其与计算机串口
连接,将接收到的数据传送至计算机。该电路的工作原理:首先使接收电路上电,接着便处于接收状态等待数据的到来;然后运行VB程序,点击接收按钮;最后发射电路上电,并将单片机RAM内预先存放的数据"20H"发射出去,在1 ms内接收电路收到数据,同时VB界面显示出接收到的数据。该电路实现了PC机与单片机系统之间的无线通信。
7 结束语
详细介绍了nRF24L01的引脚结构、工作模式、收发原理以及配置字,并以nRF24L01为核心设计了无线数据传输电路,结合RS232接口,实现了计算机与单片机系统之问的无线通信,为以后传输大量数据奠定了基础。另外,还应该考虑到速率和误码等其他因素
|