nrf24l01模块使用教程

合集下载

nRF24L01 无线模块 说明书

nRF24L01 无线模块 说明书

nRF24L01 无线模块用户手册目录产品概述 (3)基本特性 (3)引脚接口说明 (4)模块尺寸 (6)nRF2401工作模式 (7)Enhanced ShockBurstTM收发模式 (7)Enhanced ShockBurstTM数据发送流程 (8)空闲模式 (9)关机模式 (9)nRF24L01模块参数设置 (9)主要参数设置 (10)程序设计分析 (10)nRF24L01初始化 (10)nRF24L01SPI写操作 (11)nRF24L01 SPI读操作 (11)nRF24L01写寄存器函数 (12)nRF24L01连续读多个寄存器函数 (12)nRF24L01连续写多个寄存器函数 (12)nRF24L01接收模式设置 (13)nRF24L01接收数据流程 (13)nRF24L01发送数据流程 (13)无线应用注意事项 (14)我们的承诺 (15)产品概述nRF24L01是挪威NordicVLSI公司出品的一款新型射频收发器件,采用4 mm×4 mm QFN20封装;nRF24L01工作在ISM频段:2.4~2.524 GHz。

且内置频率合成器、功率放大器、晶体振荡器、调制器等功能,并融合增强型ShockBurst技术,其中地址、输出功率和通信频道可通过程序进行配置,适合用于多机通信。

nRF24L01功耗很低,在以-6 dBm的功率发射时,工作电流也只有9 mA;而对应接收机的工作电流只有12.3 mA,多种低功率工作模式(掉电模式和空闲模式)使节能设计更方便。

nRF24L01在业界领先的低功耗特点使其特别适合采用钮扣电池供电的2.4G应用,整个解决方案包括链路层和MultiCeiver功能提供了比现有的 nRF24XX 更多的功能和更低的电源消耗,与目前的蓝牙技术相比在提供更高速率的同时,而只需花更小的功耗基本特性(1) 2.4Ghz全球开放ISM 频段免许可证使用(2) 最高工作速率2Mbps,高效GFSK调制,抗干扰能力强(3) 125频道,满足多点通信和跳频通信需要(4) 内置硬件CRC 检错和点对多点通信地址控制(5) 低功耗1.9 - 3.6V 工作,适合电池供电应用(6) 待机模式下状态为22uA;掉电模式下为900nA(7) 模块可软件设地址,只有收到本机地址时才会输出数据(提供中断指示),可直接接各种单片机使用,软件编程非常方便(8) 内置专门稳压电路,即使开关电源也有很好的通信效果(9) 标准DIP间距接口,便于嵌入式应用(10)具有自动应答机制,和CRC校验,数据通讯稳定可靠。

NRF24L01模块说明书

