一、NRF24L01的相关介绍
1.2 引脚的介绍
关于SPI的引脚就不再说了,这里介绍其余的两个引脚:
CE 模块控制引脚:芯片开启信号,激活RX或TX模式
IRQ 模块中断信号输出引脚:其低电平有效,也就是中断时变为低电平,要使用中断时就设置为上拉输入。。我们也可以屏蔽中断信号,直接将这个引脚设置为下拉输入。在以下三种情况变低:
Tx FIFO 发完并且收到ACK(使能ACK情况下)
Rx FIFO 收到数据
达到最大重发次数
1.3 NRF工作模式的介绍
NRF24L01的工作模式,由CE和CONFIG寄存器(0X00)的PWR_UP(第1位)和PRIM_RX(第0位)位共同控制。
NRF24L01所处模式 |
PWR_UP位状态 |
PRIM_RX 位状态 |
CE | FIFO 寄存器状态 |
---|---|---|---|---|
关断模式 Shutdown | 0 | - | - | - |
待机模式 Standby | 1 | - | 0 | 无数据传输 |
发射空闲模式 Idle-TX | 1 | 0 | 1 | TX FIFO为空 |
发射模式 TX | 1 | 0 | 1 | 数据在TX FIFO寄存器中 停留在发送模式,直至发送完成 |
接收模式 RX | 1 | 1 | 1 | - |
1.3.1 Shutdown 关断工作模式
在Shutdown 工作模式下,Si24R1所有收发功能模块关闭,芯片停止工作,消耗电流最小,但所有内部寄存器值和FIFO值保持不变,仍可通过SPI实现对寄存器的读写。 设置CONFIG寄存器的PWR_UP位的值为0,芯片立即返回到Shutdown工作模式。
1.3.2 Standby 待机工作模式
在Standby 工作模式,只有晶体振荡器电路工作,保证了芯片在消耗较少电流的同 时能够快速启动。设置CONFIG寄存器下的PWR_UP位的值为1,芯片待时钟稳定后 进入Standby 模式。芯片的时钟稳定时间一般为1.5~2ms,与晶振的性能有关。当引脚 CE=1 时,芯片将由Standby 模式进入到 Idle-TX 或 RX 模式,当 CE=0 时,芯片将由 Idle-TX、TX 或 RX模式返回到Standby模式。
1.3.3 Idle-TX 发射空闲工作模式
在Idle-TX 工作模式下,晶体振荡器电路及时钟电路工作。相比于Standby模式, 芯片消耗更多的电流。当发送端TX FIFO寄存器为空,并且引脚CE=1时,芯片进入到 Idle-TX 模式。在该模式下,如果有新的数据包被送到TX FIFO中,芯片内部的电路将 立即启动,切换到TX模式将数据包发送。
在Standby 和 Idle-TX 工作模式下,所有内部寄存器值和 FIFO 值保持不变,仍可 通过SPI实现对寄存器的读写。
1.3.4 TX 发射工作模式
当需要发送数据时,需要切换到TX工作模式。芯片进入到TX工作模式的条件为: TX FIFO 中有数据, CONFIG寄存器的PWR_UP位的值为1,PRIM_RX位的值为0, 同时要求引脚CE上有一个至少持续10us的高脉冲。Idl