您的位置: 嵌入式在线 > 解决方案 > 工业控制 > 新型高速无线射频器件nRF24L01及其应用

新型高速无线射频器件nRF24L01及其应用

2007-10-18      嵌入式在线      收藏 | 打印

      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所示。

       空闲模式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个,常用的配置寄存器如表2所示。

 

       6 应用电路设计

       笔者用单片机和nRF24L01设计了一个无线数据传输电路,并通过串口将数据传输至计算机。

       硬件电路设计如图2所示。

       图2中发射和接收电路相同。使用时需在接收端加一个RS232接口,使其与计算机串口连接,将接收到的数据传送至计算机。该电路的工作原理:首先使接收电路上电,接着便处于接收状态等待数据的到来;然后运行VB程序,点击接收按钮;最后发射电路上电,并将单片机RAM内预先存放的数据"20H"发射出去,在1 ms内接收电路收到数据,同时VB界面显示出接收到的数据。该电路实现了PC机与单片机系统之间的无线通信。

       系统软件控制流程如图3所示。

       7 结束语

       详细介绍了nRF24L01的引脚结构、工作模式、收发原理以及配置字,并以nRF24L01为核心设计了无线数据传输电路,结合RS232接口,实现了计算机与单片机系统之问的无线通信,为以后传输大量数据奠定了基础。另外,还应该考虑到速率和误码等其他因素。

 

本文来源:国外电子技术    作者:时志云 盖建平等

隐藏原文↑


查看原文↓

验证码:  看不清?换一张

 

快乐大本营
工程师之星
高福东
擅长嵌入式开发及单片机应用开发
  • 王波涛  熟悉单片机及其接口技术
  • 朱伟平  熟悉51单片机系统LCD驱动程序编写及调试。
热门招聘
论坛热贴