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

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

3天内不再提示

怎样用nRF24l01模块创建无线连接

454398 来源:工程师吴畏 2019-07-26 10:45 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

nRF24L01无线电收发器提供了非常有效和廉价的通信方式。

nRF24l01模块实际上是一个无线电收发器模块,它工作在2.4 GHz频率上。该模块具有同时发送和接收数据的功能,可用于各种IOT项目以创建无线连接。通过显示它是一个非常小的模块,但它的功能是惊人的。

这个模块可以用于两个方式沟通的目的,在本教程中我们设置两个Arduino uno之间的单向通信。

开始之前我们有下载一些Arduino库,以便顺利运行程序。您可以在此处下载库文件。

nRF24lL01的引脚图

怎样用nRF24l01模块创建无线连接

Reciver Circuit

按照上图,将nRF24L01和伺服电机连接到arduino。

重要提示:输入电压为1.9V~3.6V,不要超过此电压,否则会烧毁模块。

的Arduino ------------- nRF24L01的

Pin 9 ----------- CE

Pin 10 --------- CS(N)

Pin 11 ---------- MOSI

Pin 12 --------- MISO

Pin 13 ---------- SCK

引脚3 -------------伺服信号引脚

3.3v ---------- --- VCC

GND ---------- - GND

现在将下面给出的接收器代码上传到第一个Arduino。

#include
#include
#include
#include//includetheServolibrary
ServomyServo;

intmsg[1];
RF24radio(9,10);//checkyourpinnumberonRF24githubcheckyouhavetheright
//pinnumberforthearduinoyou'reusing.thispinisdiffrentfordiffrentarduinomodels.

constuint64_tpipe=0xF0F0F0F0D2L;


voidsetup(void)
{
myServo.attach(3);
Serial.begin(9600);
radio.begin();
radio.openReadingPipe(1,pipe);
radio.startListening();
myServo.write(0);//initialpositionofservoatangle0

}

voidloop(void)
{
if(radio.available()){
booldone=false;
while(!done){
done=radio.read(msg,1);
Serial.println(msg[0]);
if(msg[0]==212){
myServo.write(180);
}
else{
myServo.write(0);
}
}
}
}

发送器电路

按照上图,将nRF24L01和伺服电机连接到arduino。

重要提示:输入电压为1.9V~3.6V,不要超过此电压,否则会炸毁模块。

的Arduino ------------- nRF24L01的

Pin 9 ----------- CE

Pin 10 --------- CS(N )

Pin 11 ---------- MOSI

Pin 12 --------- MISO

Pin 13 ---------- SCK

5脚-------------按钮

3.3v ------------- VCC

GND ------------ GND

现在将下面给出的发射机代码上传到第二个Arduino。

现在给Arduino板供电并按下按钮,发现伺服旋转。

#include
#include
#include

intmsg[1];
RF24radio(9,10);//checkyourpinnumberonRF24githubcheckyouhavetheright
//pinforthearduinoyou'reusing.thispinnumberisdiffrentfordiffrentarduinomodels.

constuint64_tpipe=0xF0F0F0F0D2L;

intbuttonPin1=5;
intbuttonState1=0;

voidsetup(void)
{
Serial.begin(9600);
radio.begin();
radio.openWritingPipe(pipe);
pinMode(buttonPin1,INPUT);

}

voidloop(void)
{
buttonState1=digitalRead(buttonPin1);


if(buttonState1==HIGH)
{
msg[0]=212;
radio.write(msg,1);
}

}

