NRF24L01无线模块的使用
NRF2401芯片pin定义


NRF24L01模块pin定义

- VCC 脚接电压范围为 1.9V~3.6V 之间, 不能在这个区间之外, 超过 3.6V 将会烧毁模块, 推荐电压 3.3V 左右
- 除电源 VCC 和接地端, 其余脚都可以直接和普通的 5V 单片机 IO口直接相连, 无需电平转换. 当然对 3V 左右的单片机更加适用了.
- 硬件上面没有 SPI 的单片机也可以控制本模块, 用普通单片机 IO口模拟 SPI. 不需要单片机真正的串口介入, 只需要普通的单片机 IO口就可以了, 当然用串口也可以了.
NRF24L01的USB串口调试设备

连接方式为 NRF24L01的天线端朝向远离USB口的方向, 8pin对齐插入. 连接后是一个Z字形, 不是U字形.
Ubuntu下连接USB串口设备后检测NRF24L01模块
apt-get install cutecom安装cutecom, 运行打开界面. 通过dmesg得到串口设备名(例如 /dev/ttyUSB0)后连接. 默认波特率为9600, 点击Open Device打开

1. 查询设备配置: AT? 回车
2. 设置接收地址: AT+RXA=0xAA,0xBB,0xCC,0xDD,0xEE
3. 设置目标地址: AT+TXA=0x11,0x22,0x33,0x44,0x55
Arduino接线方式
24L01 Arduino UNO
GND GND
VCC .3V
CE digIO
CSN digIO
SCK digIO
MOSI digIO
MISO digIO
IRQ -
发送端测试代码
#include <SPI.h>
#include "nRF24L01.h"
#include "RF24.h" const uint64_t pipe = 0xE8E8E8E8E8LL;
RF24 radio(,); void setup(void){
Serial.begin();
Serial.println("RF24 Sender Started"); radio.begin();
radio.openWritingPipe(pipe);
radio.printDetails();
} void loop(void) {
Serial.print("Sending...");
unsigned long start_time = micros();
Serial.print(start_time);
Serial.print(". ");
// Take the time, and send it. This will block until complete
if (!radio.write( &start_time, sizeof(unsigned long) )){
Serial.println("failed");
} else {
Serial.println("succeeded");
}
delay();
}
接收端测试代码
#include <SPI.h>
#include "nRF24L01.h"
#include "RF24.h" const uint64_t pipe = 0xE8E8E8E8E8LL;
RF24 radio(,); void setup(void){
Serial.begin();
Serial.println("RF24 Receiver Started"); radio.begin();
radio.openReadingPipe(, pipe);
radio.startListening();
radio.printDetails();
} void loop(void){
unsigned long got_time;
if (radio.available()){
Serial.print("Receiving...");
radio.read(&got_time, sizeof(unsigned long) );
Serial.print(got_time);
Serial.println(".");
}
delay();
}
测试的时候, 先启动接收端, 再启动发送端. 如果接收端未启动, 发送端的radio.write()方法会返回失败.
NRF24L01无线模块的使用的更多相关文章
- nRF2401A/nRF24L01/nRF24L01+无线模块最常见问题汇集(转)
俗话说:每个人一生下来什么都会的,都是通过自己努力和探索出来的,NRF系列芯片,刚开始都好奇心加兴趣才来捣鼓它的,刚开始做硬件和软件,没有收发数据弄得整个人头都快炸开了,所以在此和大家分享一下前辈的经 ...
- STC8H开发(五): SPI驱动nRF24L01无线模块
目录 STC8H开发(一): 在Keil5中配置和使用FwLib_STC8封装库(图文详解) STC8H开发(二): 在Linux VSCode中配置和使用FwLib_STC8封装库(图文详解) ST ...
- nRF24L01无线模块笔记
nRF24L01模块 官网链接: https://www.nordicsemi.com/Products/nRF24-series 常见的无线收发模块, 工作在2.4GHz频段, 适合近距离遥控和数据 ...
- [51单片机] nRF24L01 无线模块 测试 按键-灯-远程控制
哈哈,穷吊死一个,自己做的一个超简单的板还没有电源提供,只得借助我的大开发板啦.其实这2个模块是完全可以分开的,无线嘛,你懂得!进入正题,这个实验的功能就是一个发送模块(大的那个板)连接4个按键,通过 ...
- NRF24L01 无线模块的使用
NRF24L01 是一款工作在2.4-2.5GHz通用ISM频段的单片收发芯片 工作电压:1.9-3.6V低电压工作 高速率:2Mbps,由于空中传输时间很短,极大的降低了无线传输中的碰撞现象 多频点 ...
- 树莓派与Arduino Leonardo使用NRF24L01无线模块通信之基于RF24库 (六) 树莓派查询子节点温湿度数据
nrl24l01每次只能发送4个字节,前面说到,第一个字节用于源节点,第二个字节用于目的节点.因此只剩下两个字节用于温度和湿度,一个字节只有八位,需要表示温湿度的正负数,因此每个字节的第一位表示正负符 ...
- 树莓派与Arduino Leonardo使用NRF24L01无线模块通信之基于RF24库 (五) 树莓派单子节点发送数据
本项目中各个节点和树莓派的通信不区分信道,因此如果由树莓派发送给特定节点的数据会被所有节点接收到,因此子节点可以判别该数据是否发给自己的,需要在数据的第二个字节中加入目标节点的编号(第一个字节为源节点 ...
- 树莓派与Arduino Leonardo使用NRF24L01无线模块通信之基于RF24库 (四) 树莓派单子节点查询
考虑到项目的实际需要,树莓派作为主机,应该只在需要的时候查询特定节点发送的数据,因此接收到数据后需要根据头部判断是否是自己需要的数据,如果不是继续接收数据,超过一定时间未查询到特定节点的数据,则退出程 ...
- 树莓派与Arduino Leonardo使用NRF24L01无线模块通信之基于RF24库 (三) 全双工通信
设计思路 Arduino Leonardo初始化为发送模式,发送完成后,立即切换为接收模式,不停的监听,收到数据后立即切换为发送模式,若超过一定时间还为接收到数据,则切换为发送模式. 树莓派初始化为接 ...
随机推荐
- warning: LF will be replaced by CRLF in dubbo-demo-api/pom.xml.
今天使用git add .的时候出现了一个错误. 错误如下: 解决方案: $ rm -rf .git // 删除.git $ git config --global core.autocrlf fal ...
- 2.1 jdk-spi的实现原理
dubbo-spi是在jdk-spi的基础上进行重写优化,下面看一下jdk-spi. 一.作用 为接口自动寻找实现类. 二.实现方式 标准制定者制定接口 不同厂商编写针对于该接口的实现类,并在jar的 ...
- ASP.NET网站管理工具的【安全】功能无法使用问题
在使用ASP.NET网站管理工具时,安全出现下面的问题: 出现这种情况的主要原因是,安全管理中需要创建用户和角色信息,所以要用到数据库,但是你没有设置好数据库. 可以打开vs自带的命令提示工具: 打开 ...
- Permutation Sequence leetcode java
题目: The set [1,2,3,…,n] contains a total of n! unique permutations. By listing and labeling all of t ...
- 搭建MySQL高可用负载均衡集群(转)
阅读目录 1.简介 2.基本环境 3.配置MySQL主主复制 4.中间件简述 4.1.Haproxy介绍 4.2.keepalived介绍 5.中间件的安装与配置(haproxy.keepalived ...
- 【Spark】SparkStreaming-如何使用checkpoint
SparkStreaming-如何使用checkpoint sparkstreaming checkpoint 默认_百度搜索 spark streaming中使用checkpoint - HarkL ...
- RAMPS1.4 3d打印控制板接线与测试5
切片软件是生产打印机主控板可以识别的代码(Gcode)的工具,没有这个软件的帮忙,打印机不能识别3d模型文件.这里暂时只介绍Slic3r这个切片软件.简单好用功能强大. 1.打开expert模式 Sl ...
- Install Hyper-V on Windows 10
Enable Hyper-V to create virtual machines on Windows 10.Hyper-V can be enabled in many ways includ ...
- OpenGL ES3 非常好的系列文章
OpenGL ES3 非常好的系列文章: OpenGL-ES 3.0学习指南(五)--EGL基础 NDK开发OpenGL ES 3.0(二)--初见GLES,第一个三角形 NDK开发OpenGL ES ...
- php代码收集
thinkphp <?php class HekaAction extends BaseAction{ public function index(){ require_once './wang ...