0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何使用nRF24L01收发器模块启用Arduino无线通信

454398 来源:工程师吴畏 2019-07-29 14:10 次阅读

简介

今天世界上几乎所有的沟通都是无线(至少从最终用户的角度来看)。你可以在各种应用中找到某种无线通信,如电视遥控器,手机电脑,玩具,汽车等。

我不想进入无线通信的详细信息,但您可以在此处找到相关信息:无线通信:简介,类型和应用。

我们已经看到了一些无线电子枢纽中基于通信的项目,使用蓝牙红外射频(射频)和WiFi(IEEE 802.11)等不同技术实现。

但是在这个项目中,我将使用nRF24L01收发器IC实现基于RF的无线通信项目。如果你还记得,我在早期的几个项目中使用434MHz射频发射器和接收器模块实现了射频通信。

这两个射频模块之间的主要区别在于它们的工作频率。 nRF24L01使用2.4GHz RF频率,而早期的RF模块使用434MHz RF频率。

它们之间还有另一个重要区别:在434MHz射频模块中,我们有两个独立的模块;一个用于传输(发送器),另一个用于接收(接收器)。但是nRF24L0是一个收发器IC,即发送器和接收器都集成在同一个IC上。

关于nRF24L01收发器IC的简要说明

nRF24L01是Nordic Semiconductor开发的单芯片RF收发器IC。它在免许可证的2.4GHz ISM频段(ISM - 工业,科学和医疗)中运行,支持250kbps,1Mbps和2Mbps的数据速率。

对于数据速率250kbps和1Mbps,信道带宽约为1MHz。因此,如果您的数据速率限制在250kbps或1Mbps,则最小和最大工作频率为2400MHz和2525MHz,最多可以实现126个RF通道。

2Mbps数据速率mote,RF信道带宽应为2MHz或更高,以确保不重叠。

nRF24L01 IC中有一项名为MultiCeiver的特殊功能。此功能使每个RF通道具有一组6个唯一的寻址数据管道,以便每个模块可以与同一RF通道中的其他6个模块进行通信。

即将实施nRF24L01 IC,您只需要一个16MHz晶体振荡器,其支持电路和天线。要使用nRF24L01模块设计无线通信系统,您只需要一个微控制器,它通过串行外设接口(SPI)连接。

nRF24L01 IC的重要特性

超低功耗运行(26μA待机I模式,900nA断电模式)

带微控制器的SPI接口

集成射频发射器,接收器和合成器

工作电压为1.9V - 3.6V

输入引脚可以承受5V

有关nRF24L01的更多信息,请参考数据表。

nRF24L01收发器模块

使用nRF24L01 IC,几家制造商开始开发nRF24L0收发器模块板包含用于实现无线电系统的必要组件和引脚。

nRF24L01收发器模块板通常由nRF24组成L01收发器IC,16 MHz晶振,天线走线(在PCB上),用于通信和电源的引脚以及一些无源元件。

以下是典型的图像nRF24L01收发器模块板现已上市。

重要提示:上述模块几乎全部最新的nRF24L01收发器模块使用nRF24L01 + IC。它是nRF24L01 IC的高级版本,事实上,所有讨论都是前面部分关于nRF24L01 + IC。

nRF24L01收发器模块上的组件

下图显示了nRF24L01收发器模块板上的组件。

引脚配置nRF24L01收发器模块

进入nRF24L01收发器模块的引脚配置,它有8个引脚。它们是VCC,GND,MOSI,MISO,SCK,IRQ,CE和CSN。

VCC:电源引脚。只能给出3.3V。

GND:电源的GND引脚。

SCK: SPI时钟引脚。

MOSI: SPI从数据输入引脚。

MISO: SPI从数据输出引脚。

IRQ:低电平有效中断引脚。

CE:芯片启用引脚。

CSN: SPI芯片选择引脚。

将nRF24L01收发器模块与Arduino连接

如前所述,nRF24L01收发器模块通过SPI接口进行通信。因此,为了将nRF24L01收发器模块与Arduino接口,您需要使用Arduino板的SPI引脚。

由于nRF24L01是收发器模块,因此您只能在通信的一端使用一个nRF24L01收发器模块来发送和接收数据。

因此,在在这个项目中,我将使用nRF24L01收发器模块实现两个电路。在第一个电路中,我将向您展示如何使用两个nRF24L01收发器模块在两个Arduino板之间启用无线通信,其中一个Arduino-nRF24L01收发器模块对充当发送器,而另一个Arduino-nRF24L01收发器模块对充当接收器

进入第二个电路,我将使用nRF24L01收发器模块的收发器选项,并将Arduino-nRF24L01收发器模块对同时用作发送器和接收器。

但在继续使用Arduino nRF24L01收发器模块接口之前,您需要做一件重要的事情。

nRF24L01收发器模块适配器

如果您注意到nRF24L01收发器模块,则引脚不是面包板友好的,直接连接导线将不是理想的设置。

要解决此问题,您有两种选择。首先是制作一个小型穿孔板,用于将nRF24L01收发器模块插入顶部,并在底部安装面包板友好引脚。

第二个选择是购买适配器nRF24L01收发器模块,如下图所示。

如您所见,nRF24L01收发器模块的适配器包含用于插入nRF24L01收发器模块的母头和相应的公头,用于连接其他电路板,如Arduino。

nRF24L01收发器模块适配器上还有一个3.3V稳压器IC,以便您可以为适配器提供5V电源(仅适用于带3.3V稳压器的适配器,而不是直接连接到nRF24L01收发器模块本身)。