NRF24L01模块说明书
4L01NRF24L01NRF24L01NRF24L01NRF24L01NRF24L01NRF24L01NRF24L01
to…………………………………………………………………………………………………………totoVDD(TA=+85℃)-40℃to+85℃-40℃to+125℃
NRF24L01高速嵌入式无线数传模块高速嵌入式无线数传模块高速嵌入式无线数传模块高速嵌入式无线数传模块
200820082008200812121212202020202.4GHz2.4GHz2.4GHz2.4GHz全球开放ISM频段,最大0dBm发射功率,免许可证使用支持六路通道的数据接收低工作电压:1.91.91.91.9~3.6V3.6V3.6V3.6V低电压工作高速率:2Mbps,由于空中传输时间很短,极大的降低了无线传输中的碰撞现象(软件设置1Mbps或者2Mbps的空中传输速率)多频点:125频点,满足多点通信和跳频通信需要超小型:内置2.4GHz天线,体积小巧,15x29mm(包括天线)低功耗:当工作在应答模式通信时,快速的空中传输及启动时间,极大的降低了电流消耗。低应用成本:NRF24L01集成了所有与RF协议相关的高速信号处理部分,比如:自动重发丢失数据包和自动产生应答信号等,NRF24L01的SPI接口可以利用单片机的硬件SPI口连接或用单片机I/O口进行模拟,内部有FIFO可以与各种高低速微处理器接口,便于使用低成本单片机。便于开发:由于链路层完全集成在模块上,非常便于开发。自动重发功能,自动检测和重发丢失的数据包,重发时间及重发次数可软件控制
说明:1)VCC脚接电压范围为1.9V~3.6V之间,不能在这个区间之外,超过3.6V将会烧毁模块。推荐电压3.3V左右。(2)除电源VCC和接地端,其余脚都可以直接和普通的5V单片机IO口直接相连,无需电平转换。当然对3V左右的单片机更加适用了。(3)硬件上面没有SPI的单片机也可以控制本模块,用普通单片机IO口模拟SPI不需要单片机真正的串口介入,只需要普通的单片机IO口就可以了,当然用串口也可以了(a:a:a:a:与与与与51515151系列单片机系列单片机系列单片机系列单片机P0P0P0P0口连接时候口连接时候口连接时候口连接时候,,,,需要加需要加需要加需要加10K10K10K10K的上的上的上的上拉电阻拉电阻拉电阻拉电阻,,,,与其余口连接不需要。与其余口连接不需要。与其余口连接不需要。与其余口连接不需要。b:b:b:b:其他系列的单片机,如果是其他系列的单片机,如果是其他系列的单片机,如果是其他系列的单片机,如果是5V5V5V5V的,请参考该系列的,请参考该系列的,请参考该系列的,请参考该系列单片机单片机单片机单片机IOIOIOIO口输出电流大小,如果超过口输出电流大小,如果超过口输出电流大小,如果超过口输出电流大小,如果超过10mA10mA10mA10mA,需要串联,需要串联,需要串联,需要串联电阻分压,否则容易烧毁模块电阻分压,否则容易烧毁模块电阻分压,否则容易烧毁模块电阻分压,否则容易烧毁模块!!!!如果是如果是如果是如果是3.3V3.3V3.3V3.3V的,可以的,可以的,可以的,可以直接和直接和直接和直接和RF24RF24RF24RF24llll01010101模块的模块的模块的模块的IOIOIOIO口线连接。比如口线连接。比如口线连接。比如口线连接。比如AVRAVRAVRAVR系列单片机系列单片机系列单片机系列单片机

NRF24L01模块系列说明书

NRF24L01模块系列说明书

如果是5V 的,一般串接2K 的电阻 二、接口电路
说明: 1) VCC 脚接电压范围为 1.9V~3.6V 之间,不能在这个区间之外,超 过 3.6V 将会烧毁模块。推荐电压 3.3V 左右。 (2) 除电源 VCC 和接地端,其余脚都可以直接和普通的 5V 单片机 IO 口 直接相连,无需电平转换。当然对 3V 左右的单片机更加适用了。 (3) 硬件上面没有 SPI 的单片机也可以控制本模块,用普通单片机 IO 口模拟 SPI 不需要单片机真正的串口介入,只需要普通的单片机 IO 口 就可以了,当然用串口也可以了。 (4) 如果需要其他封装接口,比如密脚插针,或者其他形式的接口, 可以联系我们定做。 三、模块结构和引脚说明 NRF24L01 模块使用 Nordic 公司的 nRF24L01 芯片开发而成。
时也减小了整个系统的平均工作电流。 在 Enhanced ShockBurstTM 收发模式下, NRF24L01 自动处理字头 和 CRC 校验码。在接收数据时,自动把字头和 CRC 校验码移去。在送 数据时,自动加上字头和 CRC 校验码,在发送模式下,置 CE 为高,至 少 10us,将时发送过程完成后。 4.1.1.1 Enhanced ShockBurstTM 发射流程 A. 把接收机的地址和要发送的数据按时序送入 NRF24L01; B. 配置 CONFIG 寄存器,使之进入发送模式。C. 微控制器把 CE 置高 (至少 10us),激 发 NRF24L01 进行 Enhanced ShockBurstTM 发射; D. N24L01 的 Enhanced ShockBurstTM 发射(1) 给射频前端供电; (2) 射频数据打包(加字头、CRC 校验码); (3) 高速发射数据包; (4) 发射完成,NRF24L01 进入空闲状态。4.1.1.2 Enhanced ShockBurstTM 接收流程 A. 配置本机地址和要接收的数据包大小;B. 配置 CONFIG 寄存器,使之进入接收模式,把 CE 置高。 C. 130us 后,NRF24L01 进入监视状态,等待数据包的到来; D.收到 正确的数据包(正确的地址和 CRC 校验码),NRF2401 自动把字头、地址

