NRF24L01+数据手册_关于几种工作模式

news2025/1/23 3:11:37

使用的是官方数据手册的章节编号,原文截图方便对照,部分翻译(标蓝)、个人理解(标紫),关键信息(标红)。

6.1 Operational Modes操作模式

6.1.1 State diagram状态机图

 6.1.2 Power Down Mode关机模式

断电模式,消耗的电流最少。

此模式下,寄存器的数据仍然被保持,SPI功能可用。(任何一种模式,SPI功能都是可用的)

关机模式由CONFIG寄存器的PWR_UP字段控制。

6.1.3 Standby Modes 待机模式

6.1.3.1 Standby-I mode 待机1模式

待机1模式,最小化平均电流且保持快速的开启时间。(比关机模式耗电多,属于在省电和快速进入收发数据之间找到的一个平衡)

CONFIG寄存器的PWR_UP字段为1后,NRF24L01进入待机1模式。(此时CE=0)

当CE=1,NRF24L01会从待机模式转到激活模式(激活模式指的就是发送/接收模式,待机2模式属于存在但不推荐的状态);

当CE=0,NRF24L01从发送TX/接收RX模式回到待机1模式。(从图中可以看到不包括待机2模式,所以比如想从待机2转到接收,是需要PWR_UP=0断电后重新配置的)

6.1.3.2 Standby-II mode

待机2比待机1消耗更多的电流;

此模式下,寄存器的数据仍然被保持,SPI功能可用。

如果CE保持高且TX FIFO为空,NRF24L01进入待机2模式。(所以如果从待机1模式想进入发送模式,需要TX FIFO不为空,再设置CE=1;且进入发送模式后CE不能一直为高,否则发送完TX FIFO为空会自动进入待机2模式)

如果一个新的包填充到TX FIFO,在130us后进入发送TX模式。

6.1.4 RX mode

PWR_UP=1,PRIM_RX=1,CE=1,NRF24L01进入接收模式。

在接收模式下,NRF24L01从相应的RF频道解析数据给基带协议,检测到有效包(匹配地址和CRC)后,将数据放在RX FIFO中。

如果RX FIFO已满,则丢弃该数据。(切换为接收模式前,先把RX FIFO清空;收到数据后,也要把RX FIFO清空;)

通常,NRF24L01保持接收模式,除非MCU通过SPI接口控制进入待机1或关机模式。

但是,如果使能了Enhanced ShockBurst协议,NRF24L01会自动进入别的模式去执行协议。(比如自动应答,会转为发送模式,去发送ACK包)

在接收模式下,在RF频道检测到大于-64dBm的信号且持续40us,RPD置高。

6.1.5 TX mode

PWR_UP=1,PRIM_RX=0,TX FIFO有数据,CE有大于10us的高电平脉冲,NRF24L01进入接收模式。

NRF24L01保持在TX模式直到当前包发送完。

如果发送完后CE=0,NRF24L01回到待机1模式;

如果CE=1,TX FIFO决定下一个的状态:

        TX FIFO非空,NRF24L01保持TX模式继续发送数据包。

        TX FIFO空,NRF24L01进入待机2模式。

(根据状态机图中推荐的方式,给CE一个10us高电平脉冲后CE拉低,这样在发送完后NRF24L01会回到待机1模式,不进入待机2模式)

绝对不要让TX模式持续超过4ms。

如果使能了Enhanced ShockBurst协议,NRF24L01不会再TX模式持续超过4ms。

(如果没有使能Enhanced ShockBurst协议,有两种方式避免TX模式持续超过4ms:1是CE给脉冲,2是TX FIFO不要一直给数据)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/883411.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

sqlloader学习笔记

INFILE的用法 1)模糊导入多个数据的文件。 可以在文件名中使用通配符。 星号 (*) 表示复数字符,问号 (?) 表示单个字符。 INFILE emp*.dat INFILE m?emp.dat 2)如果不需要导入数据…

麒麟arm架构 编译安装qt5.14.2

1、先在官网下载qt源码: https://download.qt.io/archive/qt/5.14/5.14.2/single/[qt源码下载地址] 2、解压编译 使用tar -xvf qt-everywhere-src-5.14.2.tar.xz 解压压缩包 cd qt-everywhere-src-5.14.2 执行 ./configure --prefix/usr/local/qt.5.14.2 make -…

【Nginx17】Nginx学习:目录索引、字符集与浏览器判断模块

Nginx学习:目录索引、字符集与浏览器判断模块 今天要学习的内容有几个还是大家比较常见的,所以学习起来也不会特别费劲。对于目录的默认页设置大家都不会陌生,字符集的设置也比较常见,而浏览器的判断这一块,可能有同学…

大模型基础:GPT家族与提示学习

大模型基础:GPT 家族与提示学习 从 GPT-1 到 GPT-3.5 GPT(Generative Pre-trained Transformer)是 Google 于2018年提出的一种基于 Transformer 的预训练语言模型。它标志着自然语言处理领域从 RNN 时代进入 Transformer 时代。GPT 的发展历史和技术特点如下: GPT-12018年6月…

OpenSSH 远程升级到 9.4p1

OpenSSH 远程升级到 9.4p1 文章目录 OpenSSH 远程升级到 9.4p1背景升级前提1. 升级 OpenSSL2. 安装并启用Telnet 升级OpenSSH 背景 最近的护网行动,被查出来了好几个关于OpenSSH 的漏洞。这是因为服务器系统安装后,直接使用了系统自带版本的OpenSSH &am…

