OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 7975|回复: 12

nRF24L01模块资料

[复制链接]

75

主题

458

帖子

4

精华

金牌会员

Rank: 6Rank: 6

积分
1633
金钱
1633
注册时间
2012-8-28
在线时间
71 小时
发表于 2014-5-2 11:12:46 | 显示全部楼层 |阅读模式
本帖最后由 750273008 于 2017-4-12 17:12 编辑

以前在stm32发过帖子,6个发射机发信号,用1个接收机收。<br>
发现还有个别人问我通讯的问题,基本都是没有好好看手册。<br>
硬件io脚<br>
<br><u style="background-color: black;"><font color="#ffffff">
1<b>GND</b></font></u>&nbsp;&nbsp; &nbsp;2VCC
<div>
        3CE &nbsp; &nbsp; &nbsp; 4CSN
</div>
<div>
        5SCK &nbsp;&nbsp;&nbsp; 6MOSI
</div>
<div>
        7MISO&nbsp; &nbsp;8IRQ<br>
<br>
<span style="background-color: black;"><u><font color="#ffffff"><b>1</b>地</font></u> </span>&nbsp; &nbsp; &nbsp;2电源3.3v<br>
3使能&nbsp;&nbsp; 4SPI通讯使能<br>
5时钟 &nbsp; 6输入<br>
7输出&nbsp;&nbsp;  8中断输出<br>
<br>
注io脚电平:CE为高电平时模块工作,CSN低电平时有效,SCK上升沿有效,IRQ中断时低电平<br>
<br>
<br>
读寄存器地址&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; AAAAA &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;//读地址时,直接输入寄存器地址就可以。&nbsp;&nbsp;&nbsp;&nbsp; <br>
写寄存器地址&nbsp;&nbsp;&nbsp;&nbsp; 1 AAAAA &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;//相当于二进制100000是0x20,比如要写0x00寄存器的时候,要写0x00+0x20等于的值<br>
<br>
空操作 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 0xff &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;//空操作,把要读的地址用spi写入后,需要写0xff,(写0xff的同时无线模块会输出该寄存器的设置)<br>
<br>
TX缓存包写&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0xA0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;       1位~32位          无线<b><span style="color:#FFE500;background-color:#E53333;">发送寄存器</span></b>(写入数据可以发送出去)(直接写<span style="color:#000000;background-color:#E53333;"><b>0xA0</b></span>,uchar数据,uchar数据 。。。32字节)<br>
RX缓存包读&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0x61&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;1位~32位          无线<span style="color:#337FE5;background-color:#E53333;"><span style="color:#FFE500;"><b>接收寄存器 </b><span style="color:#000000;background-color:#FFFFFF;">(低字节先输出)<br>
<br>
TX缓存包清空 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 0xE1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 写0xff                 清空无线接收数据(写地址0xe1,0xff) <br>
</span></span></span><br>
RX缓存包清空 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 0xE2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;                  写0xff                 清空无线接收数据(写地址0xe2,0xff)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>
<br>
TX数据重发 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;0xE3                 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 数据重发(写地址0xe3,0xff) <br>
<br>
寄存器 <span style="color:#E53333;background-color:#FFE500;">0x00</span><br>
7不用<br><span style="background-color: cyan;">
6</span>接收完成中断使能(1关0开,中断产生时IRQ脚底电平) <br><span style="background-color: cyan;">
5</span>发送完成中断使能 <br><span style="background-color: cyan;">
4</span>重发中断使能 <br><span style="background-color: cyan;">
3</span>校验使能 <br><span style="background-color: cyan;">
2</span>校验位选择(0:8位1:16位) <br><span style="background-color: cyan;">
1</span>无线电源(1开,0关) <br><span style="background-color: cyan;">
0</span>无线工作方式(1接收模式0发送模式)<br>
<br>
寄存器 <span style="color:#E53333;background-color:#FFE500;"> 0x01</span><br>
7不用<br>
6不用<br><span style="background-color: cyan;">
5</span>地址5自动应答(1开0关)<br><span style="background-color: cyan;">
4</span>地址4自动应答(1开0关) <br><span style="background-color: cyan;">
3</span>地址3自动应答(1开0关) <br><span style="background-color: cyan;">
2</span>地址2自动应答(1开0关) <br><span style="background-color: cyan;">
1</span>地址1自动应答(1开0关) <br><span style="background-color: cyan;">
0</span>地址0自动应答(1开0关) <br>
<br>
寄存器 <span style="color:#E53333;background-color:#FFE500;"> 0x02 </span><br>
7不用<br>
6 不用<br>
5地址5接收允许(1开,0关) <br>
4地址4接收允许(1开,0关) <br>
3地址3接收允许(1开,0关) <br>
2地址2接收允许(1开,0关) <br>
1地址1接收允许(1开,0关) <br>
0地址0接收允许(1开,0关) <br>
<br>
寄存器 <span style="color:#E53333;background-color:#FFE500;">0x03</span> <br>
7<br>
6<br>
5<br>
4<br>
3<br>
2<br>
10<span style="color:#2B2B2B;line-height:21px;font-family:arial, sans-serif;font-size:14px;background-color:#FAFAFA;">通讯地址字节总长度</span>(<span style="background-color:#E53333;">00</span>:无效<span style="background-color:#E53333;">01</span>:3字节<span style="background-color:#E53333;">10</span>:4字节<span style="background-color:#E53333;">11</span>:5字节)<br>
<br>
<br>
寄存器 <span style="color:#E53333;background-color:#FFE500;">0x04</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>
7654自动重发延时     0000:250微秒  0001:500微秒。。。。1111:4000微秒<br>
3210自动重发次数     0000:关           0001:1次    0002:2次   1111:15次<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>
<br>
寄存器 <span style="color:#E53333;background-color:#FFE500;"> 0x05 </span><br>
7不用<br>
<b><span style="color:#003399;background-color:#E53333;">6543210</span></b> 000 0000频率最低。    111 1111频率最高2.525GHz<br>
<br>
<br>
寄存器<span style="color:#E53333;background-color:#FFE500;"> 0x06 </span><br>
7连续载波传输(1开,0关)<br>
6<br>
5<span style="color:#FFE500;background-color:#000000;">速率250kbps</span>(1开,0关) (和位3配合使用,位5位3 =  00:1Mbps    01:2Mbps     10:250kbps   11:不使用) <br>
4<span style="color:#FFFFFF;background-color:#E53333;"><b>频率受晶振控制</b><span style="color:#000000;background-color:#FFFFFF;">(1开,0关)</span></span><br>
3<span style="color:#FFE500;background-color:#000000;">数据速率</span>(0:1Mbps    1:2Mbps)(和位5配合使用,位5位3 =  00:1Mbps    01:2Mbps     10:250kbps   11:不使用)<br>
21<b><span style="color:#FFFFFF;background-color:#E53333;">发射功率</span></b>(00:-18dbm 01:-12dbm   10:-6dbm   11:0dbm)(注:我的模块11是20dpm哈哈哈哈哈哈哈哈。。。)<br>
<br>
0<span style="color:#FFFFFF;background-color:#E53333;"><b>噪声放大</b></span>(信号增益)(1开0关)<br>
<br>
寄存器 <span style="color:#E53333;background-color:#FFE500;"> 0x07&nbsp; </span>状态寄存器(写1清除对应的中断) <br>
7<br>
6&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; 接收完成<br>
5&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; &nbsp; 发送完成<br>
4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; 重发失败(超过设定的重发次数)<br><u><font color="#ff0000" style="background-color: lime;">
321</font></u>&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;   000通道0,&nbsp;&nbsp; &nbsp;   001通道1,&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; 002通道2,。。。。(查看是哪个地址收到数据)<br>
&nbsp;0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TX FIFO满标志(发射缓存包满)<br>
<br>
寄存器 <span style="color:#E53333;background-color:#FFE500;"> 0x08 </span><br><span style="background-color: cyan;">
7654</span>:数据丢包&nbsp; 计数器<br>
&nbsp;<br><span style="background-color: cyan;">
3210</span>:重发数据 &nbsp;计数器<br>
&nbsp;<br>
&nbsp;<br>
寄存器 <span style="color:#E53333;background-color:#FFE500;">0x09 </span><br>
7:<br>
6:<br>
5:<br>
4:<br>
3:<br>
2:<br>
1:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br><span style="background-color: cyan;">
0</span>:载波检测(检查附近有无该频率。可检测是否有其他发射器在使用这个频率。)<br>
<br>
寄存器 <span style="color:#E53333;background-color:#FFE500;">0x0a </span><br>
40:39:38.。。。。。。2:1:0      (<b><span style="color:#FFFFFF;background-color:#E53333;">地址0</span></b> 注: 位39到位0可以随意改 )<br>
<br>
<br>
寄存器 <span style="color:#E53333;background-color:#FFE500;">0x0b </span><br>
40:39:38.。。。。。。2:1:0      (地址1,注: 位39到位0可以随意改) <br>
<br>
<br>
寄存器 <span style="color:#E53333;background-color:#FFE500;">0x0c </span><br>
40:39:38.。。。。。。2:1:0      (通道2的地址,注:位39到位8的值和地址1共用,位7到位0可以随意改) <br>
<br>
<br>
寄存器 <span style="color:#E53333;background-color:#FFE500;">0x0d </span><br>
40:39:38.。。。。。。2:1:0      (通道3的地址,注:位39到位8的值和地址1共用,位7到位0可以随意改) <br>
<br>
<br>
<br>
寄存器 <span style="color:#E53333;background-color:#FFE500;">0x0e </span><br>
40:39:38.。。。。。。2:1:0      (通道4的地址,注:位39到位8的值和地址1共用,位7到位0可以随意改) <br>
<br>
<br>
<br>
寄存器 <span style="color:#E53333;background-color:#FFE500;">0x0f </span><br>
40:39:38.。。。。。。2:1:0      (通道5的地址,注:位39到位8的值和地址1共用,位7到位0可以随意改) <br>
<br>
<br>
<br>
寄存器 <span style="color:#E53333;background-color:#FFE500;">0x10 </span><br>
40:39:38.。。。。。。2:1:0      (<span style="color:#E53333;"><b><span style="color:#FFFFFF;background-color:#E53333;">发射地址</span></b></span>,注: 位39到位0可以随意改)<span style="color:#FFE500;background-color:#000000;">数值要与接收模块一致</span> <br>
<br>
寄存器 <span style="color:#E53333;background-color:#FFE500;">0x11 </span><br>
7<br>
6<br>
543210&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 地址0传输的有效字节(设置32就是只接收32字节)<br>
<br>
寄存器 <span style="color:#E53333;background-color:#FFE500;">0x12 </span><br>
7<br>
6<br>
543210&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 地址1的有效字节 <br>
寄存器 <span style="color:#E53333;background-color:#FFE500;">0x13 </span><br>
7<br>
6<br>
543210&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 地址2的有效字节 <br>
寄存器 <span style="color:#E53333;background-color:#FFE500;">0x14 </span><br>
7<br>
6<br>
543210&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 地址3的有效字节 <br>
寄存器 <span style="color:#E53333;background-color:#FFE500;">0x15 </span><br>
7<br>
6<br>
543210&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 地址4的有效字节 <br>
寄存器 <span style="color:#E53333;background-color:#FFE500;">0x16 </span><br>
7<br>
6<br>
543210&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 地址5的有效字节 <br>
<br>
<br>
寄存器 <span style="color:#E53333;background-color:#FFE500;">0x17&nbsp; </span>缓存包状态寄存器(只读) <br>
7<br>
6重发状态<br>
5TX寄存器满(1满)<br>
4TX寄存器空(1空)<br>
3<br>
2<br>
1RX寄存器满(1满)<br>
0RX寄存器空(1空)<br>
&nbsp;<br>
寄存器 <span style="color:#E53333;background-color:#FFE500;"> 0x1c </span>启用动态载荷长度 <br>
7<br>
6<br>
5 通道5开<br>
4 通道4开 <br>
3 通道3开 <br>
2 通道2开 <br>
1 通道1开 <br>
0 通道0开 <br>
<br>
寄存器 <span style="color:#E53333;background-color:#FFE500;">0x1d</span> <br>
7<br>
6<br>
5<br>
4<br>
3<br>
2 使能动态载荷(1开)<br>
1 使能载荷应答(1开)<br>
0 使能发送载荷但不应答(1开)<br>
<br>
</div>
寄存器<span style="color:#E53333;background-color:#FFE500;">0xA0</span> TX缓存包 <br>
位32~~~~~~~位0      (32字节)<br>
<br>
寄存器<span style="color:#E53333;background-color:#FFE500;">0x61</span> RX缓存包 <br>
位32~~~~~~~位0      (32字节)<br>
&nbsp;

