0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于嵌入式NRF24L01器件的无线数据传输技术

电子设计 来源:面包板社区 作者:techff 2021-02-09 09:46 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

对于初学者来说,最痛苦的莫过于看英文技术手册,所以当初小白的自己就会想,要是有人将这些手册翻译成中文就好了。但是对于高手而言,他又不屑于翻译手册,因为他直接就能看懂,根本不需要翻译。所以在寻找 NRF24L01+ 的中文手册无果之后,萌生了翻译这篇文章的想法。首先无线数据传输这个技术我很感兴趣,其次这个芯片非常适合初学者去掌握模块的使用方法,这个模块的应用也相当广泛,所以历经一星期的时间将其翻译成了中文,方便他人,亦是方便自己。

nRF24L01 +是一款带有嵌入式基带协议引擎(Enhanced ShockBurst™)的单芯片 2.4GHz 收发器,适用于超低功耗无线应用。 nRF24L01 +设计用于 2.400-2.4835GHz的全球 ISM 频段。要用 nRF24L01 +设计无线电系统,您只需要一个MCU微控制器)和一些外部无源组件。您可以通过串行外设接口(SPI)来操作和配置 nRF24L01 +。寄存器映射可通过 SPI 访问,其中包含 nRF24L01 +中的所有配置寄存器,并且可在芯片的所有操作模式下访问。嵌入式基带协议引擎(Enhanced ShockBurst™)基于数据包通信,支持从手动操作到高级自治协议操作等各种模式。内部 FIFO 确保无线电前端和系统 MCU 之间的数据流畅通。 Enhanced Shock Burst™通过处理所有高速链路层操作来降低系统成本。无线电前端使用 GFSK 调制。它具有用户可配置的参数,如频道,输出功率和空中数据速率。nRF24L01 +支持 250 kbps,1 Mbps 和 2Mbps 的空中数据速率。高空中数据速率与两种省电模式相结合,使 nRF24L01 +非常适合超低功耗设计。nRF24L01 +与 nRF24L01 直接兼容,并与 nRF2401A,nRF2402,nRF24E1 和 nRF24E2 在空中兼容。 nRF24L01 +中的互调和宽带阻塞值与 nRF24L01相比有了很大的改进,并且 nRF24L01 +的内部滤波功能增加了满足 RF 监管标准的余量。内部稳压器确保高电源抑制比(PSRR)和宽电源范围。

nRF24L01 +的特点包括:

信号

  • X 全球 2.4GHz ISM 频段操作
  • X 126 个 RF 通道
  • X 公共 RX 和 TX 接口
  • X GFSK 调制
  • X 250kbps,1 和 2Mbps 空中数据速率
  • X 1MHz 非重叠信道间隔,1Mbps
  • X 2MHz 非重叠信道间隔,2Mbps

•发射机

  • X 可编程输出功率:0,-6,-12 或-18dBm

输出功率为 0dBm 时 X 11.3mA

接收器

  • X Fast AGC 改善动态范围
  • X 集成通道过滤器

在 2Mbps 时 X 13.5mA

2Mbps 时灵敏度为-82dBm

在 1Mbps 时X-85dBm 灵敏度

250kbps 时灵敏度为-94dBm

•RF 合成器

•增强 ShockBurst™

  • X 1 到 32 个字节的动态净荷长度
  • X 自动数据包处理
  • X 自动数据包事务处理
  • X 6 数据管道 MultiCeiver™用于 1:6 星形网络

• 能源管理

  • X 集成稳压器
  • X 1.9 至 3.6V 电源范围
  • X 具有快速启动时间的空闲模式,用于高级电源管理
  • X26μA 待机 I 模式,900nA 掉电模式
  • X 最大 1.5ms 从掉电模式启动
  • X Max 130us 从待机I 模式启动

•主机接口

  • X 4 针硬件 SPI
  • X 最大 10Mbps
  • X 3 级 32 个字节的 TX 和 RX FIFO
  • X 5V 宽容输入

•紧凑型 20 引脚 4x4mm QFN 封装

1.1 无线电控制

本章介绍 nRF24L01 +无线电收发器的工作模式和用于控制无线电的参数。nRF24L01 +内置状态机,用于控制芯片工作模式之间的转换。 状态机从用户定义的寄存器值和内部信号中获取输入。

1.1.1 操作模式

您可以在掉电,待机,RX 或 TX 模式下配置 nRF24L01 +。 本节详细介绍这些模式。

1.1.1.1 状态图

图 4 中的状态图显示了操作模式及其功能。 状态图中突出显示了三种不同的状态:

•推荐的操作模式:是正常操作期间使用的推荐状态。

•可能的操作模式:可能的操作状态,但在正常操作期间不使用。

•过渡状态:在振荡器启动和 PLL 建立期间使用的时间限制状态。