NRF24L01使用方法

NRF24L01使用方法

四、 程序说明
4.1 发射:
/* PD3--20 脚--CE----模块芯片开启信号 激活 RX 或 TX PD2--19 脚--CSN---模块 SPI 片选信号 PC7--17 脚--SCK---模块 SPI 时钟信号 PC6--16 脚--MOSI--模块 SPI 输入信号 PC5--15 脚--MISO--模块 SPI 输出信号 PC4--14 脚--IRQ---模块可屏蔽中断信号 低电平有效 */ #include <NRF_2401C.h> #include <delay.h> uchar RevTempDate[5];//最后一位用来存放结束标志 uchar TxAddr[]={0x34,0x43,0x10,0x10,0x02};//发送地址 /*****************状态标志*****************************************/ uchar sta; //状态标志 单片机输出 单片机输出 单片机输出 单片机输出 单片机输入 单片机输入
写寄存器 TXFIFO
广东顺德春暖花开自动化开发设计工作室
伍耀斌
4.2 接收:
/* PD3--20 脚--CE----模块芯片开启信号 激活 RX 或 TX PD2--19 脚--CSN---模块 SPI 片选信号 PC7--17 脚--SCK---模块 SPI 时钟信号 PC6--16 脚--MOSI--模块 SPI 输入信号 PC5--15 脚--MISO--模块 SPI 输出信号 PC4--14 脚--IRQ---模块可屏蔽中断信号 低电平有效 */ #include <NRF_2401C.h> #include <delay.h> uchar RevTempDate[5];//最后一位用来存放结束标志 uchar TxAddr[]={0x34,0x43,0x10,0x10,0x02};//发送地址 /*****************状态标志*****************************************/ uchar sta; //状态标志 //RX_DR=sta^6; //TX_DS=sta^5; PLC_BitState.BitState0.Bit.M4=1; //MAX_RT=sta^4; struct PLC_BITSTATE { //-------------------------------------------union BITSTATE0 { char all; struct BIT00 { uchar M0:1;// uchar M1:1;// uchar M2:1;// uchar M3:1;// uchar MAX_RT:1;// uchar TX_DS:1;// uchar RX_DR:1;// uchar M7:1;// }Bit; }BitState0; }PLC_BitState; /*****************SPI 时序函数******************************************/ uchar NRFSPI(uchar date) { } /**********************NRF24L01 初始化函数*******************************/ void NRF24L01Int() { } /*****************SPI 读寄存器一字节函数*********************************/ 单片机输出 单片机输出 单片机输出 单片机输出 单片机输入 单片机输入

nRF24L01中文手册

nRF24L01中文手册
在 ShockBurstTM 接收模式下,当接收到有效的地址和数据时 IRQ 通知 MCU,随后 MCU 可将接收到 的数据从 RX FIFO 寄存器中读出。
在 ShockBurstTM 发送模式下,nRF24L01 自动生成前导码及 CRC 校验,参见表格 12。数据发送完毕 后 IRQ 通知 MCU。减少了 MCU 的查询时间,也就意味着减少了 MCU 的工作量同时减少了软件的开发 时间。nRF24L01 内部有三个不同的 RX FIFO 寄存器(6 个通道共享此寄存器)和三个不同的 TX FIFO 寄 存器。在掉电模式下、待机模式下和数据传输的过程中 MCU 可以随时访问 FIFO 寄存器。这就允许 SPI 接口可以以低速进行数据传送,并且可以应用于 MCU 硬件上没有 SPI 接口的情况下。
小心:静电敏感器件。操作时遵守防护规则。
COPYRIGHT ©2007 迅通科技 TEL 北京:+86 10 64390486 深圳:+86 755 26675941
6
术语表
迅通科技
术语
描述
ACK
确认信号(应答信号)
ART
自动重发
CE
芯片使能
CLK
迅 ShockBurstTM 模式: ShockBurst 模式下 nRF24L01 可以与成本较低的低速 MCU 相连。高速信号处理是由芯片内部的射频 协议处理的,nRF24L01 提供 SPI 接口,数据率取决于单片机本身接口速度。ShockBurst 模式通过允许与 单片机低速通信而无线部分高速通信,减小了通信的平均消耗电流。
工业传感器 玩具

