全球旧事资料 分类

rf24l01模块使用教程
RF24L01是由NORDIC生产的工作在24GHz25GHz的ISM频段的单片无线收发器芯片。无线收发器包括:频率发生器、增强型SchockBurst模式控制器、功率放大器、晶体振荡器、调制器和解调器。
输出功率频道选择和协议的设置可以通过SPI接口进行设置。几乎可以连接到各种单片机芯片,并完成无线数据传送工作。
极低的电流消耗:当工作在发射模式下发射功率为0dBm时电流消耗为113mA,接收模式时为123mA,掉电模式和待机模式下电流消耗更低。
rf24l01模块使用教程NRF24L01与控制器的通信采用的SPI通信协议,这个协议具体细节大家可能都懂,不懂的可以之间百度;他们的通信模型是这样的:
fNRF之间基本上可以互相通信,只要你地址设置的没有问题!他有六个通道,每一个通道都有自己的缓冲区,这六个通道可以同时跟不同的NRF进行通信,但是通信的两个之间的TX_ADDR和RX_ADDR一定要相同;
这幅图能够充分的说明这个问题;Poi
t1toPoi
t2,Poi
t1和Poi
t2的通道地址一定要一样;具体的设置在下面这个寄存器里面配置:
NRF24L01有RX模式,TX模式,Sta
dbyI模式,Sta
dbyII模式,掉电模式;他们之间的模式转换如下图:
f这张图看着可能没有一点感觉,比较乱,下面这张可能会比较清晰一点:
只要我们想切换到什幺模式就可以根据这个对寄存器进行配置;不过在配置的过程中,一点要注意适当的延时,我这次也被这个延时纠结了半天;
从Sta
dyMode转化到TxRxmode我这次就是可能延时的比较长,导致初始化一直没有成功,我刚开始一直的想法是,只要我等待的时间越长,他就越容易实现我的配置;看来这种观念需要改正下;
为了让整个传输稳定和快速,我可以可以设置自动应答模式;但是他只适合单通道模式:
f当发送方把数据发送给接收方,接收方会有一个短暂的延时大致130us,然后会高速发送方我接收了;然后接收方会产生一个中断信号,当发送方没有接收到这个ACk,他就会一直卡在这里;
说到他的中断,他有三种中断模式,一种是接收中断,二是发送完成中断,三发送超时中断;具体我们可以看STATU寄存器:
我们一般判断的主要是[64],RX_DR是接收到中断标志位,TX_DS发送完成中断标志位,MAX_RT超过最大发送次数标志位;这三位是可读可写的;写1的时候是清除中断标志位;这里还有一个预留位,我们一般不用,但是有时候我可以用他来测试看看是否写寄存器成功;当然,其他寄存器的预留位也可以来测试是否控制器与NRF模块通信是否正常。
另外还有FIFO_STATUS寄存器,他主要是检测r
好听全球资料 返回顶部