模吧

 找回密码
 立即注册

QQ登录

只需一步,快速开始

手机号码,快捷登录

4605查看 | 18回复

关于2.4G(NRF24L01+)频谱仪的探讨,和移植stm32版本。

[复制链接]
发表于 2018-1-30 15:28:18 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
本帖最后由 Switch_ 于 2018-1-30 16:09 编辑

首先我也不是什么大神,也只是一个刚毕业不久的菜鸟而已,有那里说的不对,大神们可以指出。
一次无意的发现了这个有趣的东西,应为之前我也使用过nrf24l01开发过一款遥控主要产品,所以我对这个东西特别感兴趣,特别想了解其中的原理,因为在我使用的过程中没有发现nrf24l01这款无线模块有RSSI(信号强度)这个功能,这就让我更加好奇了。它是怎么检测频道的占用和信号的强度。我疯狂的寻找nrf24l01频谱仪的源程序,找了好久发现有挺多这样的帖子,都是arduino的程序,而且我一直没有找到源程序,有一些找到打不开。
后来通过(http://www.moz8.com/forum.php?mo ... 2871&highlight=2.4G
这个帖子找到了(http://singlechannellersreunited.co.uk/phpbb3/viewtopic.php?f=9&t=721)
歪国朋友的帖子,下载到源程序,可惜是LCD 1602显示的,不是网上大部分的OLED屏幕,后面再经过一番折腾,终于找到了OLED版本的NRF24L01的频谱仪了。首先先上传我找到的两份源程序,稍微修改了一下,可以正常编译通过。

分析源程序之前我觉得很有必要先,再次看一下nrf24l01+的文档,可是找了好久都没找到中文版的nrf24l01+的文档,一般中文版都是nrf24l01的文档。哎,只能怪自己英文没学好。最终还是让我找到一个大神的博客是分析nrf24l01+的,写的挺不错的
这里分享给大家:http://gashero.iteye.com/blog/2333336     我认认真真的看来一遍。

发现只有一个寄存器是有关的    Received Power Detector=RPD,地址是0x09,其bit0指出接收功率是否低于-64dBm。如果接收功率低于-64dBm,RDP=0。再去分析程序,发现程序也就是通过这个寄存器来判断的。而通过使用发现,OLED屏幕显示条状的高度,其实只是该频道的占用量而已,而不是信号强度。当打开这个频谱仪,在通过大量使用路由器wifi的数据,会发现一部分频道的占用量会爆满。所以这个只能粗略的检测改频道的占用量。而不是检测信号强度。

程序的分析:通过配置nrf24l01模块为接收模式,然后按顺序切换频道,延时一段时间后读取RDP这个寄存器的值为1还是0,当为1的时候增加数组对应频道的占用量的值,当为0时减小数组对应频道的占用量的值,然后扫描一段时间后,再通过这个数组的值,来显示OLED对应频道的条状高度。通过直至循环。实现初略观察到该频道的占用情况。

后来通过我以前使用的nrf24l01的程序稍微修改,在stm32 平台上实现了和arduino平台一样的频谱仪功能,只是我没有把OLED显示也移植过来,只是通过串口检测了。
暂时不打算移植OLED显示,不打算折腾下去了。因为自己还有其他小东西需要制作。所以留着以后有空再折腾吧。

在这里把我折腾心德记录一下,因为刚发现这个东西的时候,那个心情是无比的激动,通过深入的了解,也学习到了一些东西。还是不枉折腾的,生命在于折腾嘛!



nRF24L01_Scanner_LCD_I2C_修改好编译通过.rar

3.8 KB, 下载次数: 12, 下载积分: 牛币 -10

售价: 1 牛币  [记录]

LCD 1602

nRF24L01_Scanner_OLED 修改完成编译通过.rar

7.35 KB, 下载次数: 17, 下载积分: 牛币 -10

售价: 1 牛币  [记录]

OLED

发表于 2018-1-30 15:35:42 | 显示全部楼层
这个不是很实用
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-1-30 16:06:45 | 显示全部楼层
wcq12 发表于 2018-1-30 15:35
这个不是很实用

是的,没有我刚发现时以为 的高大上。
回复 支持 反对

使用道具 举报

发表于 2018-3-5 15:39:40 | 显示全部楼层
放点装好的照片来
回复 支持 反对

使用道具 举报

发表于 2018-3-11 18:04:11 | 显示全部楼层
看起来不错 感谢 楼主分享
回复 支持 反对

使用道具 举报

发表于 2018-4-16 17:15:54 | 显示全部楼层
感谢楼主的分享,对楼主的钻研精神表示佩服。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-4-18 21:54:54 | 显示全部楼层
清枫城主 发表于 2018-4-16 17:15 关于2.4G(NRF24L01+)频谱仪的探讨,和移植stm32版本。 频谱仪 混频器 作者:Switch_ 1402
感谢楼主的分享,对楼主的钻研精神表示佩服。

谢谢,
回复 支持 反对

使用道具 举报

发表于 2018-7-3 14:40:10 | 显示全部楼层
都是大佬哇,顶一下
回复 支持 反对

使用道具 举报

发表于 2018-7-3 19:15:39 | 显示全部楼层
好东西,学习学习
回复 支持 反对

使用道具 举报

发表于 2018-7-6 10:28:14 | 显示全部楼层
支持一下,谢谢楼主分享
回复 支持 反对

使用道具 举报

发表于 2018-7-13 10:11:05 | 显示全部楼层
我大致看了一下源码 ,这东西就是设置不同频点然后读取RSSI值
回复 支持 反对

使用道具 举报

发表于 2018-8-28 15:57:45 | 显示全部楼层

感谢楼主的分享,对楼主的钻研精神表示佩服.最低接受电平是多少
回复 支持 反对

使用道具 举报

发表于 2018-10-26 00:16:46 | 显示全部楼层
有意思 学习了 感谢楼主的分享
回复 支持 反对

使用道具 举报

发表于 2018-12-3 18:33:50 | 显示全部楼层
技术贴  不错
回复 支持 反对

使用道具 举报

发表于 2019-4-1 15:39:18 | 显示全部楼层
现在正在搞和这个相关的,谢谢楼主分享关于2.4G(NRF24L01+)频谱仪的探讨,和移植stm32版本。 频谱仪 混频器 作者:喋喋不休 2944
回复 支持 反对

使用道具 举报

发表于 2019-4-12 19:17:12 | 显示全部楼层
我去居然买了下载不下来啊。
回复 支持 反对

使用道具 举报

发表于 2019-8-4 17:27:49 | 显示全部楼层
有用                    
回复 支持 反对

使用道具 举报

发表于 2019-8-4 17:28:58 | 显示全部楼层
顶                                       
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|关于模吧|APP下载|广告报价|小黑屋|手机版|企业会员|商城入驻|联系我们|模吧 ( 冀公网安备13080502000084号 )

© 2013-2020 Moz8.com 模吧,玩出精彩!