基于STM32的NRF24L01模块一对一的问题记录
花了3个晚上的时间,,,,,,总算是解决了为啥NRF不能通讯的问题。希望能对和我有同样问题的有些许帮助。
我是移植的正点原子的程序,把正点原子的程序分成了两个项目,一个是发送,一个是接收。
这是发送端主函数。
———————————————————————————————————————————————
这是接收端的
有没有发现这两个里面有啥不同的?---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
在发送端的时候这个NRF24L01_TX_Mode()函数在while(NRF24L01_Check())之后。
在接收端的时候这个NRF24L01_TX_Mode()函数在while(NRF24L01_Check())之前。
有同学就问了,这有啥区别啊?
嘿,这里面区别还真不小。
接收端的话NRF24L01_TX_Mode()函数在while(NRF24L01_Check())之前或者之后无所谓,但是如果在发送端的话,这个NRF24L01_TX_Mode()函数必须在while(NRF24L01_Check())之后。
当我把 NRF24L01_TX_Mode();放到while(NRF24L01_Check())之前。
调试的时候,在NRF24L01_RxPacket(u8 *rxbuf)函数里面STATUS读出来的值是0x1E。0x1E表示达到了最多次重发中断。我在 NRF24L01_Check(void)函数里面读取STATUS值,STATUS=0x1E。
当我把 NRF24L01_TX_Mode();放到while(NRF24L01_Check())之后。
调试的时候,在NRF24L01_RxPacket(u8 *rxbuf)函数里面STATUS读出来的值是0x2E。我在 NRF24L01_Check(void)函数里面读取STATUS值,STATUS=0x0E。
总结:在发送端的时候NRF24L01_TX_Mode()函数必须放在while(NRF24L01_Check())之后。如果放在检查函数之前就会导致发送失败。整了3晚就整出这一句话,,,,,,很无语。
PS:如果想要我调试好了的代码,可以直接评论区留下自己的邮箱,一般当天晚上我看到了就会发,我两块板子用的芯片都是stm32f103zet6。注意:如果不是同款芯片的话就需要更改引脚配置。
基于STM32的NRF24L01模块一对一的问题记录相关推荐
- 基于STM32与GSM模块发送中英文短信
基于STM32与GSM模块发送中英文短信 最近在做毕业设计有用到GSM模块进行短信报警,模块的功能比较多这里就不介绍了,一般的拨打电话都很简单就只需要一条指令即可,发送英文短信也很简单也只要几条命令也 ...
- 基于STM32的ESP8266模块控制多路继电器
基于STM32的ESP8266模块控制多路继电器 1.视频讲解 基于STM32单片机ESP8266物联网阿里云MQTT多路继电器控制 物联网视频教程STM32+ESP8266 2.实物设计 ESP82 ...
- 基于Stm32的4G模块实现内网透传通信(代码后附)
基于Stm32的4G模块实现内网透传通信 一.内网透传即内网映射,内网IP端口映射外网连接访问过程的实现.内网透传通信实现过程又有以下几种区别: 1)路由器映射.适合自己本地路由有公网IP网络环境,用 ...
- 基于STM32F1与NRF24L01模块的SPI简单通信
一.前言 1.简介: 本文是基于STM32F1,将数据发送至NRF模块的寄存器,并将数据重新读取,通过串口发送出来的简单SPI单通信. 2.SPI简介: 调过STM8的都已经对SPI有所了解,调法都一 ...
- 【STM32】NRF24L01模块的收发调试
NRF24L01 发送端.c文件 发送端.h文件 接收端.c文件 接收端.h文件 接收端main函数 总结: 这里我是用了两块板子来做通信实验,这里我就直接贴发送端和接收端的.c.h文件,一个是用标准 ...
- 基于stm32与NRF24L01的无线门禁系统
首先,需要说明梁只是一个小本科生,水平不高,许多错误请大家指教(qq1257681989).所写的内容是我自己做的,写此博客仅在于让自己在完成之后有个回顾和总结. 进入正文,这个小制作是我选择的一个比 ...
- 船模制作——遥控模块 基于stm32和nrf24l01(固件库开发)
目录 nrf24l01介绍 引脚图 引脚功能介绍 模式配置方法 官方宏 stm32配置 引脚映射 初始化函数 SPI模拟通信函数 nrf24l01配置函数 nrf24l01发射和接收 nrf24l01 ...
- 基于STM32的RC522模块读写数据块以及电子钱包充值扣款系统的设计
目录 前言 STM32F103ZET6单片机 RC522 相关引脚连接 准备工作 Mifare卡 读卡过程 最终实现功能 代码 RC522.C代码 RC522.H main.c led.h 前言 本人 ...
- 基于STM32的HX711模块的电子秤设计
一.主要功能 打开串口调试助手,波特率设置为115200,系统运行后,蜂鸣器滴一声表示去皮完成,同时串口助手会显示传感器检测实时重量,若重量超过2000g,蜂鸣器报警.当按下KEY1键,物品稳定重量会 ...
- 基于STM32的GPS模块驱动(AIR530)
一.概述 由于做项目要用到GPS定位,于是在某宝购买了这款GPS模块.项目采用的MCU是STM32.废话少说,进入正题. 二.GPS模块简介 Air530 模块是一款高性能.高集成度的多模卫星定位导航 ...
最新文章
- vscode 显示最近打开的folder_vscode报错Module #x27;pygal#x27; has no #x27;Bar#x27; Member...
- bzoj3600 没有人的算术
- 8、计算机图形学——纹理的相关问题及解决办法
- 【源码解读】Screencap源码分析-基础篇
- 经典C语言程序100例之七一
- 15_torch.sigmoid,torch.nn.Sigmoid之间的区别
- 如何去掉字符串最后的逗号?(亲测)
- 计算机毕业设计制作模仿网站的期末作业通过神器——各种扒站方法(网站,软件)
- [Android-Appium]: 安卓自动化测试: 环境准备
- 可输入可选择的input
- AI 又进阶!除了鉴别 PS 图片,还能一键卸妆!
- 计算机签到程序,基于spring boot技术的签到管理系统的设计与实现计算机专业.doc...
- AdvancedInstaller.com 命令行参数
- 基于android鲜花销售app,基于Android的鲜花APP设计任务书
- 明华M1读卡器操作基本方法
- QT 6.3和Visual Studio 2022详细安装及配置教程
- GIS数据漫谈(六)— 投影坐标系统
- 攻防世界 WEB Web_python_flask_sql_injection
- hover父元素,不希望子元素消失(子元素盒子在下方展开,但鼠标移到子元素时盒子却消失了)
- 0基础编程资源大全(先收藏~慢慢看~)