首页 > 其他分享 >NRF24L01模块STM32-调试心得:报错 1E

NRF24L01模块STM32-调试心得:报错 1E

时间:2025-01-09 20:31:09浏览次数:3  
标签:RW 接收端 失能 STM32 NRF24L01 报错 寄存器 调试

前言

环境:

芯片:STM32F103C8T6

Keil:V5.24.2.0


调试时我们会尝试读取STATUS寄存器状态来了解模块目前的状态,但是我们在读取时至为0x1E,这就很纳闷,根据寄存器描述

0x1E:对应寄存器4:1,关系有:达到最大重发次数

                RX FIFO为空,

第四位很好理解也很好判断,达到了最大重发次数报错.可以将最大重发次数关闭,一直进行重发

        SPI_RW_Reg(WRITE_REG + SETUP_RETR, 0x00);      //失能自动重发

第1到3位就很难理解了,我只是发送,关接收什么关系?

实际是应答信号反馈,如果关闭应答信号,就不会是这个值了

        SPI_RW_Reg(WRITE_REG + EN_RXADDR, 0x00);    //失能接收通道0

失能这两个状态,再次获取状态值就不是1E了.

到这里,大家看看是否可以调试通顺.

如果还是不行,接着往下看

可能的原因还是出在 RX_P_NO 这个状态寄存器上.因为之前是关闭了,所以功能正常了,但是打开并不代表我们就能正常接收到接收端的反馈信号.这就需要我们调试好接收端的代码,并且一定带上自动应答后,再次回来调试,如果还是不行,建议使用源码和配套的开发板进行验证,之后更改为自己的代码.

标签:RW,接收端,失能,STM32,NRF24L01,报错,寄存器,调试
From: https://blog.csdn.net/2301_80596293/article/details/145027060

相关文章

  • 【YashanDB知识库】解决mybatis的mapper文件sql语句结尾加分号";"报错
    本文内容来自YashanDB官网,原文内容请见https://www.yashandb.com/newsinfo/7863046.html?templateId=1718516现象mybatis或mybaits-plus的mapper文件sql结尾加分号";"执行时报错:”YAS-04209unexpectedword;“解决办法将sql结尾分号“;”去掉。使用注解方式写的sql语句也......
  • 【芳心科技】E. 基于STM32的便携式电脉冲理疗仪
    实物效果图:实现功能:采用STM32单片机作为控制核心,其采用先进的ARM内核。采用XL6007升压电路产生高压,采用高压三极管控制多种电脉冲产生,频率1HZ-400HZ之间,脉冲电压小于100V,安全可靠。采用LCD12864显示屏作为人机交互,能够直观显示理疗仪当前工作状态和相关参数。可以通过按键......
  • STM32标准库学习笔记(六)ADC
    前言学习永无止境!本篇是嵌入式开发之片上外设ADC,从硬件原理到实际应用,深入了解ADC模数转换原理以及相关应用。注:本文章为学习笔记,部分图片与文字来源于网络/江协科技课程/手册,如侵权请联系!谢谢!一、ADC概述1.1ADC简介 定义:ADC(Analog-DigitalConverter)模拟数字转换器,......
  • STM32 I2C总线
    一、什么是I2C总线1、SCL、和SDA线的作用I2C总线是主机与从机之间通过SCL、SDA连接,达到一个主机对应多个从机的作用。其中SCL叫做串行时钟线,负责传输时钟信号,SDA叫做串行数据线,负责传输数据。2、为什么SCL和SDA都是开漏输出,并且要外接一个上拉电阻什么开漏输出?只有低电......
  • STM32CUBEMX时钟树配置
    以下以stm32f103c8t6为例打开STM32CUBEMX,点击CLockConfiguration这就是我们的时钟数配置了;默认情况下是呈以下配置:一、了解一下为什么叫做时钟树?下图拥有两棵树,一棵树是树干比较小的叫做低速树,树干比较大的叫做高速树。而时钟的产生离不开晶振,所以时钟树的根一般都为晶......
  • STM32 拓展 RTC案例1:使用闹钟唤醒待机模式 (HAL库)
    需求描述执行完毕正常代码之后,让MCU进入待机模式,设置闹钟,自动让MCU从待机模式中被唤醒。可以用led点亮熄灭显示是否唤醒。应用场景:比如设计一个野外温度自动采集的设备,规定每小时采集一次温度,就可以定义一个1小时的闹钟,定时唤醒,采集温度,采集完进入待机模式,可以大大降低设备功......
  • Oracle SQL优化过程一则以及group by少见用法报错点
     OracleSQL优化过程一则以及groupby少见用法报错点 业务让帮忙优化一条sql,sql文本如下(脱敏):selectto_char(t.create_time,'yyyy-mm')月份,count(*)总数,(selectcount(v.seq_no)fromzkm.testvwhereto_char(v.create_time,......
  • linux下启动第二个RocketMQ,报错java.lang.RuntimeException: Lock failed,MQ already
    报错如下图: 这种情况下启动两个broker,基本都会在第二个broker,报lockfailed,MQalreadystarted因为使用了相同的默认配置(只启动一个broker不受影响) 不同的配置,需求满足最基本的配置不同brokerName不同brokerId不同listenPort不同storePathRootDir......
  • 【Azure Function】部署Java Function失败:报错deploy [ERROR] Status code 401和警告
    问题描述部署JavaFunctionApp到中国区Azure上时,遇见了错误信息:错误信息:deploy[ERROR]Statuscode401,(emptybody)警告信息:ChinaNorth3maynotbeavalidregion,pleaserefertohttps://aka.ms/maven_function_configuration#supported-regionsforvalues. ......
  • docker拉取报错/docker切换国内镜像源
    报错场景:docker从远程拉取镜像是出现的报错问题描述报错内容为Errorresponsefromdaemon:Get"https://registry-1.docker.io/v2/":net/http:requestcanceledwhilewaitingforconnection(Client.Timeoutexceededwhileawaitingheaders原因分析:国内dock......