nRF2401编程指南 (1).pdf

233.07 KB, 下载次数: 1561

NRF24L01_中文.pdf

890.66 KB, 下载次数: 2187

QQ750273008有好的资料记得发给我哦。。。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2014-5-2 13:26:06 | 显示全部楼层
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

6

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
96
金钱
96
注册时间
2014-5-2
在线时间
14 小时
发表于 2014-5-2 16:18:07 | 显示全部楼层
所谓的多从机发射,一主机接受,实际上不可能在一个时刻了同时接受6个发射机的数据。
<br>这个接收主机只是开了了6个通道允许接受来自6个发射机的信息,但每个时刻只能接收一个通道的信息,至于优先级就无从可知了。
回复 支持 反对

使用道具 举报

75

主题

458

帖子

4

精华

金牌会员

Rank: 6Rank: 6

积分
1633
金钱
1633
注册时间
2012-8-28
在线时间
71 小时
 楼主| 发表于 2014-5-2 18:13:44 | 显示全部楼层
回复【3楼】李马克:
<br>---------------------------------
<br>正确,但手册上说应答模式下,数据不大会碰撞。基本不需要错开发射时间。可以检测CD寄存器0x09如果读到的是1才说明数据拥堵,需要改频率。数据字节越短,通讯时间也越短,几百微秒内完成。大数据,或250kps才会大于500us。
QQ750273008有好的资料记得发给我哦。。。
回复 支持 反对

