NRF24L01 无线通信模块使用方法

昨天登录百度账号,无意间发现漏看了好多朋友的私信,其中不少是找我探讨关于NRF2401模块的。从12年到14年的信件都有(平时很少注意系统提示信息。。。)。


hust-MC.jpg

实在不好意思,也许很多朋友已经搞定这个模块了,也许有的还在研究。用了半天的时间找出了相关资料并整理好,在这里统一共享给大家,希望能够帮到大家。

NRF24L01是在2012年全国电子设计大赛中使用过的一款无线通信模块,通过SPI向芯片写入数据从而控制芯片发送、接收消息。24L01的数据手册下载链接可以在文章的末尾找到。下面是我总结的几点使用步骤,大家也可以直接跳过下面的讲解,因为下载链接里面已经有非常完整的配套数据手册。如果在使用过程中遇到什么问题,可以随时来这里给我留言,大家一起讨论,相互学习~~

操作步骤:

  1. 模块初始化。初始状态时,LED、CE、SCK引脚均拉低,CSN拉高,SPI初始完成。随后分别设置SPI接收,发送的地址。设置工作频道、数据长度、发射频率等信息。模块随即进入等待状态。
  2. 设置工作模式。拉低CE设置为stand by I 模式,配置SPI读写寄存器,随后拉高CE,短暂延时。配置好工作模式(所有工作模式及相应寄存器位详见数据手册)。
  3. 发送:打包好数据,通过NRF24L01_TxPacket()函数发送数据包;
    接收:通过NRF24L01_RxPacket()等待数据的到来。

PS:代码中有多处短延时,由于SPI对于时序要求高,一定要查清楚所用主控芯片的晶振,指令周期。延时不当会直接导致模块无法正常工作!

大家在使用中还有什么疑问,欢迎随时来讨论。
另外,很多朋友通过百度知道向我询问源代码,但是由于百度账号登陆的不多,未能即时回复。如果大家需要配套源代码,可以在下面留下联系方式,我会即时的将源代码发送给各位,希望能够帮到大家~~ 谢谢!

文档链接:http://yun.baidu.com/share/link?shareid=1590497368&uk=67973003

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • SPI通信实验 SPI简介 串行外设接口(Serial Peripheral Interface Bus,SPI)...
    btskyrmb阅读 9,778评论 1 12
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 174,351评论 25 709
  • 1 说明 在不同的平台,会使用不同的网络组件,形成具有集成不同功能种类的网络协议。 在Linux上,一般会有很齐全...
    wit_yuan阅读 4,419评论 0 3
  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 11,290评论 6 13
  • 云儿愿跟风儿去 鱼儿只爱水里戏 亲爱的你去哪里 为了什么就离去 其实你也不愿意 泪流肚里笑咪咪 为了全家的幸福 甘...
    佳民阅读 367评论 0 1