1、 COPYRIGHT 2005 ALL RIGHTS RESERVED 迅通科技 TEL:+86 10 64390486 E-mail: 单片2.4G无线射频收发芯片 nRF24L01 = 特性 真正的GFSK单收发芯片 内置链路层 增强型ShockBurstTM 自动应答及自动重发功能 地址及CRC检验功能 数据传输率1或2Mbps SPI接口数据速率08Mbps 125个可选工作频道 很短的频道切换时间可用于跳频 与nRF 24XX系列完全兼容 可接受5V电平的输入 20脚QFN 4 4mm封装 极低的晶振要求60ppm 低成本电感和双面PCB板 工作电压1.93.6V 应用 无线鼠标键
2、盘游戏机操纵杆 无线门禁 无线数据通讯 安防系统 遥控装置 遥感勘测 智能运动设备 工业传感器 玩具 概述: nRF24L01是一款工作在2.42.5GHz世界通用ISM频段的单片无线收发器芯片无线收发器包括:频率发生器增强型SchockBurstTM模式控制器功率放大器晶体振荡器调制器解调器输出功率频道选择和协议的设置可以通过SPI接口进行设置 极低的电流消耗当工作在发射模式下发射功率为-6dBm时电流消耗为9.0mA接收模式时为12.3mA掉电模式和待机模式下电流消耗更低 快速参考数据 参数 数值 单位 最低供电电压 1.9 V最大发射功率 0 dBm最大数据传输率 2000 kbps 发
3、射模式下电流消耗0dBm 11.3 mA 接收模式下电流消耗2000kbps 12.3 mA温度范围 -40 +85 数据传输率为1000kbps下的灵敏度 -85 dBm掉电模式下电流消耗 900 nA表1 nRF24L01快速参考数据 COPYRIGHT 2005 ALL RIGHTS RESERVED 迅通科技 TEL:+86 10 64390486 E-mail: 引脚及其功能 引脚 名称 引脚功能 描述 1 CE 数字输入 RX或TX模式选择 2 CSN 数字输入 SPI片选信号 3 SCK 数字输入 SPI时钟 4 MOSI 数字输入 从SPI数据输入脚 5 MISO 数字输出
4、从SPI数据输出脚 6 IRQ 数字输出 可屏蔽中断脚 7 VDD 电源 电源+3V 8 VSS 电源 接地0V 9 XC2 模拟输出 晶体震荡器2脚 10 XC1 模拟输入 晶体震荡器1脚/外部时钟输入脚 11 VDD_PA 电源输出 给RF的功率放大器提供的+1.8V电源 12 ANT1 天线 天线接口1 13 ANT2 天线 天线接口2 14 VSS 电源 接地0V 15 VDD 电源 电源+3V 16 IREF 模拟输入 参考电流 17 VSS 电源 接地0V 18 VDD 电源 电源+3V 19 DVDD 电源输出 去耦电路电源正极端 20 VSS 电源 接地0V 表3 nRF24L
5、01引脚功能 图2 引脚封装 COPYRIGHT 2005 ALL RIGHTS RESERVED 迅通科技 TEL:+86 10 64390486 E-mail: 术语表 术语 描述 ACK 确认信号应答信号 ART 自动重发 CE 芯片使能 CLK 时钟信号 CRC 循环冗余校验 CSN 片选非 ESB 增强型ShockBrustTMGFSK 高斯键控频移 IRQ 中断请求 ISM 工业科学医学 LNA 低噪声放大 LSB 最低有效位 LSByte 最低有效字节 Mbps 兆位/秒 MCU 微控制器 MISO 主机输入从机输出 MOSI 主机输出从机输入 MSB 最高有效位 MSByte
6、 最高有效字节 PCB 印刷电路板 PER 数据包误码率 PID 数据包识别位 PLD 载波 PRX 接收源 PTX 发射源 PWR_DWN 掉电 PWR_UP 上电 RX 接收 RX_DR 接收数据准备就绪 SPI 串行可编程接口 TX 发送 TX_DS 已发送数据 表5术语表 功能描述 工作模式 nRF24L01可以设置为以下几种主要的模式 模式 PWR_UP PRIM_RX CE FIFO寄存器状态 接收模式 1 1 1 - 发送模式 1 0 1 数据在TX FIFO寄存器中 发送模式 1 0 1 0 停留在发送模式直至数据发送完 待机模式II 1 0 1 TX FIFO为空 待机模式I
7、 1 - 0 无数据传输 掉电模式 0 - - - 表6 nRF24L01主要工作模式 关于nRF24L01 I/O脚更详细的描述请参见下面的表7 COPYRIGHT 2005 ALL RIGHTS RESERVED 迅通科技 TEL:+86 10 64390486 E-mail: nRF24L01在不同模式下的引脚功能 引脚名称 方向 发送模式 接收模式 待机模式 掉电模式 CE 输入 高电平10us 高电平 低电平 - CSN 输入 SPI片选使能低电平使能 SCK 输入 SPI时钟 MOSI 输入 SPI串行输入 MISO 三态输出 SPI串行输出 IRQ 输出 中断低电平使能 表7
8、nRF24L01引脚功能 待机模式 待机模式I在保证快速启动的同时减少系统平均消耗电流在待机模式I下晶振正常工作在待机模式II下部分时钟缓冲器处在工作模式当发送端TX FIFO寄存器为空并且CE为高电平时进入待机模式II在待机模式期间寄存器配置字内容保持不变 掉电模式 在掉电模式下,nRF24L01各功能关闭保持电流消耗最小进入掉电模式后nRF24L01停止工作但寄存器内容保持不变启动时间见表格13掉电模式由寄存器中PWR_UP位来控制 数据包处理方式 nRF24L01有如下几种数据包处理方式 null ShockBurstTM与nRF2401 nRF24E1 nRF2402 nRF24E2数
9、据传输率为1Mbps时相同 null 增强型ShockBurstTM模式 ShockBurstTM模式 ShockBurst模式下nRF24L01可以与成本较低的低速MCU相连高速信号处理是由芯片内部的射频协议处理的nRF24L01提供SPI接口数据率取决于单片机本身接口速度ShockBurst模式通过允许与单片机低速通信而无线部分高速通信减小了通信的平均消耗电流 在ShockBurstTM接收模式下当接收到有效的地址和数据时IRQ通知MCU随后MCU可将接收到的数据从RX FIFO寄存器中读出 在ShockBurstTM发送模式下nRF24L01自动生成前导码及CRC校验参见表格12数据发送
10、完毕后IRQ通知MCU减少了MCU的查询时间也就意味着减少了MCU 的工作量同时减少了软件的开发时间nRF24L01内部有三个不同的RX FIFO寄存器6个通道共享此寄存器和三个不同的TX FIFO寄存器在掉电模式下待机模式下和数据传输的过程中MCU可以随时访问FIFO寄存器这就允许SPI接口可以以低速进行数据传送并且可以应用于MCU硬件上没有SPI接口的情况下 增强型的ShockBurstTM模式 增强型ShockBurstTM模式可以使得双向链接协议执行起来更为容易有效典型的双向链接为发送方要求终端设备在接收到数据后有应答信号以便于发送方检测有无数据丢失一旦数据丢失则通过重新发送功能将丢失
11、的数据恢复增强型的ShockBurstTM模式可以同时控制应答及重发功能而无需增加MCU工作量 COPYRIGHT 2005 ALL RIGHTS RESERVED 迅通科技 TEL:+86 10 64390486 E-mail: 图4 nRF24L01在星形网络中的结构图 nRF24L01在接收模式下可以接收6路不同通道的数据见图4每一个数据通道使用不同的地址但是共用相同的频道也就是说6个不同的nRF24L01设置为发送模式后可以与同一个设置为接收模式的nRF24L01进行通讯而设置为接收模式的nRF24L01可以对这6个发射端进行识别数据通道0是唯一的一个可以配置为40位自身地址的数据通
12、道15数据通道都为8位自身地址和32位公用地址所有的数据通道都可以设置为增强型ShockBurst模式 nRF24L01在确认收到数据后记录地址并以此地址为目标地址发送应答信号在发送端数据通道0被用做接收应答信号因此数据通道0的接收地址要与发送端地址相等以确保接收到正确的应答信号见图5 选择地址举例 图5应答地址确定举例 nRF24L01配置为增强型的ShockBurstTM发送模式下时只要MCU有数据要发送nRF24L01就会启动ShockBurstTM模式来发送数据在发送完数据后nRF24L01转到接收模式并等待终端的应答信号如果没有收到应答信号nRF24L01将重发相同的数据包直到收到应
13、答信号或重发次数超过SETUP_RETR_ARC寄存器中设置的值为止如果重发次数超过了设定值则产生MAX_RT中断 只要收到确认信号nRF24L01就认为最后一包数据已经发送成功接收方已经收到数据把TX FIFO中的数据清除掉并产生TX_DS中断IRQ引脚置高 COPYRIGHT 2005 ALL RIGHTS RESERVED 迅通科技 TEL:+86 10 64390486 E-mail: 在增强型ShockBurstTM模式下nRF24L01有如下的特征 null 当工作在应答模式时快速的空中传输及启动时间极大的降低了电流消耗 null 低成本nRF24L01集成了所有高速链路层操作比
14、如重发丢失数据包和产生应答信号无需单片机硬件上一定有SPI口与其相连SPI接口可以利用单片机通用I/O口进行模拟 null 由于空中传输时间很短极大的降低了无线传输中的碰撞现象 null 由于链路层完全集成在芯片上非常便于软硬件的开发 增强型ShockBurstTM发送模式 1 配置寄存器位PRIM_RX为低 2 当MCU有数据要发送时接收节点地址TX_ADDR和有效数据(TX_PLD)通过SPI接口写入nRF24L01发送数据的长度以字节计数从MCU写入TX FIFO当CSN为低时数据被不断的写入发送端发送完数据后将通道0设置为接收模式来接收应答信号其接收地址(RX_ADDR_P0)与接收端
15、地址(TX_ADDR)相同例在图5中数据通道5的发送端(TX5)及接收端(RX)地址设置如下 TX5 TX_ADDR=0xB3B4B5B605 TX5 RX_ADDR_P0=0xB3B4B5B605 RX RX_ADDR_P5=0xB3B4B5B605 3 设置CE为高启动发射CE高电平持续时间最小为10 us 4 nRF24L01 ShockBurstTM模式 null 无线系统上电 null 启动内部16MHz时钟 null 无线发送数据打包见数据包描述 null 高速发送数据由MCU设定为1Mbps或2Mbps 5 如果启动了自动应答模式自动重发计数器不等于0 ENAA_P0=1无线芯片
16、立即进入接收模式如果在有效应答时间范围内收到应答信号则认为数据成功发送到了接收端此时状态寄存器的TX_DS位置高并把数据从TX FIFO中清除掉如果在设定时间范围内没有接收到应答信号则重新发送数据如果自动重发计数器ARC_CNT溢出超过了编程设定的值则状态寄存器的MAX_RT位置高不清除TX FIFO中的数据当MAX_RT或TX_DS为高电平时IRQ引脚产生中断IRQ中断通过写状态寄存器来复位见中断章节如果重发次数在达到设定的最大重发次数时还没有收到应答信号的话在MAX_RX中断清除之前不会重发数据包数据包丢失计数器(PLOS_CNT)在每次产生MAX_RT中断后加一也就是说重发计数器ARC_
17、CNT计算重发数据包次数PLOS_CNT计算在达到最大允许重发次数时仍没有发送成功的数据包个数 6 如果CE置低则系统进入待机模式I如果不设置CE为低则系统会发送TX FIFO寄存器中下一包数据如果TX FIFO寄存器为空并且CE为高则系统进入待机模式II. 7 如果系统在待机模式II当CE置低后系统立即进入待机模式I. 增强型ShockBurstTM接收模式 1 ShockBurstTM接收模式是通过设置寄存器中PRIM_RX位为高来选择的准备接收数据的通道必须被使能EN_RXADDR寄存器所有工作在增强型ShockBurstTM模式下的数据通道的自动应答功能是由(EN_AA寄存器)来使能的
18、有效数据宽度是由RX_PW_Px寄存器来设置的地址的建立过程见增强型ShockBurstTM发送章节 2 接收模式由设置CE为高来启动 3 130us后nRF24L01开始检测空中信息 4 接收到有效的数据包后地址匹配CRC检验正确数据存储在RX_FIFO中同时RX_DR位置高并产生中断状态寄存器中RX_P_NO位显示数据是由哪个通道接收到的 5 如果使能自动确认信号则发送确认信号 6 MCU设置CE脚为低进入待机模式I低功耗模式 7 MCU将数据以合适的速率通过SPI口将数据读出 8 芯片准备好进入发送模式接收模式或掉电模式 两种数据双方向的通讯方式 如果想要数据在双方向上通讯,PRIM_R
19、X寄存器必须紧随芯片工作模式的变化而变化处理器必须保证PTX和PRX端的同步性在RX_FIFO和TX_FIFO寄存器中可能同时存有数据 COPYRIGHT 2005 ALL RIGHTS RESERVED 迅通科技 TEL:+86 10 64390486 E-mail: 自动应答RX 自动应答功能减少了外部MCU的工作量并且在鼠标/键盘等应用中也可以不要求硬件一定有SPI接口因此降低成本减少电流消耗自动重应答功能可以通过SPI口对不同的数据通道分别进行配置 在自动应答模式使能的情况下收到有效的数据包后系统将进入发送模式并发送确认信号发送完确认信号后系统进入正常工作模式工作模式由PRIM_RX
20、位和CE引脚决定 自动重发功能ART (TX) 自动重发功能是针对自动应答系统的发送方SETUP_RETR寄存器设置启动重发数据的时间长度在每次发送结束后系统都会进入接收模式并在设定的时间范围内等待应答信号接收到应答信号后系统转入正常发送模式如果TX FIFO中没有待发送的数据且CE脚电平为低则系统将进入待机模式I如果没有收到确认信号则系统返回到发送模式并重发数据直到收到确认信号或重发次数超过设定值达到最大的重发次数有新的数据发送或PRIM_RX寄存器配置改变时丢包计数器复位 数据包识别和CRC校验应用于增强型ShockBurstTM模式下 每一包数据都包括两位的PID数据包识别来识别接收的数
21、据是新数据包还是重发的数据包PID识别可以防止接收端同一数据包多次送入MCU在发送方每从MCU取得一包新数据后PID值加一PID和CRC校验应用在接收方识别接收的数据是重发的数据包还是新数据包如果在链接中有一些数据丢失了则PID值与上一包数据的PID值相同如果一包数据拥有与上一包数据相同的PID值nRF24L01将对两包数据的CRC值进行比较如果CRC值也相同的话就认为后面一包是前一包的重发数据包而被舍弃 1接收方 接收方对新接收数据包的PID值与上一包进行比较如果PID值不同则认为接收的数据包是新数据包如果PID值与上一包相同则新接收的数据包有可能与前一包相同接收方必须确认CRC值是否相等如
22、果CRC值与前一包数据的CRC值相等则认为是同一包数据并将其舍弃 2发送方 每发送一包新的数据则发送方的PID值加一 图6 PID值生成和检测 CRC校验的长度是通过SPI接口进行配置的一定要注意CRC计算范围包括整个数据包地址PIDCOPYRIGHT 2005 ALL RIGHTS RESERVED 迅通科技 TEL:+86 10 64390486 E-mail: 和有效数据等若CRC校验错误则不会接收数据包这一点是接收数据包的附加要求在上图没有说明 载波检测CD 当接收端检测到射频范围内的信号时将CD置高否则CD为低内部的CD信号在写入寄存器之前是经过滤波的内部CD高电平状态至少保持12
23、8us以上 在增强型ShockBurstTM模式中只有当发送模块没有成功发送数据时推荐使用CD检测功能如果发送端PLOS_CNT显示数据包丢失率太高时可将其设置位接收模式检测CD值如果CD为高说明通道出现了拥挤现象需要更改通信频道如果CD为低电平状态距离超出通信范围可保持原有通信频道但需作其它调整 数据通道 nRF24L01配置为接收模式时可以接收6路不同地址相同频率的数据每个数据通道拥有自己的地址并且可以通过寄存器来进行分别配置 数据通道是通过寄存器EN_RXADDR来设置的默认状态下只有数据通道0和数据通道1是开启状态的 每一个数据通道的地址是通过寄存器RX_ADDR_Px来配置的通常情况
24、下不允许不同的数据通道设置完全相同的地址 数据通道0有40位可配置地址数据通道15的地址为32位共用地址+各自的地址最低字节图7所示的是数据通道15的地址设置方法举例所有数据通道可以设置为多达40位但是15数据通道的最低位必须不同 图7 通道05的地址设置 当从一个数据通道中接收到数据并且此数据通道设置为应答方式的话则nRF24L01在收到数据后产生应答信号此应答信号的目标地址为接收通道地址 寄存器配置有些是针对所有数据通道的有些则是针对个别的如下设置举例是针对所有数据通道的 CRC使能/禁止 CRC计算 接收地址宽度 频道设置 无线数据通信速率 LNA 增益 射频输出功率 寄存器配置 COP
25、YRIGHT 2005 ALL RIGHTS RESERVED 迅通科技 TEL:+86 10 64390486 E-mail: nRF24L01所有配置都在配置寄存器中所有寄存器都是通过SPI口进行配置的 SPI接口 SPI接口是标准的SPI接口其最大的数据传输率为10Mbps大多数寄存器是可读的 SPI指令设置 SPI接口可能用到的指令在下面有所说明CSN为低后SPI接口等待执行指令每一条指令的执行都必须通过一次CSN由高到低的变化 SPI指令格式 参看图8及图9 指令名称 指令格式 操作 R_REGISTER 000A AAAA 读配置寄存器AAAAA指出读操作的寄存器地址 W_REG
26、ISTER 001A AAAA 写配置寄存器AAAAA指出写操作的寄存器地址 只有在掉电模式和待机模式下可操作 R_RX_PAYLOAD 0110 0001 读RX有效数据1-32字节读操作全部从字节0开始当读RX有效数据完成后FIFO寄存器中有效数据被清除 应用于接收模式下 W_RX_PAYLOAD 1010 0000 写TX有效数据1-32字节写操作从字节0开始 应用于发射模式下 FLUSH_TX 1110 0001 清除TX FIFO寄存器应用于发射模式下 FLUSH_RX 1110 0010 清除RX FIFO寄存器应用于接收模式下 在传输应答信号过程中不应执行此指令也就是说若传输应答
27、信号过程中执行此指令的话将使得应答信号不能被完整的传输 REUSE_TX_PL 1110 0011 重新使用上一包有效数据当CE为高过程中数据包被不断的重新发射 在发射数据包过程中必须禁止数据包重利用功能 NOP 1111 1111 空操作可以用来读状态寄存器 图8 nRF24L01 SPI串行口指令设置 R_REGISTER和W_REGISTER寄存器可能操作单字节或多字节寄存器当访问多字节寄存器时首先要读/写的是最低字节的高位在所有多字节寄存器被写完之前可以结束写SPI 操作在这种情况下没有写完的高字节保持原有内容不变例如RX_ADDR_P0寄存器的最低字节可以通过写一个字节给寄存器RX_
28、ADDR_P0来改变在CSN状态由高变低后可以通过MISO来读取状态寄存器的内容 中断 nRF24L01的中断引脚IRQ为低电平触发当状态寄存器中TX_DS RX_DR或MAX_RT为高时触发中断当MCU给中断源写1时中断引脚被禁止可屏蔽中断可以被IRQ中断屏蔽通过设置可屏蔽中断位为高则中断响应被禁止默认状态下所有的中断源是被禁止的 SPI时序 图8 9 10和表9 10给出了SPI操作及时序在写寄存器之前一定要进入待机模式或掉电模式在图8至图10中用到了下面的符号 Cn-SPI指令位 Sn-状态寄存器位 Dn-数据位备注由低字节到高字节每个字节中高位在前 图8 SPI读操作 COPYRIGH
29、T 2005 ALL RIGHTS RESERVED 迅通科技 TEL:+86 10 64390486 E-mail: 图9 SPI写操作 图10 SPI NOP 操作时序图 表9 SPI参考时间Cload=5pF 表10 SPI参考时间Cload=10pF COPYRIGHT 2005 ALL RIGHTS RESERVED 迅通科技 TEL:+86 10 64390486 E-mail: 寄存器地址 所有未定义位可以被读出其值为0 地址 参数 位 复位值 类型 描述 00 寄存器 配置寄存器 reserved 7 0 R/W 默认为0 MASK_RX_DR 6 0 R/W 可屏蔽中断R
30、X_RD 1 IRQ引脚不显示RX_RD中断 0 RX_RD中断产生时IRQ引脚电平为低 MASK_TX_DS 5 0 R/W 可屏蔽中断TX_DS 1 IRQ引脚不显示TX_DS中断 0 TX_DS中断产生时IRQ引脚电平为低 MASK_MAX_RT 4 0 R/W 可屏蔽中断MAX_RT 1 IRQ引脚不显示TX_DS中断 0 MAX_RT中断产生时IRQ引脚电平为低 EN_CRC 3 1 R/W CRC使能如果EN_AA中任意一位为高则EN_CRC强迫为高 CRCO 2 0 R/W CRC模式 0-8位CRC校验 1-16位CRC校验 PWR_UP 1 0 R/W 1:上电 0:掉电 P
31、RIM_RX 0 0 R/W 1:接收模式 0:发射模式 01 EN_AA Enhanced ShockBurstTM使能自动应答功能 此功能禁止后可与nRF2401通讯 Reserved 7:6 00 R/W 默认为0 ENAA_P5 5 1 R/W 数据通道5自动应答允许 ENAA_P4 4 1 R/W 数据通道4自动应答允许 ENAA_P3 3 1 R/W 数据通道3自动应答允许 ENAA_P2 2 1 R/W 数据通道2自动应答允许 ENAA_P1 1 1 R/W 数据通道1自动应答允许 ENAA_P0 0 1 R/W 数据通道0自动应答允许 02 EN_RXADDR 接收地址允许 R
32、eserved 7:6 00 R/W 默认为00 ERX_P5 5 0 R/W 接收数据通道5允许 ERX_P4 4 0 R/W 接收数据通道4允许 ERX_P3 3 0 R/W 接收数据通道3允许 ERX_P2 2 0 R/W 接收数据通道2允许 ERX_P1 1 1 R/W 接收数据通道1允许 ERX_P0 0 1 R/W 接收数据通道0允许 03 SETUP_AW 设置地址宽度所有数据通道 Reserved 7:2 00000 R/W 默认为00000 AW 1:0 11 R/W 接收/发射地址宽度 00-无效 01-3字节宽度 10-4字节宽度 11-5字节宽度 04 SETUP_RE
33、TR 建立自动重发 COPYRIGHT 2005 ALL RIGHTS RESERVED 迅通科技 TEL:+86 10 64390486 E-mail: ARD 7:4 0000 R/W 自动重发延时 0000-等待250+86us 0001-等待500+86us 0010-等待750+86us 1111-等待4000+86us (延时时间是指一包数据发送完成到下一包数据开始发射之间的时间间隔) ARC 3:0 0011 R/W 自动重发计数 0000-禁止自动重发 0000-自动重发一次 0000-自动重发15次 05 RF_CH 射频通道 Reserved 7 0 R/W 默认为0 R
34、F_CH 6:0 0000010 R/W 设置nRF24L01工作通道频率 06 RF_SETUP R/W 射频寄存器 Reserved 7:5 000 R/W 默认为000 PLL_LOCK 4 0 R/W PLL_LOCK允许仅应用于测试模式 RF_DR 3 1 R/W 数据传输率 0 1Mbps 1 2 Mbps RF_PWR 2:1 11 R/W 发射功率 00 -18dBm 01 -12dBm 10 -6dBm 11 0dBm LNA_HCURR 0 1 R/W 低噪声放大器增益 07 STATUS 状态寄存器 Reserved 7 0 R/W 默认为0 RX_DR 6 0 R/W
35、接收数据中断当接收到有效数据后置一 写1清除中断 TX_DS 5 0 R/W 数据发送完成中断当数据发送完成后产生中断如果工作在自动应答模式下只有当接收到应答信号后此位置一 写1清除中断 MAX_RT 4 0 R/W 达到最多次重发中断 写1清除中断 如果MAX_RT中断产生则必须清除后系统才能进行通讯 RX_P_NO 3:1 111 R 接收数据通道号 000-101:数据通道号 110:未使用 111:RX FIFO 寄存器为空 TX_FULL 0 0 R TX FIFO寄存器满标志 1:TX FIFO 寄存器满 0: TX FIFO 寄存器未满,有可用空间 08 OBSERVE_TX 发
36、送检测寄存器 PLOS_CNT 7:4 0 R 数据包丢失计数器当写RF_CH寄存器时此寄COPYRIGHT 2005 ALL RIGHTS RESERVED 迅通科技 TEL:+86 10 64390486 E-mail: 存器复位当丢失15个数据包后此寄存器重启 ARC_CNT 3:0 0 R 重发计数器发送新数据包时此寄存器复位 09 CD Reserved 7:1 000000 R CD 0 0 R 载波检测 0A RX_ADDR_P0 39:0 0xE7E7E7E7E7 R/W 数据通道0接收地址最大长度:5个字节先写低字节所写字节数量由SETUP_AW设定 0B RX_ADDR_
37、P1 39:0 0xC2C2C2C2C2 R/W 数据通道1接收地址最大长度:5个字节先写低字节所写字节数量由SETUP_AW设定 0C RX_ADDR_P2 7:0 0xC3 R/W 数据通道2接收地址最低字节可设置高字节部分必须与RX_ADDR_P139:8相等 0D RX_ADDR_P3 7:0 0xC4 R/W 数据通道3接收地址最低字节可设置高字节部分必须与RX_ADDR_P139:8相等 0E RX_ADDR_P4 7:0 0xC5 R/W 数据通道4接收地址最低字节可设置高字节部分必须与RX_ADDR_P139:8相等 0F RX_ADDR_P5 7:0 0xC6 R/W 数据通
38、道5接收地址最低字节可设置高字节部分必须与RX_ADDR_P139:8相等 10 TX_ADDR 39:0 0xE7E7E7E7E7 R/W 发送地址先写低字节 在增强型ShockBurstTM模式下RX_ADDR_P0与此地址相等 11 RX_PW_P0 Reserved 7:6 00 R/W 默认为00 RX_PW_P0 5:0 0 R/W 接收数据通道0有效数据宽度(1到32字节) 0: 设置不合法 1: 1字节有效数据宽度 32: 32字节有效数据宽度 12 RX_PW_P1 Reserved 7:6 00 R/W 默认为00 RX_PW_P1 5:0 0 R/W 接收数据通道1有效数
39、据宽度(1到32字节) 0: 设置不合法 1: 1字节有效数据宽度 32: 32字节有效数据宽度 13 RX_PW_P2 Reserved 7:6 00 R/W 默认为00 RX_PW_P2 5:0 0 R/W 接收数据通道2有效数据宽度(1到32字节) 0: 设置不合法 1: 1字节有效数据宽度 32: 32字节有效数据宽度 14 RX_PW_P3 Reserved 7:6 00 R/W 默认为00 RX_PW_P3 5:0 0 R/W 接收数据通道3有效数据宽度(1到32字节) 0 设置不合法 COPYRIGHT 2005 ALL RIGHTS RESERVED 迅通科技 TEL:+86
40、10 64390486 E-mail: 1: 1字节有效数据宽度 32: 32字节有效数据宽度 15 RX_PW_P4 Reserved 7:6 00 R/W 默认为00 RX_PW_P4 5:0 0 R/W 接收数据通道4有效数据宽度(1到32字节) 0: 设置不合法 1: 1字节有效数据宽度 32: 32字节有效数据宽度 16 RX_PW_P5 Reserved 7:6 00 R/W 默认为00 RX_PW_P5 5:0 0 R/W 接收数据通道5有效数据宽度(1到32字节) 0: 设置不合法 1: 1字节有效数据宽度 32: 32字节有效数据宽度 17 FIFO_STATUS FIFO
41、 状态寄存器 Reserved 7 0 R/W 默认为0 TX_REUSE 6 0 R 若TX_REUSE=1则当CE位高电平状态时不断发送上一数据包TX_REUSE通过SPI 指令REUSE_TX_PL设置通过W_TX_PALOAD 或FLUSH_TX复位 TX_FULL 5 0 R TX FIFO寄存器满标志 1:TX FIFO寄存器满 0: TX FIFO寄存器未满有可用空间 TX_EMPTY 4 1 R TX FIFO寄存器空标志 1:TX FIFO寄存器空 0: TX FIFO寄存器非空 Reserved 3:2 00 R/W 墨认为00 RX_FULL 1 0 R RX FIFO寄
42、存器满标志 1:RX FIFO寄存器满 0: RX FIFO寄存器未满有可用空间 RX_EMPTY 0 1 R RX FIFO寄存器空标志 1:RX FIFO寄存器空 0: RX FIFO寄存器非空 N/A TX_PLD 255:0 W N/A RX_PLD 255:0 R 表11 nRF24L01寄存器地址 与nRF24XX兼容的寄存器配置 如何建立nRF24L01从nRF2401/ nRF2402/ nRF24E1/ nRF24E2接收数据 null 使用与nRF2401/ nRF2402/ nRF24E1/ nRF24E2相同的CRC配置 null 设置PRIM_RX位为1 null 相
43、应通道禁止自动应答功能 null 与发射模块使用相同的地址宽度 null 与发射模块使用相同的频道 null 在nRF24L01和nRF2401/ nRF2402/ nRF24E1/ nRF24E2两端都选择1Mbit/s的数据传输率 null 设置正确的数据宽度 null 设置PWR_UP和CE为高 COPYRIGHT 2005 ALL RIGHTS RESERVED 迅通科技 TEL:+86 10 64390486 E-mail: 如何建立nRF24L01发射nRF2401/ nRF2402/ nRF24E1/ nRF24E2接收数据 null 使用与nRF2401/ nRF2402/
44、nRF24E1/ nRF24E2相同的CRC配置 null 设置PRIM_RX位为0 null 设置自动重发计数器为0禁止自动重发功能 null 与nRF2401/ nRF2402/ nRF24E1/ nRF24E2使用相同的地址宽度 null 与nRF2401/ nRF2402/ nRF24E1/ nRF24E2使用相同的频道 null 在nRF24L01和nRF2401/ nRF2402/ nRF24E1/ nRF24E2两端都选择1Mbit/s的数据传输率 null 设置PWR_UP为高 null 发送与nRF2401/ nRF2402/ nRF24E1/ nRF24E2寄存器配置数据宽
45、度相同的数据长度 null 设置CE为高启动发射 打包描述 增强型ShockBurstTM模式下的数据包形式 前导码 地址3 5字节 9位标志位 数据1 32字节 CRC校验 0/1/2字节 ShockBurstTM模式下与nRF2401/ nRF2402/ nRF24E1/ nRF24E2相兼容的数据包形式 前导码 地址3 5字节 数据1 32字节 CRC 校验0/1/2字节 前导码 null 前导码用来检测0和1芯片在接收模式下去除前导码在发送模式下加入前导码 地址 null 地址内容为接收机地址 null 地址宽度可以是3 4或5字节宽度 null 地址可以对接收通道及发送通道分别进行配
46、置 null 从接收的数据包中自动去除地址 标志位 null PID数据包识别其中两位是用来每当接收到新的数据包后加一 null 七位保留用作将来与其它产品相兼容 null 当nRF24L01与nRF2401/ nRF24E1通讯时不起作用 数据 null 1 32字节宽度 CRC null CRC校验是可选的 null 0 2字节宽度的CRC校验 null 8位CRC校验的多项式是X8+X2+X+1 null 16位CRC校验的多项式是X16+X12+X5+1 表12数据包描述 重要的时序数据 下面是nRF24L01部分工作时序数据 nRF24L01时序信息 nRF24L01时序 最大值 最
47、小值 参数名 掉电模式待机模式 1.5ms Tpd2stby 待机模式发送/接收模式 130us Tstby2a CE高电平保持时间 10us Thce CSN为低电平CE上升沿的延迟时间 4us Tpece2csn 表13 nRF24L01工作时序 nRF24L01在掉电模式下转入发射模式或接收模式前必须经过1.5ms的待机模式注意当关掉电源VDD后寄存器配置内容丢失模块上电后需重新进行配置 COPYRIGHT 2005 ALL RIGHTS RESERVED 迅通科技 TEL:+86 10 64390486 E-mail: 增强型ShockBurstTM模式时序 图11增强型ShockB
48、urstTM模式发送一包数据时序2Mbps 图11所示是发送一包数据并收到应答信号的示意图数据送入发送模块部分没有在图中显示接收模块转入接收模式CE=1发射模块配置为发射模式CE=1持续至少10us 130us后启动发射再过37us后发送一字节数据发送结束后发送模块自动转入接收模式等待应答信号发送模块在收到应答信号后产生中断通知MCU IRQ (TX_DS)=TX-data sent(数据发送完)接收模块接收到数据包后产生中断通知MCU IRQ (RX_DR)=RX-data ready(数据接收完毕) 外围RF信息 天线输出 ANT1和ANT2输出脚给天线提供稳定的RF输出这两个脚必须连接到VDD的直流通路或者通过RF扼流圈或者通过天线双极的中心点在输出功率最大时0dBm推荐使用负载阻抗为15 +j