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

前言

环境:

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

相关推荐
虎王物联4 小时前
STM32 HAL库串口DMA空闲中断:高效接收不定长Modbus数据帧
stm32·单片机·嵌入式硬件·dma·modbus
自小吃多4 小时前
DXF文件导入与PCB板框定义笔记
笔记·嵌入式硬件
SUNNYSPY0014 小时前
AO4402-ASEMI便携设备电源开关AO4402
单片机
单片机仿真设计6 小时前
【proteus仿真】基于 STC89C52 单片机家用智能台灯设计(仿真图+程序)
stm32·单片机·嵌入式硬件·proteus·毕设
2601_950790686 小时前
深圳国产单片机厂商怎么选?技术能力与服务能力检查表
单片机·嵌入式硬件·国产mcu·芯片厂商·深圳单片机·单片机选型
hongmai6668888 小时前
MP2348GTL-Z:这颗24V/4A同步降压芯片,把性能和体积平衡得恰到好处
c语言·开发语言·arm开发·单片机·5g
笨笨饿9 小时前
#135_代码中的类型重定义艺术:从基础封装到函数类型设计
开发语言·stm32·单片机·嵌入式硬件·mcu·物联网·嵌入式实时数据库
西城微科方案开发9 小时前
高精度低功耗胎压计方案——气压表解决方案
单片机·嵌入式硬件
LavaLin0110 小时前
STM32H562RGT6 与 STM32F722RET6 规格对比
stm32
VALENIAN瓦伦尼安教学设备11 小时前
设备状态检测振动分析实训台案例分析
大数据·数据库·人工智能·嵌入式硬件·算法