王朝百科
分享
 
 
 

nRF24L01无线模块

王朝百科·作者佚名  2010-09-26  
宽屏版  字体: |||超大  

主要特性GFSK调制:

硬件集成OSI链路层;

具有自动应答和自动再发射功能;

片内自动生成报头和CRC校验码;

数据传输率为l Mb/s或2Mb/s;

SPI速率为0 Mb/s~10 Mb/s;

125个频道:

与其他nRF24系列射频器件相兼容;

QFN20引脚4 mm×4 mm封装;

供电电压为1.9 V~3.6 V。

引脚功能及描述nRF24L01的封装及引脚排列如图1所示。各引脚功能如下:

nRF24L01无线模块

CE:使能发射或接收;

CSN,SCK,MOSI,MISO:SPI引脚端,微处理器可通过此引脚配置nRF24L01:

IRQ:中断标志位;

VDD:电源输入端;

VSS:电源地:

XC2,XC1:晶体振荡器引脚;

VDD_PA:为功率放大器供电,输出为1.8 V;

ANT1,ANT2:天线接口;

IREF:参考电流输入。

工作模式通过配置寄存器可将nRF241L01配置为发射、接收、空闲及掉电四种工作模式,如表1所示。

模式

PWR_UP

PRIM_RX

CE

FIFO寄存器状态

接收模式

1

1

1

-

发射模式

1

0

1

数据在TX FIFO 寄存器中

发射模式

1

0

1→0

停留在发送模式,直至数据发送完

待机模式2

1

0

1

TX FIFO 为空

待机模式1

1

-

0

无数据传输

掉电

0

-

-

-

表 (1)

待机模式1主要用于降低电流损耗,在该模式下晶体振荡器仍然是工作的;

待机模式2则是在当FIFO寄存器为空且CE=1时进入此没收;

待机模式下,所有配置字仍然保留。

在掉电模式下电流损耗最小,同时nRF24L01也不工作,但其所有配置寄存器的值仍然保留。

工作原理发射数据时,首先将nRF24L01配置为发射模式:接着把接收节点地址TX_ADDR和有效数据TX_PLD按照时序由SPI口写入nRF24L01缓存区,TX_PLD必须在CSN为低时连续写入,而TX_ADDR在发射时写入一次即可,然后CE置为高电平并保持至少10μs,延迟130μs后发射数据;若自动应答开启,那么nRF24L01在发射数据后立即进入接收模式,接收应答信号(自动应答接收地址应该与接收节点地址TX_ADDR一致)。如果收到应答,则认为此次通信成功,TX_DS置高,同时TX_PLD从TX FIFO中清除;若未收到应答,则自动重新发射该数据(自动重发已开启),若重发次数(ARC)达到上限,MAX_RT置高,TX FIFO中数据保留以便在次重发;MAX_RT或TX_DS置高时,使IRQ变低,产生中断,通知MCU。最后发射成功时,若CE为低则nRF24L01进入空闲模式1;若发送堆栈中有数据且CE为高,则进入下一次发射;若发送堆栈中无数据且CE为高,则进入空闲模式2。

接收数据时,首先将nRF24L01配置为接收模式,接着延迟130μs进入接收状态等待数据的到来。当接收方检测到有效的地址和CRC时,就将数据包存储在RX FIFO中,同时中断标志位RX_DR置高,IRQ变低,产生中断,通知MCU去取数据。若此时自动应答开启,接收方则同时进入发射状态回传应答信号。最后接收成功时,若CE变低,则nRF24L01进入空闲模式1。

配置字SPI口为同步串行通信接口,最大传输速率为10 Mb/s,传输时先传送低位字节,再传送高位字节。但针对单个字节而言,要先送高位再送低位。与SPI相关的指令共有8个,使用时这些控制指令由nRF24L01的MOSI输入。相应的状态和数据信息是从MISO输出给MCU。

nRF24L0l所有的配置字都由配置寄存器定义,这些配置寄存器可通过SPI口访问。nRF24L01

的配置寄存器共有25个,常用的配置寄存器如表2所示。

地址(H)

寄存器名称

功能

00

CONFIG

设置24L01工作模式

01

EN_AA

设置接收通道及自动应答

02

EN_RXADDR

使能接收通道地址

03

SETUP_AW

设置地址宽度

04

SETUP_RETR

设置自动重发数据时间和次数

07

STATUS

状态寄存器,用来判定工作状态

0A~0F

RX_ADDR_P0~P5

设置接收通道地址

10

TX_ADDR

设置接收接点地址

11~16

RX_PW_P0~P5

设置接收通道的有效数据宽度

表 (2)

6 nRF24L01应用原理框图

nRF24L01无线模块

图(2)

跳频功能实现由于2.4G频段没有使用授权限制,目前家用电器、手机、无线网络都集中在此频段,干扰问题难以避免。如何避开在家庭市场中易与其它无线传输间(Bluetooth、HomeRF)发生干扰成了首要解决的问题。

跳频技术 (Frequency-Hopping Spread Spectrum; FHSS)是在2.4GHz频带以一定的频宽将其划分为若干个无线电频率信道(Radio Frequency Channel;RFC),并且以使用接收和发送两端一样的频率跳跃模式(Frequency Hopping)来接发讯号及防止数据撷取。其工作原理是,收发双方传输信号的载波按照预定规律进行离散变化。以达到避开干扰,完成传输。简单的说,FHSS不是抑制干扰而是容忍干扰。图3是跳频实现的流程图。

nRF24L01无线模块

图 (3)

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
如何用java替换看不见的字符比如零宽空格​十六进制U+200B
 干货   2023-09-10
网页字号不能单数吗,网页字体大小为什么一般都是偶数
 干货   2023-09-06
java.lang.ArrayIndexOutOfBoundsException: 4096
 干货   2023-09-06
Noto Sans CJK SC字体下载地址
 干货   2023-08-30
window.navigator和navigator的区别是什么?
 干货   2023-08-23
js获取referer、useragent、浏览器语言
 干货   2023-08-23
oscache遇到404时会不会缓存?
 干货   2023-08-23
linux下用rm -rf *删除大量文件太慢怎么解决?
 干货   2023-08-08
刀郎新歌破世界纪录!
 娱乐   2023-08-01
js实现放大缩小页面
 干货   2023-07-31
生成式人工智能服务管理暂行办法
 百态   2023-07-31
英语学习:过去完成时The Past Perfect Tense举例说明
 干货   2023-07-31
Mysql常用sql命令语句整理
 干货   2023-07-30
科学家复活了46000年前的虫子
 探索   2023-07-29
英语学习:过去进行时The Past Continuous Tense举例说明
 干货   2023-07-28
meta name="applicable-device"告知页面适合哪种终端设备:PC端、移动端还是自适应
 干货   2023-07-28
只用css如何实现打字机特效?
 百态   2023-07-15
css怎么实现上下滚动
 干货   2023-06-28
canvas怎么画一个三角形?
 干货   2023-06-28
canvas怎么画一个椭圆形?
 干货   2023-06-28
canvas怎么画一个圆形?
 干货   2023-06-28
canvas怎么画一个正方形?
 干货   2023-06-28
中国河南省郑州市金水区蜘蛛爬虫ip大全
 干货   2023-06-22
javascript简易动态时间代码
 干货   2023-06-20
感谢员工的付出和激励的话怎么说?
 干货   2023-06-18
 
>>返回首页<<
 
 
静静地坐在废墟上,四周的荒凉一望无际,忽然觉得,凄凉也很美
© 2005- 王朝网络 版权所有