低工作电压:1.9~3.6V
概述:

nRF24L01 是一款工作在 2.4~2.5GHz 世界通用 ISM 频段的单片无线收发器芯片。无线收发器包括:频

nRF24L01无线通信模块使用手册12要点

nRF24L01无线通信模块使用手册12要点

深圳市德普施科技有限公司nRF24L01无线通信模块使用手册一、模块简介该射频模块集成了NORDIC公司生产的无线射频芯片nRF24L01:1.支持2.4GHz的全球开放ISM频段,最大发射功率为0dBm2.2Mbps,传输速率高3.功耗低,等待模式时电流消耗仅22uA4.多频点(125个),满足多点通信及跳频通信需求5.在空旷场地,有效通信距离:25m(外置天线)、10m(PCB天线)6.工作原理简介:发射数据时,首先将nRF24L01配置为发射模式,接着把地址TX_ADDR和数据TX_PLD 按照时序由SPI口写入nRF24L01缓存区,TX_PLD必须在CSN为低时连续写入,而TX_ADDR在发射时写入一次即可,然后CE置为高电平并保持至少10μs,延迟130μs后发射数据;若自动应答开启,那么nRF24L01在发射数据后立即进入接收模式,接收应答信号。

如果收到应答,则认为此次通信成功,TX_DS置高,同时TX_PLD从发送堆栈中清除;若未收到应答,则自动重新发射该数据(自动重发已开启),若重发次数(ARC_CNT)达到上限,MAX_RT置高,TX_PLD不会被清除;MAX_RT或TX_DS置高时,使IRQ变低,以便通知MCU。

最后发射成功时,若CE为低,则nRF24L01进入待机模式1;若发送堆栈中有数据且CE为高,则进入下一次发射;若发送堆栈中无数据且CE为高,则进入待机模式2。

接收数据时,首先将nRF24L01配置为接收模式,接着延迟130μs进入接收状态等待数据的到来。

当接收方检测到有效的地址和CRC时,就将数据包存储在接收堆栈中,同时中断标志位RX_DR置高,IRQ变低,以便通知MCU去取数据。

若此时自动应答开启,接收方则同时进入发射状态回传应答信号。

最后接收成功时,若CE变低,则nRF24L01进入空闲模式1。

三、模块引脚说明深圳市德普施科技有限公司7 NC 空 8 CSN 芯片片选信号 I 9 CE 工作模式选择I 10+5V电源四、模块与AT89S52单片机接口电路注:上图为示意连接,可根据自己实际需求进行更改;使用AT89S52MCU 模块时,请将Nrf24L01通讯模块每个端口(MOSI 、SCK 、CSN 和CE )接4.7K 的排阻上拉到VCC 增强其驱动能力(如下图:)。

NRF24L01参考程序(包含多个实例)

NRF24L01参考程序(包含多个实例)

(相关人员如觉得本人水平低下,还请见谅)Nrf24L01的使用程序和使用方法和简单操作:功能:无线对发程序。

两个模块a,b,实现按下一个按键,会在对方的数码管上显示3或4,在本机上显示1,2。

当一个模块,比如a模块。

当两个按键按下其中一个,则会在另一个模块b上显示数字3,4(具体根据按下哪个按键)。

以上功能描述,B模块按键按下,如同a模块一样的功能,不做系统性描述了。