lib调试报LNK2038 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”

最近用cef,要debug调试,引用库时,提示: LNK2038 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2” 研究后的结论:这是因为,这个库的实现方式太老: #if _HAS_ITERATOR_DEBUG…

【C++笔记】C++之类与对象(上)

【C笔记】C之类与对象(上) 1、类是结构体的升级2、类中可以定义的东西3、类访问限定符4、类的声明5、类的实例化(定义)6、类的大小的计算7、this指针 1、类是结构体的升级 C的一个显著特征就是兼容C语言,所以C把结构体“升级”成了“类”&am…

高等数学 | 微分方程解决单中值问题、高阶导数的莱布尼兹公式

单中值问题都可以用通过求解微分方程的特解构造辅助函数,再用罗尔定理即可。 高阶导数的莱布尼兹公式推导以及应用,先求导至能够发现某次求导开始为0的时候,对其使用莱布尼兹公式。

Photoshop制作漂亮光泽感3D按钮

原文链接(https://img-blog.csdnimg.cn/45472c07f29944458570b59fe1f9a0e0.png)

简单记录牛客top101算法题(初级题C语言实现)BM24 二叉树的中序遍历 BM28 二叉树的最大深度 BM29 二叉树中和为某一值的路径

1. BM24 二叉树的中序/后续遍历 要求:给定一个二叉树的根节点root,返回它的中序遍历结果。                          输入:{1,2,#,#,3} 返回值:[2,3,1]1.1 自己的整体思路(与二叉树的前序遍…

HCIP——BGP协议

目录 一.什么是BGP? 二.IGP和EGP 三.BGP的特点 四.BGP的数据包 五.BGP的工作过程 BGP的六种状态机 六.BGP的路由黑洞问题 七.BGP的防环机制——水平分割 八.BGP的宣告问题 九.BGP的自动汇总 十.BGP的安全特性 十一.BGP的选路规则 一.什么是BGP? 1.…

ATF(TF-A)安全通告 TFV-8 (CVE-2018-19440)

安全之安全(security)博客目录导读 ATF(TF-A)安全通告汇总 目录 一、ATF(TF-A)安全通告 TFV-8 (CVE-2018-19440) 二、CVE-2018-19440 一、ATF(TF-A)安全通告 TFV-8 (CVE-2018-19440) Title 不保存x0~x3寄存器可能会将信息从一个非安全世界的SMC client泄漏到另一个 CVE ID …

学习ts(二)数据类型(接口和对象类型、数组类型)

interface 重名会重合到一起 如果两个interface名称相同,会把两个合到一起 重复定义同一个需要类型相同 不能多或者减少属性 设置任意key 当定义接口返回数据时,我们不确定接口会返回多少,知道所需要的固定属性,其余属性可以…

第九章 动态规划part08(代码随想录)

139.单词拆分 1. 确定dp[i][j] dp数组以及下标的含义一维dp数组的递推公式 dp[i] : 字符串长度为i的话,dp[i]为true,表示可以单词能被在字典中出现的单词组成。 dp[s.size()] true; 说明可以利用字典中出现的单词拼接出 s 。 2. 一维dp数组的递推公式…

【STM32 学习】电源解析(VCC、VDD、VREF+、VBAT)

VCC电源电压GND电源供电负电压(通常接地)VDD模块工作正电压VSS模块工作负电压VREFADC参考正电压VREF-ADC参考负电压VBAT电池或其他电源供电VDDA模拟供电正电压VSSA模拟供电负电压 一、VCC(供电电压) VCC是指芯片的电源电压&#…

linux安装mysql-8.0.33正确方式及常见问题

目录 获取mysql下载地址链接 解压安装包 复制文件到安装目录 添加用户和用户属组修改权限 创建存储数据的文件夹/usr/local/mysql 初始化安装 修改配置文件 创建日志文件并赋予对应权限 启动成功​编辑 创建软链接 之前安装过mysql,时间比较长忘记安装步骤了今天…

【C语言】memset()函数

一.memset()函数简介 我们先来看一下cplusplus.com - The C Resources Network网站上memset()函数的基本信息: 1.函数功能 memset()函数的功能是:将一块内存空间的每个字节都设置为指定的值。 这个函数通常用于初始化一个内存空间,或者清空一个内存空间…

HCIP第五节------------------------------------------ospf

一、OSPF基础 1、动态路由分类 2、距离矢量协议 运行距离矢量路由协议的路由器周期性地泛洪自己的路由表。通过路由的交互,每台路由器都从相邻的路由器学习到路由,并且加载进自己的路由表中,然后再通告给其他相邻路由器。 对于网络中的所有…

服务器数据恢复-EqualLogic存储RAID5数据恢复案例

服务器数据恢复环境: 一台DELL EqualLogic存储中有一组由16块SAS硬盘组建的RAID5阵列。存储存放虚拟机文件,采用VMFS文件系统,划分了4个lun。 服务器故障&检测&分析: 存储设备上有两个硬盘指示灯显示黄色,存储…

使用python读Excel文件并写入另一个xls模版

效果如下: 原文件内容 转化后的内容 大致代码如下: 1. load_it.py #!/usr/bin/env python import re from datetime import datetime from io import BytesIO from pathlib import Path from typing import List, Unionfrom fastapi import HTTPExcep…