词条 | nRF24L01无线模块 |
释义 | nRF24.L01是一款新型单片射频收发器件,工作于2.4 GHz~2.5 GHz ISM频段。内置频率合成器、功率放大器、晶体振荡器、调制器等功能模块,并融合了增强型ShockBurst技术,其中输出功率和通信频道可通过程序进行配置。nRF24L01功耗低,在以-6 dBm的功率发射时,工作电流也只有9 mA;接收时,工作电流只有12.3 mA,多种低功率工作模式(掉电模式和空闲模式)使节能设计更方便。 主要特性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。 引脚功能及描述nRF24L01的封装及引脚排列如图1、2所示。各引脚功能如下: CE:使能发射或接收; CSN,SCK,MOSI,MISO:SPI引脚端,微处理器可通过此引脚配置nRF24L01: IRQ:中断标志位; VDD:电源输入端; VSS:电源地: XC2,XC1:晶体振荡器引脚; VDD_PA:为功率放大器供电,输出为1.8 V; ANT1,ANT2:天线接口; IREF:参考电流输入。 引脚 名称 引脚功能 描述 1 CE 数字输入 RX或TX模式选择 2 CSN 数字输入 SPI片选信号 3 SCK 数字输入 SPI时钟 4 MOSI 数字输入 从SPI数据输入脚 5 MISO 数字输出 从SPI数据输出脚 6 IRQ 数字输出 可屏蔽中断脚 7 VDD 电源 电源(+3V) 8 VSS 电源 接地(0V) 9 XC2 模拟输出 晶体振荡器2脚 10 XC1 模拟输入 晶体振荡器1脚/外部时钟输入脚 11 VDD-PA 电源输出 给RF的功率放大器提供的+1.8V电源 12 ANT1 天线 天线接口1 13 ANT2 天线 天线接口2 14 VSS 电源 接地(0V) 15 VDD 电源 电源(+3V) 16 IREP 模拟输入 参考电流 17 VSS 电源 接地(0V) 18 VDD 电源 电源(+3V) 19 DVDD 电源输出 去耦电路电源正极端 20 VSS 电源 接地(0V) 工作模式通过配置寄存器可将nRF241L01配置为发射、接收、空闲及掉电四种工作模式,如表1所示。 模式 PWR_UP PRIM_RX CE FIFO寄存器状态 接收模式 1 1 1 - 发射模式 1 0 1 数据在TX FIFO 寄存器中 发射模式 1 0 1→0 停留在发送模式,直至数据发送完 待机模式2 1 0 1 TX FIFO 为空 待机模式1 1 - 0 无数据传输 掉电 0 - - -表 (1) 待机模式1主要用于降低电流损耗,在该模式下晶体振荡器仍然是工作的; 待机模式2则是在当FIFO寄存器为空且CE=1时进入此模式; 待机模式下,所有配置字仍然保留。 在掉电模式下电流损耗最小,同时nRF24L01也不工作,但其所有配置寄存器的值仍然保留。 工作原理发射数据时,首先将nRF24L01配置为发射模式:接着把接收节点地址TX_ADDR和有效数据TX_PLD按照时序由SPI口写入nRF24L01缓存区,TX_PLD必须在CSN为低时连续写入,而TX_ADDR在发射时写入一次即可,然后CE置为高电平并保持至少10μs,延迟130μs后发射数据;若自动应答开启,那么nRF24L01在发射数据后立即进入接收模式,接收应答信号(自动应答接收地址应该与接收节点地址TX_ADDR一致)。如果收到应答,则认为此次通信成功,TX_DS置高,同时TX_PLD从TX FIFO中清除;若未收到应答,则自动重新发射该数据(自动重发已开启),若重发次数(ARC)达到上限,MAX_RT置高,TX FIFO中数据保留以便再次重发;MAX_RT或TX_DS置高时,使IRQ变低,产生中断,通知MCU。最后发射成功时,若CE为低则nRF24L01进入空闲模式1;若发送堆栈中有数据且CE为高,则进入下一次发射;若发送堆栈中无数据且CE为高,则进入空闲模式2。 接收数据时,首先将nRF24L01配置为接收模式,接着延迟130μs进入接收状态等待数据的到来。当接收方检测到有效的地址和CRC时,就将数据包存储在RX FIFO中,同时中断标志位RX_DR置高,IRQ变低,产生中断,通知MCU去取数据。若此时自动应答开启,接收方则同时进入发射状态回传应答信号。最后接收成功时,若CE变低,则nRF24L01进入空闲模式1。 配置字SPI口为同步串行通信接口,最大传输速率为10 Mb/s,传输时先传送低位字节,再传送高位字节。但针对单个字节而言,要先送高位再送低位。与SPI相关的指令共有8个,使用时这些控制指令由nRF24L01的MOSI输入。相应的状态和数据信息是从MISO输出给MCU。 nRF24L0l所有的配置字都由配置寄存器定义,这些配置寄存器可通过SPI口访问。nRF24L01 的配置寄存器共有25个,常用的配置寄存器如表2所示。 地址(H) 寄存器名称 功能 00 CONFIG 设置24L01工作模式 01 EN_AA 设置接收通道及自动应答 02 EN_RXADDR 使能接收通道地址 03 SETUP_AW 设置地址宽度 04 SETUP_RETR 设置自动重发数据时间和次数 07 STATUS 状态寄存器,用来判定工作状态 0A~0F RX_ADDR_P0~P5 设置接收通道地址 10 TX_ADDR 设置接收接点地址 11~16 RX_PW_P0~P5 设置接收通道的有效数据宽度 表 (2) 6 nRF24L01应用原理框图 图(2) 跳频功能实现由于2.4G频段没有使用授权限制,目前家用电器、手机、无线网络都集中在此频段,干扰问题难以避免。如何避开在家庭市场中易与其它无线传输间(Bluetooth、HomeRF)发生干扰成了首要解决的问题。 跳频技术 (Frequency-Hopping Spread Spectrum; FHSS)是在2.4GHz频带以一定的频宽将其划分为若干个无线电频率信道(Radio Frequency Channel;RFC),并且以使用接收和发送两端一样的频率跳跃模式(Frequency Hopping)来接发讯号及防止数据撷取。其工作原理是,收发双方传输信号的载波按照预定规律进行离散变化。以达到避开干扰,完成传输。简单的说,跳频技术FHSS不是抑制干扰而是容忍干扰。图3是跳频实现的流程图。 图 (3) |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。