您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > nRF24L01的工作原理
2.2.4工作原理发射数据时,首先将nRF24L01配置为发射模式:接着把接收节点地址TX_ADDR和有效数据TX_PLD按照时序由SPI口写入nRF24L01缓存区,TX_PLD必须在CSN为低时连续写入,而TX_ADDR在发射时写入一次即可,然后CE置为高电平并保持至少10μs,延迟130μs后发射数据;若自动应答开启,那么nRF24L01在发射数据后立即进入接收模式,接收应答信号(自动应答接收地址应该与接收节点地址TX_ADDR一致)。如果收到应答,则认为此次通信成功,TX_DS置高,同时TX_PLD从TXFIFO中清除;若未收到应答,则自动重新发射该数据(自动重发已开启),若重发次数(ARC)达到上限,MAX_RT置高,TXFIFO中数据保留以便在次重发;MAX_RT或TX_DS置高时,使IRQ变低,产生中断,通知MCU。最后发射成功时,若CE为低则nRF24L01进入空闲模式1;若发送堆栈中有数据且CE为高,则进入下一次发射;若发送堆栈中无数据且CE为高,则进入空闲模式2。接收数据时,首先将nRF24L01配置为接收模式,接着延迟130μs进入接收状态等待数据的到来。当接收方检测到有效的地址和CRC时,就将数据包存储在RXFIFO中,同时中断标志位RX_DR置高,IRQ变低,产生中断,通知MCU去取数据。若此时自动应答开启,接收方则同时进入发射状态回传应答信号。最后接收成功时,若CE变低,则nRF24L01进入空闲模式1。在写寄存器之前一定要进入待机模式或掉电模式。如下图,给出SPI操作及时序图:图2.4SPI读操作图2.5SPI写操作2.2.5配置字SPI口为同步串行通信接口,最大传输速率为10Mb/s,传输时先传送低位字节,再传送高位字节。但针对单个字节而言,要先送高位再送低位。与SPI相关的指令共有8个,使用时这些控制指令由nRF24L01的MOSI输入。相应的状态和数据信息是从MISO输出给MCU。nRF24L0l所有的配置字都由配置寄存器定义,这些配置寄存器可通过SPI口访问。nRF24L01的配置寄存器共有25个,常用的配置寄存器如表2所示。表2:常用配置寄存器地址(H)寄存器名称功能00CONFIG设置24L01工作模式01EN_AA设置接收通道及自动应答02EN_RXADDR使能接收通道地址03SETUP_AW设置地址宽度04SETUP_RETR设置自动重发数据时间和次数07STATUS状态寄存器,用来判定工作状态0A~0FRX_ADDR_P0~P5设置接收通道地址10TX_ADDR设置接收接点地址11~16RX_PW_P0~P5设置接收通道的有效数据宽度2.2.6nRF24L01模块原理图nRF24L01单端匹配网络:晶振,偏置电阻,去耦电容。CE1CSN2SCK3MOSI4MISO5IRQ6VDD7VSS8XC29XC110VDD_PA11ANT112ANT213VSS14VDD15IREF16VSS17VDD18DVDD19VSS20U1NRF24L01VDDC910nFC81nFC122pFR222KR11MX116MC222pFC32.2nFC44.7pFC733nFC61.0pFL33.9nHL18.2nHL22.7nHC51.5pF50omh,RFI/OCECSNSCKMOSIMISOIRQ图2.6nRF24L01单端50Ω射频输出电路原理图
本文标题:nRF24L01的工作原理
链接地址:https://www.777doc.com/doc-2884215 .html