谢谢你,希望教程帮助你......

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

    关注

    17

    文章

    332

    浏览量

    75531
  • 无线连接
    +关注

    关注

    2

    文章

    464

    浏览量

    47762
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    CW32L012/F030灵眸X1智能小车——使用NRF24L01通信

    NRF24L01所使用的通讯协议为SPI,SPI又可分为软件SPI和硬件SPI。
    的头像 发表于 04-01 16:49 2523次阅读
    CW32<b class='flag-5'>L</b>012/F030灵眸X1智能小车——使用<b class='flag-5'>NRF24L01</b>通信

    51驱动NRF24L01通信,NRF24L01与TTL转NRF24L01模块通信

    NRF24L01 一、简介 NRF24L01 是 NORDIC 公司最近生产的一款无线通信通信芯片,采用 FSK 调制,内部 集成 NORDIC 自己的 Enhanced Short Burst
    的头像 发表于 03-17 14:37 174次阅读
    51驱动<b class='flag-5'>NRF24L01</b>通信,<b class='flag-5'>NRF24L01</b>与TTL转<b class='flag-5'>NRF24L01</b><b class='flag-5'>模块</b>通信

    SI24R1:一款低功耗国产兼容 NRF24L01+开发资料

    影响无线通信。故,用户可以更改电源走线设计,LDO出来后分两路,一路给到RF,一路给到MCU+ADC。3.用户一直在使用nRF24L01P,替换成Si24R1后发现功耗突然大了许多。解决办法:对于已经
    发表于 01-28 10:50

    Arduino UNO 可视化GT-24工业级无线透传

    一、前言 无线透传市面上较为常见的是基于蓝牙、esp的多种透传模块,今天介绍的则是NRF24L01芯片构成的电路。(nRF24L01是由N
    的头像 发表于 01-27 10:14 339次阅读
    Arduino UNO 可视化GT-<b class='flag-5'>24</b>工业级<b class='flag-5'>无线</b>透传

    CW32来实现2.4G无线传输

    传输通信,为以后的智能家居可能会提供一点帮助。 一、无线传输的基础 我们是使用CW32F030的SPI已经市面上常见的NRF24L01模块来实现两块开发板之间的无线传输,可以远程控制
    发表于 01-20 06:03

    松下无线连接模块:多样选择,满足多元设计需求

    松下无线连接模块:多样选择,满足多元设计需求 在当今的电子设备设计中,无线连接功能至关重要。松下提供了丰富的无线连接模块产品线,涵盖蓝牙和
    的头像 发表于 12-22 10:10 567次阅读

    飞易通蓝牙与Wi-Fi模块:医疗产品无线连接的全能助手

    通,作为物联网无线连接解决方案的佼佼者,凭借其多样化的蓝牙模块、Wi-Fi蓝牙组合模块及天线产品,正为医疗产品带来前所未有的无线连接体验。本文将深入探讨飞易通产品在医疗领域的应用,展现
    的头像 发表于 12-17 14:43 582次阅读
    飞易通蓝牙与Wi-Fi<b class='flag-5'>模块</b>:医疗产品<b class='flag-5'>无线连接</b>的全能助手

    探索Type 2FY无线连接模块:小身材大能量

    探索Type 2FY无线连接模块:小身材大能量 在当今的物联网(IoT)时代,无线连接模块的性能和尺寸成为了关键因素。今天,我们就来深入了解一下Murata的Type 2FY
    的头像 发表于 12-16 15:45 571次阅读

    SI24R1完美代替NRF24L01

    NRF24L01无线模块广泛地运用于:无线门禁、无线数据通讯、安防系统、遥控装置、遥感勘测、智能运动设备、工业传感器;平常我们用到的
    发表于 11-28 11:10

    使用NRF24l01软件包注册设备失败怎么解决?

    1.根据软件包提示第一步先打开了SPI驱动框架 2.然后软件包添加了 nrf24l01最新版本以及demo、debug 3.在board.h #define using_spi1 在board.c
    发表于 09-23 06:51

    官网nrf24l01的例程demo会出现互斥锁报错是为什么?

    我在用nrf24L01官网下载的例程包,stm32进行开发,串口助手显示互斥锁错误,有朋友遇到这个问题吗
    发表于 09-10 06:05

    SI24R1:答题卡方案芯片替代NRF24L01+

    SI24R1简介Si24R1低功耗2.4GHz收发一体射频芯片量产于2012年,由于其一致性稳定性高、功耗低、远距离、兼容替代NRF24L01+,兼容NORDIC 2.4GHz协议等特点,一直
    发表于 07-31 10:29

    NRF24L01项目资料(2.4G通信)实例项目下载

    NRF24L01项目资料(2.4G通信)实例项目,推荐下载!
    发表于 06-03 20:46

    nRF24L01+ Altium Designer库文件

    nRF24L01+ Altium Designer库文件下载链接
    发表于 04-30 15:26

    基于nRF24L01+的2.4GHz无线模块设计与应用

    nRF24L01+是一款由Nordic Semiconductor设计的单片射频收发芯片,工作于2.4~2.5GHz ISM频段,采用GFSK调制技术,支持高达2Mbps的数据传输速率,具备低功耗特性,适用于2.4G无线通信应用场景。
    的头像 发表于 04-28 11:19 1369次阅读
    基于<b class='flag-5'>nRF24L01</b>+的2.4GHz<b class='flag-5'>无线</b><b class='flag-5'>模块</b>设计与应用