上次,我们制作了一个关于ESP8266-01的教程 (ESP8266 安装教程), ),该模块是一种小尺寸WiFi模块,可以让用户在项目中轻松添加WiFi功能。今天,我们将讨论 nRF24L01+ RF模块,该模块是ESP8266 ESP-01的姐妹模块,能够让用户在项目中添加无线射频通信功能。nRF24L01+和ESP8266 ESP-01具有类似的外形和引脚布局(从远处看完全一样),但是受控方式和功能完全不同。在本教程中,我们将会介绍此RF模块的使用基础,还会说明该模块如何与其他RF模块和微控制器通信。为此,我们将演示该模块如何与Arduino Uno微控制器相连接。
nRF24L01+模块基于北欧半导体公司的nRF24L01+,一种“2.4GHz ISM(工业、科学和医疗)频段RF收发IC”。
技术规格:
- 2.4GHz ISM频段工作
- 额定Vcc为3.3V(可承受5V输入
- 片上稳压
- 无线传输速率为250kbps, 1 Mbps, 2Mbps
- 超低功耗工作
- 低电流消耗(900nA – 26μA)
- 6条数据管道
首先,我们会介绍使用该模块的硬件部分。与ESP-01类似,该RF模块配备4×2公头接口。然而,其实际引脚排列与ESP-01模块不同,因为该模块通过不同的通信协议(SPI)与其他设备进行通信。如果您想了解有关SPI协议的更多信息,请查看我们的 Arduino 通信协议教程!
该RF模块的引脚布局如下图所示(来自 Addicore网站)。
图1.nRF24L01+ RF模块的引脚布局/ ©Addicore
该RF模块作为SPI从机使用,因此只能与具有专用SPI通信线路的器件一起工作。这意味着图中的SPI MOSI、MISO和SCK(时钟)引脚必须连至微控制器的相应引脚。Arduino上的对应引脚如下:
- MOSI: Arduino D11
- MISO: Arduino D12
- SCK: Arduino D13
CE和CSN引脚可以连接Arduino上的任何输出GPIO引脚。进行SPI通信初始化时,软件应适当指定这两个引脚。
RF模块和Arduino之间的连接示例如下所示:
|