所需组件

Arduino UNO x 2

nRF24L01收发器模块x 2

操纵杆

TowerPro SG90伺服电机

LED

按钮

1KΩ电阻器

使用nRF24L01收发器模块的简单Arduino无线通信

电路图

连接

以下是Arduino UNO之间的连接和发送器端的nRF24L01模块。

nRF24L01 - Arduino

VCC - 3.3V

GND - GND

MOSI - 11

MISO - 12

SCK - 13

CE - 9

CSN - 10

因为我在接收器端使用了Arduino UNO,所以我使用了相同的连接。如果您正在使用Mega等其他Arduino板,请检查SPI引脚。

代码

发送器代码

接收器代码

注意:两个Arduino板之间的双向无线通信将很快更新。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • nRF24L01
    +关注

    关注

    17

    文章

    330

    浏览量

    69363
  • Arduino
    +关注

    关注

    187

    文章

    6461

    浏览量

    186546
收藏 人收藏

    评论

    相关推荐

    SI24R1与NRF24L01P 对比方案

    Si24R1低功耗2.4GHz收发一体射频芯片量产于2012年,由于其一致性稳定性高、功耗低、远距离、兼容替代NRF24L01+,兼容NORDIC 2.4GHz协议等特点,一直广泛应用于各物联网场景
    发表于 09-30 15:05

    射频收发器就是基带吗

    射频收发器(RF Transceiver)和基带(Baseband)是无线通信系统中两个不同的概念,它们在功能和设计上有所区别。射频收发器主要负责无线信号的发送和接收,而基带则处理信号
    的头像 发表于 09-20 11:12 261次阅读

    SI24R1 TO NRF24L01P 引脚及软硬件中文开发资料

    的视野是与友商的NRF24L01P芯片兼容通信。从而被打上了国产NRF24L01P的标签,更有甚者居然磨掉芯片原本的SI24R1的LOGO打成NRF
    发表于 07-30 14:26

    蓝牙模块、WiFi模块无线通信模块使用规范

      在当今的科技时代,无线通信模块已经广泛应用于各类电子设备中。特别是蓝牙模块、WiFi模块无线模块
    的头像 发表于 05-27 14:07 783次阅读
    蓝牙<b class='flag-5'>模块</b>、WiFi<b class='flag-5'>模块</b>等<b class='flag-5'>无线通信</b><b class='flag-5'>模块</b>使用规范

    STM8L做的计步器总是复位的原因?

    STM8L做的计步器总是复位,主芯片STM8L151K4T6,CR2477供电,无线模块NRF24L01,水银球计步,请高手帮下,可能导致复
    发表于 05-16 08:14

    NRF24L01加个if就发送不成功的原因?

    我最近在调个NRF24L01其实早已经调试好了,之前都是一个发送一个接,我现在想改成,我发送端发送成功后,接收端能返回信息回来。我调试时发现在把发送函数放到“if”里面发送不成功.把\"
    发表于 05-10 07:06

    nrf24l01+自动应答失败的原因?

    NRF24L01_Write_Reg(NRF_WRITE_REG+RF_CH,40); //设置RF通信频率 NRF24L01_Write_Reg(
    发表于 04-24 07:51

    STM8在低功耗模式(即Active-Halt或者Halt下) RTC还会继续工作吗?

    基于STM8L051的无线通信,主机STM8L051通过配置NRF24L01,接收端用无线转串口模块
    发表于 04-19 06:09

    无线通信时代nRF24L01无线模块的应用与特点

    nRF24L01是一种低功耗、高性能的2.4GHz无线收发器,由Nordic Semiconductor公司开发。它广泛应用于无线通信领域,特别是在低功耗应用和物联网设备中。
    的头像 发表于 04-16 16:05 2571次阅读
    <b class='flag-5'>无线通信</b>时代<b class='flag-5'>nRF24L01</b><b class='flag-5'>无线</b><b class='flag-5'>模块</b>的应用与特点

    NRF24L01P和SI24R1的区别

    NRF24L01无线模块广泛地运用于:无线门禁、无线数据通讯、安防系统、遥控装置、遥感 勘测、智能运动设备、工业传感
    发表于 03-29 15:05

    NBIOT无线通信模块可以传输多远?

    NBIOT无线通信模块可以传输多远? NBIOT是一种低功耗、广域覆盖的无线通信技术,专门用于物联网设备之间的通信。NBIOT无线通信
    的头像 发表于 02-01 10:52 3276次阅读

    nrf24l01接收延迟什么原因

    NRF24L01是一种低功耗的无线收发模块,广泛应用于各种无线通信系统中。它具有高度集成的特点,具备理想的发射和接收功率,还能提供数据速率高
    的头像 发表于 12-29 10:14 1093次阅读

    模块和光纤收发器的区别 光模块可以和光纤收发器连接吗?

    模块和光纤收发器的区别 光模块可以和光纤收发器连接吗?有什么注意事项? 光模块和光纤收发器是光
    的头像 发表于 12-27 11:13 2087次阅读

    LoRa1278 系列模块 100mW LoRa无线收发模块 #无线通信

    模块无线通信
    思为无线
    发布于 :2023年12月21日 18:23:51

    nRF24L01单片无线收发器芯片中文手册

    电子发烧友网站提供《nRF24L01单片无线收发器芯片中文手册.pdf》资料免费下载
    发表于 11-17 10:07 3次下载
    <b class='flag-5'>nRF24L01</b>单片<b class='flag-5'>无线</b><b class='flag-5'>收发器</b>芯片中文手册