电子说
简介
今天世界上几乎所有的沟通都是无线(至少从最终用户的角度来看)。你可以在各种应用中找到某种无线通信,如电视遥控器,手机,电脑,玩具,汽车等。
我不想进入无线通信的详细信息,但您可以在此处找到相关信息:无线通信:简介,类型和应用。
我们已经看到了一些无线电子枢纽中基于通信的项目,使用蓝牙,红外,射频(射频)和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板之间的双向无线通信将很快更新。
全部0条评论
快来发表一下你的评论吧 !