模块简介:
它是一款工作于2.4GHZ~2.5GHZISM频段,带功放通信距离可达上千米,近距离传输速度可达2Mbps,具有6通道且每通道都有自己的缓冲区,可以同时跟不同的NFR进行通信的无线收发模块。
工作模式:接收模式,发送模式,空闲模式,掉电模式。
数据发送接收流程:
发送数据时:首先将nRF24L01设置成发射模式,然后设置接收节点地址TX_ADDR和有效数据TX_PLD通过SPI口写入nRF24L01缓冲区,只有在CSN为低电平时TX_PLD才能连续写入,TX_ADDR在发射时设置一次即可,然后CE置高至少保持10us,Nrf24l01在延时130us后发射数据。如果开启的自动应答,则发送之后,自动变为接收模式,当接收应答信号,则认为本次通信成功,且TX_FIFO被清空,TX_DS置位,并触发中断,使IRQ引脚置低。如没有接收到应答信号,则重新发送数据(自动重发开启),若重发次数达到上限,则MAX_RT置高,TX_FIFO数据不被清空。并MAX_TX被置位,触发中断,使IRQ引脚为低。最后发射成功时,若CE为低则nRF24L01进入空闲模式1;若发送堆栈中有数据且CE为高,则进入下一次发射;若发送堆栈中无数据且CE为高,则进入空闲模式2。
接收数据时,第一步将nRF24L01设置为接收模式,并设置接收数据地址,接着延迟130μs进入接收状态等待数据的到来。如果接收方检测到了有效的地址和CRC,就将接收数据包存储在RX FIFO中,中断标志位RX_DR置高,产生中断,IRQ引脚变低。若此时自动应答开启,接收方则同时进入发射状态回传应答信号。最后接收成功时,若CE变低,则nRF24L01进入空闲模式1。注意只有频道和发送/接收地址设置成相同才可以通信。
CE: RX 或 TX 模式选择 CSN:SPI 片选信号
SCK :SPI 时钟 MOSI:从 SPI 数据输入脚
相应的寄存器