使用道具 举报

7

主题

67

帖子

0

精华

初级会员

Rank: 2

积分
156
金钱
156
注册时间
2013-8-24
在线时间
16 小时
发表于 2014-10-14 23:16:17 | 显示全部楼层
大神,啥时也弄下cc2540啊
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手入门

积分
22
金钱
22
注册时间
2012-10-8
在线时间
0 小时
发表于 2015-1-11 20:21:56 | 显示全部楼层
EN_AA=0x01的时候,通道0可以通信。
<br>&nbsp;我想用NOACK方式传输,将EN_AA置为0x00,就没有数据了,这时为什么啊?
<br>
<br>要怎么样才能No_ACK
回复 支持 反对

使用道具 举报

5

主题

65

帖子

0

精华

初级会员

Rank: 2

积分
155
金钱
155
注册时间
2014-8-16
在线时间
34 小时
发表于 2015-4-13 13:47:23 | 显示全部楼层
楼主,看了很多你的帖子,请您有空看下这个NRF24L01问题,谢谢&nbsp;&nbsp;&nbsp;http://www.openedv.com/posts/list/49930.htm
回复 支持 反对

使用道具 举报

31

主题

146

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2170
金钱
2170
注册时间
2014-6-30
在线时间
339 小时
发表于 2015-4-14 09:40:08 | 显示全部楼层
接受端能不能自主选择要接受的通道
在电路上充实自己
回复 支持 反对