当 VDD 达到 1.9V 或更高时,nRF24L01 +进入上电复位状态,保持复位状态直到进入掉电模式。

pIYBAGAP3AaASjMVAAJjTdhYhgk000.png

1.1.1.2 掉电模式

在掉电模式下,nRF24L01 +使用最小电流消耗来禁用。 所有可用的寄存器值都将保持不变,并且 SPI 保持活动状态,从而可以更改配置以及数据寄存器的上载/下载。 关于启动时间,请参见第 16 页的表 16.通过将 CONFIG 寄存器中的 PWR_UP 位设置为低电平来进入掉电模式。

1.1.1.3 待机模式

1.1.1.3.1 待机 I 模式

通过将 CONFIG 寄存器中的 PWR_UP 位设置为 1,器件进入待机 I 模式。 待机 I 模式用于在保持较短的启动时间的同时将平均电流消耗降至最低。 在这种模式下,只有部分晶体振荡器处于活动状态。 只有在 CE 设置为高电平且 CE 设置为低电平时,才会切换到活动模式,nRF24L01 将从 TX 和 RX 模式返回到待机 I 模式。

1.1.1.3.2 待机 II 模式

在备用-II 模式下,额外的时钟缓冲器处于活动状态,与待机 I 模式相比,使用更多的电流。如果 CE 在具有空 TX FIFO 的 PTX 器件上保持高电平,则 nRF24L01 +进入待机 II 模式。 如果一个新的数据包上传到 TX FIFO,PLL 会立即启动并在正常的 PLL 建立延迟(130μs)后发送数据包。寄存器值保持不变,并且在两种待机模式下均可激活 SPI。 有关启动时间,请参阅第 24 页上的表 16。

1.1.1.4 接收模式

RX 模式是将 nRF24L01 +无线电用作接收器的主动模式。要进入该模式,nRF24L01 +必须将 PWR_UP 位,PRIM_RX 位和 CE 引脚设置为高电平。在接收模式下,接收器解调来自 RF 信道的信号,不断向基带协议引擎提供解调数据。基带协议引擎不断搜索有效的数据包。如果找到了有效的数据包(通过匹配的地址和有效的 CRC),数据包的有效负载将显示在 RX FIFO 的空闲时隙中。如果 RX FIFO 已满,则接收的数据包将被丢弃。 nRF24L01 +保持在 RX 模式,直到 MCU 将其配置为待机 I 模式或掉电模式。但是,如果基带协议引擎中的自动协议功能(Enhanced ShockBurst™)已启用,nRF24L01 +可以进入其他模式以执行协议。在接收模式下,接收功率检测器(RPD)信号可用。 RPD 是在接收频道内检测到高于-64 dBm 的 RF 信号时设置为高电平的信号。内部 RPD 信号在提供给 RPD 寄存器之前被过滤。在 RPD 设置为高电平之前,RF 信号必须至少存在 40μs。第 25 页第 6.4 节描述了如何使用 RPD

1.1.1.5 发送模式

TX 模式是传输数据包的主动模式。 要进入该模式,nRF24L01 +必须将 PWR_UP 位设置为高电平,将 PRIM_RX 位设置为低电平,TX FIFO 中的有效负载和 CE 上的高电平脉冲超过 10μs。 nRF24L01 +一直处于 TX 模式,直到完成发送数据包。 如果 CE = 0,则 nRF24L01 +返回待机 I 模式。 如果 CE = 1,则 TX FIFO 的状态决定下一个操作。 如果 TX FIFO 不为空,则 nRF24L01 +将保持在 TX 模式并发送下一个数据包。 如果 TX FIFO 为空,则 nRF24L01 +进入待机 II 模式。 处于 TX 模式时,nRF24L01 +发送器 PLL 工作在开环状态。 重要的是,一次不要将 nRF24L01 +保持在 TX 模式下的时间超过 4ms。 如果启用增强 ShockBurst™功能,则 nRF24L01 +绝不会在 TX 模式下长于 4ms。

(译者注:测试连续往 TX FIFO 中传输数据,看接收端是否能正确接收数据。并观察状态。猜测:空中发送数据比 SPI 传输速度更快,接收端能正确接收数据)

1.1.1.6 操作模式配置

o4YBAGAP3CSAb6zfAAGMFC1i7vY568.png

A.如果 CE 保持高电平,则所有 TX FIFO 都清空,并执行所有必要的 ACK 和可能的重传。 只要 TX FIFO 被重新填充,传输就会继续。 如果 CE 仍为高电平时 TX FIFO 为空,则 nRF24L01 +进入待机 II 模式。 在这种模式下,只要在将数据包上载(UL)到 TX FIFO 后 CSN 置为高电平,数据包的传输就会开始。