下面给出程序中几个地方的解释:#define READ_REG 0x00 // 读寄存器指令#define WRITE_REG 0x20 // 写寄存器指令#define RD_RX_PLOAD 0x61 // 读取接收数据指令#define WR_TX_PLOAD 0xA0 // 写待发数据指令#define FLUSH_TX 0xE1 // 冲洗发送FIFO指令#define FLUSH_RX 0xE2 // 冲洗接收FIFO指令#define REUSE_TX_PL 0xE3 // 定义重复装载数据指令#define NOP 0xFF // 保留类似这种的描述,可以等同于READ_REG =0x00;这个是经过实际程序测试出来的,比如以下程序:#include<reg51.h>#define k 0xfevoid main(){P1=k;}则会出现此类结果:MOSI = (uchar & 0x80); // output 'uchar', MSB to MOSIuchar = (uchar << 1); // shift next bit into MSB..SCK = 1; // Set SCK high..uchar |= MISO; // capture current MISO bitSCK = 0;此处为spi的核心,是spi协议的编程,其中uchar |= MISO; 表示uchar |= MISO | uchar; MOSI = (uchar & 0x80);其中0x80是1000 0000,与上uchar,这种&,是按位与,故可以从uchar提取出一个电平给mosi。

nRF24L01无线通信模块使用手册

nRF24L01无线通信模块使用手册

nRF24L01无线通信模块使用手册一、模块简介该射频模块集成了NORDIC公司生产的无线射频芯片nRF24L01:1.支持2.4GHz的全球开放ISM频段,最大发射功率为0dBm2.2Mbps,传输速率高3.功耗低,等待模式时电流消耗仅22uA4.多频点(125个),满足多点通信及跳频通信需求5.在空旷场地,有效通信距离:25m(外置天线)、10m(PCB天线)6.工作原理简介:发射数据时,首先将nRF24L01配置为发射模式,接着把地址TX_ADDR和数据TX_PLD 按照时序由SPI口写入nRF24L01缓存区,TX_PLD必须在CSN为低时连续写入,而TX_ADDR在发射时写入一次即可,然后CE置为高电平并保持至少10μs,延迟130μs后发射数据;若自动应答开启,那么nRF24L01在发射数据后立即进入接收模式,接收应答信号。

如果收到应答,则认为此次通信成功,TX_DS置高,同时TX_PLD从发送堆栈中清除;若未收到应答,则自动重新发射该数据(自动重发已开启),若重发次数(ARC_CNT)达到上限,MAX_RT置高,TX_PLD不会被清除;MAX_RT或TX_DS置高时,使IRQ变低,以便通知MCU。

最后发射成功时,若CE为低,则nRF24L01进入待机模式1;若发送堆栈中有数据且CE为高,则进入下一次发射;若发送堆栈中无数据且CE为高,则进入待机模式2。

接收数据时,首先将nRF24L01配置为接收模式,接着延迟130μs进入接收状态等待数据的到来。

当接收方检测到有效的地址和CRC时,就将数据包存储在接收堆栈中,同时中断标志位RX_DR置高,IRQ变低,以便通知MCU去取数据。

若此时自动应答开启,接收方则同时进入发射状态回传应答信号。

最后接收成功时,若CE变低,则nRF24L01进入空闲模式1。

三、模块引脚说明1 / 197 NC 空 8 CSN 芯片片选信号 I 9 CE 工作模式选择I 10+5V电源四、模块与AT89S52单片机接口电路注:上图为示意连接,可根据自己实际需求进行更改;使用AT89S52MCU 模块时,请将Nrf24L01通讯模块每个端口(MOSI 、SCK 、CSN 和CE )接4.7K 的排阻上拉到VCC 增强其驱动能力(如下图:)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

nrf24l01 模块使用教程
nRF24L01 是由NORDIC 生产的工作在2.4GHz~2.5GHz 的ISM 频段
的单片无线收发器芯片。

无线收发器包括:频率发生器、增强型SchockBurst 模式控制器、功率放大器、晶体振荡器、调制器和解调器。

输出功率频道选择和协议的设置可以通过SPI 接口进行设置。

几乎可以连接到各种单片机芯片,并完成无线数据传送工作。

极低的电流消耗:当工作在发射模式下发射功率为0dBm 时电流消耗为11.3mA ,接收模式时为12.3mA,掉电模式和待机模式下电流消耗更低。

nrf24l01 模块使用教程
NRF24L01 与控制器的通信采用的SPI 通信协议,这个协议具体细节
大家可能都懂,不懂的可以之间百度;他们的通信模型是这样的:。

相关文档
最新文档