使用道具 举报

15

主题

82

帖子

0

精华

初级会员

Rank: 2

积分
162
金钱
162
注册时间
2015-4-13
在线时间
0 小时
发表于 2015-4-19 14:49:16 | 显示全部楼层
回复【4楼】750273008:
<br>---------------------------------
<br>楼主我只是想知道这个模块能连接wifi信号吗,能连接网络吗?&nbsp;刚接触,一点都不懂。嘿嘿
回复 支持 反对

使用道具 举报

15

主题

406

帖子

0

精华

高级会员

Rank: 4

积分
795
金钱
795
注册时间
2015-3-26
在线时间
151 小时
发表于 2015-4-29 13:44:52 | 显示全部楼层
回复【9楼】卡萨城堡:
<br>---------------------------------
<br>不能,,,没有wifi协议
回复 支持 反对

使用道具 举报

15

主题

406

帖子

0

精华

高级会员

Rank: 4

积分
795
金钱
795
注册时间
2015-3-26
在线时间
151 小时
发表于 2015-4-29 13:45:42 | 显示全部楼层
回复【6楼】shuishuo615:
<br>---------------------------------
<br>跟你一样试过&nbsp;,,也不行,,不知道为什么
回复 支持 反对

使用道具 举报

3

主题

12

帖子

0

精华

新手上路

积分
44
金钱
44
注册时间
2015-7-9
在线时间
0 小时
发表于 2015-8-1 14:58:42 | 显示全部楼层
想问一下大神&nbsp;有没有&nbsp;51作发射&nbsp;32作接收的资源
回复 支持 反对

使用道具 举报

3

主题

12

帖子

0

精华

新手上路

积分
44
金钱
44
注册时间
2015-7-9
在线时间
0 小时
发表于 2015-8-14 18:47:36 | 显示全部楼层
大神我想问一下&nbsp;&nbsp;我&nbsp;51&nbsp;配对&nbsp;32(接收)&nbsp;&nbsp;32&nbsp;接收不到&nbsp;&nbsp;是什么情况&nbsp;&nbsp;能给我您的&nbsp;QQ&nbsp;请教一下吗?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-23 12:43

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表