B.该工作模式将 CE 脉冲至少持续 10μs。 这允许传送一个分组。这是正常的操作模式。 数据包传输完成后,nRF24L01 +进入待机 I 模式。

1.1.1.7 时间信息

本节中的时序信息涉及模式之间的转换和 CE 引脚的时序。 如表 16 所述,从 TX 模式到 RX 模式或反向模式的转换与从待机模式到 TX 模式或 RX 模式(最大 130μs)的转换相同。

o4YBAGAP3ESAXnbJAAGTSkGg-KM674.png

为使 nRF24L01 +从掉电模式进入 TX 模式或 RX 模式,必须首先通过待机模式。在 CE 设置为高电平之前,nRF24L01 +离开掉电模式后,必须延迟 Tpd2stby(见表 16)。

注:如果 VDD 关闭,寄存器值将丢失,您必须在进入 TX 或 RX 模式之前配置 nRF24L01 +。

1.1.2 空中数据速率空中数据速率是 nRF24L01 +在发送和接收数据时使用的调制信号速率。 它可以是 250kbps,1Mbps 或 2Mbps。 使用较低的空中数据速率比较高的空中数据速率提供更好的接收器灵敏度 但是,空中数据传输速率较高,平均电流消耗较低,并且可减少空中碰撞的可能性。 空中数据速率由 RF_SETUP 寄存器中的 RF_DR 位设置。 发射机和接收机必须以相同的空中数据速率进行编程才能相互通信。 nRF24L01 +与 nRF24L01 完全兼容。 为了与 nRF2401A,nRF2402,nRF24E1 和 nRF24E2 兼容,空中数据速率必须设置为 250kbps 或 1Mbps。

1.1.3 射频频道频率

RF 信道频率决定了 nRF24L01 +使用的信道的中心。该信道在 250kbps 和 1Mbps 的带宽下占用带宽小于 1MHz,在 2Mbps 带宽下带宽小于 2MHz。 nRF24L01 +可以在 2.400GHz 至 2.525GHz 的频率下工作。 RF 信道频率设置的编程分辨率为 1MHz。 在 2Mbps 时,信道占用比 RF 信道频率设置的分辨率更宽的带宽。 为确保 2Mbps 模式下不重叠的通道,通道间隔必须为 2MHz 或更高。 在 1Mbps 和 250kbps 时,信道带宽与 RF 频率的分辨率相同或更低。

RF 通道频率由 RF_CH 寄存器根据以下公式设置:

F0= 2400 + RF_CH [MHz]

您必须使用相同的 RF 信道频率编程发射机和接收机才能彼此通信。

1.1.4 接收功率检测器测量

位于寄存器 09 中的接收功率检测器(RPD)位 0 触发接收的功率电平高于-64 dBm,这些功率电平出现在您接收的 RF 信道中。 如果接收功率小于-64 dBm,则 RDP = 0。当 nRF24L01 +处于接收模式时,可以随时读出 RPD。 这提供了该频道当前接收功率电平的快照。 接收到有效数据包后,RPD 状态将被锁存,然后指示来自您自己的发射机的信号强度。 如果没有收到数据包,RPD 在接收周期结束时被锁存,因为主机 MCU 设置 CE 低或 RX 超时由 Enhanced ShockBurst™控制。 当接收模式启用且等待时间 Tstby2a + Tdelay_AGC = 130us + 40us 后,RPD 状态正确。 RX 增益随温度变化,这意味着 RPD 阈值也随温度而变化。 在 T = -40°C 时,RPD 阈值降低了-5dB,并在 85°C 时增加了+ 5dB。

1.1.5 PA 控制

PA(功率放大器)控制用于设置 nRF24L01 +功率放大器的输出功率。 在 TX 模式下,PA 控制有四个可编程步骤,参见表 17. PA 控制由 RF_SETUP 寄存器中的 RF_PWR 位设置

pIYBAGAP3F2AEehDAACzRy0223Y252.png

1.1.6 RX/TX 控制

