《nRF24L01点对点跳频技术应用》由会员分享,可在线阅读,更多相关《nRF24L01点对点跳频技术应用(6页珍藏版)》请在金锄头文库上搜索。
1、sbitMIS0=P1八6; SPI主机输出从机输出端sbitM0SI=P1A5; /SPI主机输出从机输入端sbitSCLK=P1A7; /SPI 时钟端sbitCE=P1A1; /RX/TX 模式选择端sbitCSN=P1A2; /SPI 片选端/就是 SSsbitIRQ=P1A4; / 可屏蔽中断端nRF24L01 点对点跳频技术应用(转载)分类:技术应用关键字:nRF24L01;射频;无线通信;跳频1 nRF24L01 概述nRF24L01是一款新型单片射频收发器件,工作于2.4 GHz2.5 GHz ISM频段。内置频率合成器、功率放大器、晶体振荡器、调制器等功能模块 , 并融合了增
2、强型 ShockBurst 技术,其中输出功率和通 信频道可通过程序进行配置。nRF24L01功耗低,在以-6 dBm的功率发射时,工作电流也只有9 mA;接收时,工作电流只有 12.3 mA ,多种低功率工作模式 (掉电模式和空闲模式 ) 使节能设计更方便。nRF24L01 主要特性如下:GFSK调制:硬件集成 0SI 链路层 ;具有自动应答和自动再发射功能 ;片内自动生成报头和 CRC校验码;数据传输率为 l Mb/s 或 2Mb/s;SPI 速率为 0 Mb/s 10 Mb/s;125 个频道:与其他nRF24系列射频器件相兼容;QFN20引脚4 mmx 4 mm圭寸装;供电电压为1.9
3、 V3.6 V 。2引脚功能及描述nRF24L01的封装及引脚排列如图1所示。各引脚功能如下h DkLJL)DI) VSS IRI I16nRF24IJlQF2门(1)13M)t I ACE使能发射或接收;CSNSCK MOSI, MISOSPI引脚端,微处理器可通过此引脚配置n RF24L01:IRQ:中断标志位;VDD电源输入端;VSS电源地:XC2XC1:晶体振荡器引脚;VDDPA为功率放大器供电,输出为 1.8 V;ANT1,ANT2 天线接口 ;IREF :参考电流输入。3工作模式1所示。通过配置寄存器可将 n RF241L01配置为发射、接收、空闲及掉电四种工作模式,如表模式PWR
4、_UPPRIM_RXCEFIFO寄存器状态接收模式111-发射模式101数据在TX FIFO寄存器中发射模式101 0停留在发送模式,直至数据发送完待机模式2101TX FIFO为空待机模式11-0无数据传输掉电0-表(1)待机模式1主要用于降低电流损耗,在该模式下晶体振荡器仍然是工作的;待机模式2则是在当FIFO寄存器为空且CE=1时进入此没收;待机模式下,所有配置字仍然保留。在掉电模式下电流损耗最小,同时n RF24L01也不工作,但其所有配置寄存器的值仍然保留。4工作原理发射数据时,首先将nRF24L01配置为发射模式:接着把接收节点地址 TX_ADDR和有效数据TX_PLD 按照时序由
5、SPI 口写入nRF24L01缓存区,TX_PLD必须在CSN为低时连续写入,而TX_ADDR在发射时写 入一次即可,然后 CE置为高电平并保持至少 10卩s,延迟130卩s后发射数据;若自动应答开启,那么 nRF24L01在发射数据后立即进入接收模式,接收应答信号(自动应答接收地址应该与接收节点地址TX_ADDF一致)。如果收到应答,则认为此次通信成功,TX_DS置高,同时TX_PLD从 TX FIFO中清除;若未收到应答,则自动重新发射该数据(自动重发已开启),若重发次数(ARC)达到上限,MAX_R置高,TX FIFO中数据保留以便在次重发;MAX_RT或 TX_DS置高时,使IRQ变低
6、,产生中断,通知 MCU最后 发射成功时,若CE为低则nRF24L01进入空闲模式1;若发送堆栈中有数据且 CE为高,则进入下一次发 射;若发送堆栈中无数据且 CE为高,则进入空闲模式 2。接收数据时,首先将nRF24L01配置为接收模式,接着延迟130卩s进入接收状态等待数据的到来。当接收方检测到有效的地址和CRC时,就将数据包存储在 RX FIFO中,同时中断标志位 RX_DR置高,IRQ变低,产生中断,通知 MCI去取数据。若此时自动应答开启,接收方则同时进入发射状态回传应答 信号。最后接收成功时,若CE变低,则nRF24L01进入空闲模式1。5配置字SPI 口为同步串行通信接口,最大传
7、输速率为10 Mb/s,传输时先传送低位字节,再传送高位字节。但针对单个字节而言,要先送高位再送低位。与SPI相关的指令共有8个,使用时这些控制指令由nRF24L01的MOSI输入。相应的状态和数据信息是从MISO输出给MCUnRF24L0l所有的配置字都由配置寄存器定义,这些配置寄存器可通过SPI 口访问。nRF24L01的配置寄存器共有 25个,常用的配置寄存器如表2所示。地址(H)寄存器名称功能00CONFIG设置24L01工作模式01EN_AA设置接收通道及自动应答02EN_RXADDR使能接收通道地址03SETUP_AW设置地址宽度04SETUP RETR设置自动重发数据时间和次数0
8、7STATUS状态寄存器,用来判定工作状态0A0FRX ADDR P0P5设置接收通道地址10TX ADDR设置接收接点地址1116RX PW P0P5设置接收通道的有效数据宽度表(2)6 n RF24L01应用原理框图7跳频功能实现由于2.4G频段没有使用授权限制,目前家用电器、手机、无线网络都集中在此频段,干扰问题难以 避免。如何避开在家庭市场中易与其它无线传输间( Bluetooth、HomeRF发生干扰成了首要解决的问题。跳频技术(Frequency-Hopping Spread Spectrum ; FHSS)是在2.4GHz频带以一定的频宽将其划分 为若干个无线电频率信道(Radio Frequency Channel ; RFC ,并且以使用接收和发送两端一样的频率跳 跃模式(Frequency Hopping )来接发讯号及防止数据撷取。其工作原理是,收发双方传输信号的载波按 照预定规律进行离散变化。以达到避开干扰,完成传输。简单的说,FHSS不是抑制干扰而是容忍干扰。图3是跳频实现的流程图。跳频发射流程图跳频接收流程图初使化单片机初使化单片机配置24L01为接收模式配置24L01为发射模式写数据并开启发送检测载波信号图(3)8结束语nRF24L01整体性能良好,使用方便。跳频功能的应该很好的解决了无线传输干扰问题,实际应用测试效果 良好。