1 / 30
文档名称:

nrf24l01中文资料.doc

格式:doc   大小:638KB   页数:30页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

nrf24l01中文资料.doc

上传人:文库旗舰店 2018/5/3 文件大小:638 KB

下载得到文件列表

nrf24l01中文资料.doc

相关文档

文档介绍

文档介绍:nrf24l01中文资料
    , GHz~ GHz ISM频段。内置频率合成器、功率放大器、晶体振荡器、调制器等功能模块,并融合了增强型ShockBurst技术,其中输出功率和通信频道可通过程序进行配置。nRF24L01功耗低,在以-6 dBm的功率发射时,工作电流也只有9 mA;接收时, mA,多种低功率工作模式(掉电模式和空闲模式)使节能设计更方便。
nRF24L01主要特性
. GFSK调制:
. 硬件集成OSI链路层;
. 具有自动应答和自动再发射功能;
. 片内自动生成报头和CRC校验码;
. 数据传输率为l Mb/s或2Mb/s;
. SPI速率为0 Mb/s~10 Mb/s;
. 125个频道:
. 与其他nRF24系列射频器件相兼容;
. QFN20引脚4 mm×4 mm封装;
. V~ V。
nrf24l01引脚功能
nRF24L01的封装及引脚排列如图1所示。各引脚功能如下:
CE:使能发射或接收;
CSN,SCK,MOSI,MISO:SPI引脚端,微处理器可通过此引脚配置nRF24L01:
IRQ:中断标志位;
VDD:电源输入端;
VSS:电源地:
XC2,XC1:晶体振荡器引脚;
VDD_PA:为功率放大器供电, V;
ANT1,ANT2:天线接口;
IREF:参考电流输入。
nRF24L01工作模式
通过配置寄存器可将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从发送堆栈中清除;若未收到应答,则自动重新发射该数据(自动重发已开启),若重发次数(T)达到上限,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机与单片机系统之间的无线通信。
(NRF24L01)
[日期:2011-06-04] 来源:Linux社区作者:Linux
NRF24L01使用的SPI协议通信,这里并没有用到s3c