RX / TX 控制由 CONFIG 寄存器中的 PRIM_RX 位置 1,并将 nRF24L01 +设置为发送/接收模式。
编辑:hfy

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 收发器
    +关注

    关注

    10

    文章

    3836

    浏览量

    111419
  • 嵌入式
    +关注

    关注

    5208

    文章

    20599

    浏览量

    336427
  • RF
    RF
    +关注

    关注

    66

    文章

    3203

    浏览量

    172086
  • 无线数据传输

    关注

    1

    文章

    63

    浏览量

    20299
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    CW32L012/F030灵眸X1智能小车——使用NRF24L01通信

    NRF24L01所使用的通讯协议为SPI,SPI又可分为软件SPI和硬件SPI。
    的头像 发表于 04-01 16:49 2504次阅读
    CW32<b class='flag-5'>L</b>012/F030灵眸X1智能小车——使用<b class='flag-5'>NRF24L01</b>通信

    51驱动NRF24L01通信,NRF24L01与TTL转NRF24L01模块通信

    NRF24L01 一、简介 NRF24L01 是 NORDIC 公司最近生产的一款无线通信通信芯片,采用 FSK 调制,内部 集成 NORDIC 自己的 Enhanced Short Burst
    的头像 发表于 03-17 14:37 159次阅读
    51驱动<b class='flag-5'>NRF24L01</b>通信,<b class='flag-5'>NRF24L01</b>与TTL转<b class='flag-5'>NRF24L01</b>模块通信

    SI24R2B 单发Tx发射芯片功耗低 可兼容NRF24L01P

    1MHz带宽的信道。 SI24R2采用GFSK/FSK数字调制与解调技术数据传输速率与PA输出功率都可以调节,支持2Mbps,1Mbps,250Kbps 三种数据速率。高的
    发表于 01-28 11:46

    Arduino UNO 可视化GT-24工业级无线透传

    一、前言 无线透传市面上较为常见的是基于蓝牙、esp的多种透传模块,今天介绍的则是用NRF24L01芯片构成的电路。(nRF24L01是由NORDIC生产的工作在2.4GHz~2.5GHz的ISM
    的头像 发表于 01-27 10:14 322次阅读
    Arduino UNO 可视化GT-<b class='flag-5'>24</b>工业级<b class='flag-5'>无线</b>透传

    NRF24L01——2.4GHz无线通信

    ARQ 基带协议引擎的无线收发器芯片。工作频率范围为 2400MHz-2525MHz,共有 126 个 1MHz 带宽的信道。 Si24R1 采用 GFSK/FSK 数字调制与解调技术数据
    发表于 12-30 14:08

    深入剖析DS92LV242x:高速数据传输的理想之选

    控制信号传输的解决方案,在嵌入式视频、医疗成像、工业自动化等众多领域展现出了卓越的性能。今天,我们就来深入剖析这款芯片组,了解它的特性、应用以及设计要点。 文件下载: ds92lv2421.pdf 特性亮点 数据传输能力 DS9
    的头像 发表于 12-24 15:50 388次阅读

    SI24R1完美代替NRF24L01

    NRF24L01无线模块广泛地运用于:无线门禁、无线数据通讯、安防系统、遥控装置、遥感勘测、智能运动设备、工业传感器;平常我们用到的
    发表于 11-28 11:10

    单片机之间可以进行无线数据传输

    ) 1. 使用其他无线通信技术:如果单片机之间的距离较近,可以考虑使用如Wi-Fi、蓝牙、ZigBee等短距离无线通信技术进行数据传输。这
    发表于 11-28 08:15

    多通道数据传输终端 LoRa/LTE双模通信终端

    数据传输
    稳控自动化
    发布于 :2025年10月24日 13:57:21

    使用NRF24l01软件包注册设备失败怎么解决?

    1.根据软件包提示第一步先打开了SPI驱动框架 2.然后软件包添加了 nrf24l01最新版本以及demo、debug 3.在board.h #define using_spi1 在board.c
    发表于 09-23 06:51

    官网nrf24l01的例程demo会出现互斥锁报错是为什么?

    我在用nrf24L01官网下载的例程包,用stm32进行开发,串口助手显示互斥锁错误,有朋友遇到这个问题吗
    发表于 09-10 06:05

    SI24R1:答题卡方案芯片替代NRF24L01+

    的 LDO 电源,保证 1.9-3.6V 宽电源范围内稳定工作。PIN对PIN兼容替代NRF24L01+。Si24R1采用GFSK/FSK数字调制与解调技术数据传输速率可以调节,支
    发表于 07-31 10:29

    NRF24L01项目资料(2.4G通信)实例项目下载

    NRF24L01项目资料(2.4G通信)实例项目,推荐下载!
    发表于 06-03 20:46

    基于nRF24L01+的2.4GHz无线模块设计与应用

    nRF24L01+是一款由Nordic Semiconductor设计的单片射频收发芯片,工作于2.4~2.5GHz ISM频段,采用GFSK调制技术,支持高达2Mbps的数据传输速率,具备低功耗特性,适用于2.4G
    的头像 发表于 04-28 11:19 1343次阅读
    基于<b class='flag-5'>nRF24L01</b>+的2.4GHz<b class='flag-5'>无线</b>模块设计与应用

    stmf103c8t6使用nrf24l01发送和接收数据,接收端STATUS寄存器的值始终为0x0E, FIFO_STATUS的值为0x11。

    stmf103c8t6使用nrf24l01发送和接收数据,通过失能自动应答,发送端调通了,但是接收端始终无法收到消息,下面是接收端的主要代码: void NRF24L01_Init(void
    发表于 04-19 23:32