完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
以前在STM32发过帖子,6个发射机发信号,用1个接收机收。
发现还有个别人问我通讯的问题,基本都是没有好好看手册。 硬件io脚 1GND 2VCC 3CE 4CSN 5SCK 6MOSI 7MISO 8IRQ 1地 2电源3.3v 3使能 4SPI通讯使能 5时钟 6输入 7输出 8中断输出 注io脚电平:CE为高电平时模块工作,CSN低电平时有效,SCK上升沿有效,IRQ中断时低电平 读寄存器地址 AAAAA //读地址时,直接输入寄存器地址就可以。 写寄存器地址 1 AAAAA //相当于二进制100000是0x20,比如要写0x00寄存器的时候,要写0x00+0x20等于的值 空操作 0xff //空操作,把要读的地址用spi写入后,需要写0xff,(写0xff的同时无线模块会输出该寄存器的设置) TX缓存包写 0xA0 1位~32位 无线发送寄存器(写入数据可以发送出去)(直接写0xA0,uchar数据,uchar数据 。。。32字节) RX缓存包读 0x61 1位~32位 无线接收寄存器 (低字节先输出) TX缓存包清空 0xE1 写0xff 清空无线接收数据(写地址0xe1,0xff) RX缓存包清空 0xE2 写0xff 清空无线接收数据(写地址0xe2,0xff) TX数据重发 0xE3 数据重发(写地址0xe3,0xff) 寄存器 0x00 7不用 6接收完成中断使能(1关0开,中断产生时IRQ脚底电平) 5发送完成中断使能 4重发中断使能 3校验使能 2校验位选择(0:8位1:16位) 1无线电源(1开,0关) 0无线工作方式(1接收模式0发送模式) 寄存器 0x01 7不用 6不用 5地址5自动应答(1开0关) 4地址4自动应答(1开0关) 3地址3自动应答(1开0关) 2地址2自动应答(1开0关) 1地址1自动应答(1开0关) 0地址0自动应答(1开0关) 寄存器 0x02 7不用 6 不用 5地址5接收允许(1开,0关) 4地址4接收允许(1开,0关) 3地址3接收允许(1开,0关) 2地址2接收允许(1开,0关) 1地址1接收允许(1开,0关) 0地址0接收允许(1开,0关) 寄存器 0x03 7 6 5 4 3 2 10通讯地址字节总长度(00:无效01:3字节10:4字节11:5字节) 寄存器 0x04 7654自动重发延时 0000:250微秒 0001:500微秒。。。。1111:4000微秒 3210自动重发次数 0000:关 0001:1次 0002:2次 1111:15次 寄存器 0x05 7不用 6543210 000 0000频率最低。 111 1111频率最高2.525GHz 寄存器 0x06 7连续载波传输(1开,0关) 6 5速率250kbps(1开,0关) (和位3配合使用,位5位3 = 00:1Mbps 01:2Mbps 10:250kbps 11:不使用) 4频率受晶振控制(1开,0关) 3数据速率(0:1Mbps 1:2Mbps)(和位5配合使用,位5位3 = 00:1Mbps 01:2Mbps 10:250kbps 11:不使用) 21发射功率(00:-18dbm 01:-12dbm 10:-6dbm 11:0dbm)(注:我的模块11是20dpm哈哈哈哈哈哈哈哈。。。) 0噪声放大(信号增益)(1开0关) 寄存器 0x07 状态寄存器(写1清除对应的中断) 7 6 接收完成 5 发送完成 4 重发失败(超过设定的重发次数) 321 000通道0, 001通道1, 002通道2,。。。。(查看是哪个地址收到数据) 0 TX FIFO满标志(发射缓存包满) 寄存器 0x08 7654:数据丢包 计数器 3210:重发数据 计数器 寄存器 0x09 7: 6: 5: 4: 3: 2: 1: 0:载波检测(检查附近有无该频率。可检测是否有其他发射器在使用这个频率。) 寄存器 0x0a 40:39:38.。。。。。。2:1:0 (地址0 注: 位39到位0可以随意改 ) 寄存器 0x0b 40:39:38.。。。。。。2:1:0 (地址1,注: 位39到位0可以随意改) 寄存器 0x0c 40:39:38.。。。。。。2:1:0 (通道2的地址,注:位39到位8的值和地址1共用,位7到位0可以随意改) 寄存器 0x0d 40:39:38.。。。。。。2:1:0 (通道3的地址,注:位39到位8的值和地址1共用,位7到位0可以随意改) 寄存器 0x0e 40:39:38.。。。。。。2:1:0 (通道4的地址,注:位39到位8的值和地址1共用,位7到位0可以随意改) 寄存器 0x0f 40:39:38.。。。。。。2:1:0 (通道5的地址,注:位39到位8的值和地址1共用,位7到位0可以随意改) 寄存器 0x10 40:39:38.。。。。。。2:1:0 (发射地址,注: 位39到位0可以随意改)数值要与接收模块一致 寄存器 0x11 7 6 543210 地址0传输的有效字节(设置32就是只接收32字节) 寄存器 0x12 7 6 543210 地址1的有效字节 寄存器 0x13 7 6 543210 地址2的有效字节 寄存器 0x14 7 6 543210 地址3的有效字节 寄存器 0x15 7 6 543210 地址4的有效字节 寄存器 0x16 7 6 543210 地址5的有效字节 寄存器 0x17 缓存包状态寄存器(只读) 7 6重发状态 5TX寄存器满(1满) 4TX寄存器空(1空) 3 2 1RX寄存器满(1满) 0RX寄存器空(1空) 寄存器 0x1c 启用动态载荷长度 7 6 5 通道5开 4 通道4开 3 通道3开 2 通道2开 1 通道1开 0 通道0开 寄存器 0x1d 7 6 5 4 3 2 使能动态载荷(1开) 1 使能载荷应答(1开) 0 使能发送载荷但不应答(1开) 寄存器0xA0 TX缓存包 位32~~~~~~~位0 (32字节) 寄存器0x61 RX缓存包 位32~~~~~~~位0 (32字节) nRF2401编程指南 (1).pdf (233.07 KB ) NRF24L01_中文.pdf (890.66 KB ) |
|
相关推荐
12个回答
|
|
不错,谢谢分享.
|
|
|
|
所谓的多从机发射,一主机接受,实际上不可能在一个时刻了同时接受6个发射机的数据。
这个接收主机只是开了了6个通道允许接受来自6个发射机的信息,但每个时刻只能接收一个通道的信息,至于优先级就无从可知了。 |
|
|
|
正确,但手册上说应答模式下,数据不大会碰撞。基本不需要错开发射时间。可以检测CD寄存器0x09如果读到的是1才说明数据拥堵,需要改频率。数据字节越短,通讯时间也越短,几百微秒内完成。大数据,或250kps才会大于500us。 |
|
|
|
大神,啥时也弄下cc2540啊
|
|
|
|
|
|
|
|
楼主,看了很多你的帖子,请您有空看下这个NRF24L01问题,谢谢 http://www.openedv.com/posts/list/49930.htm
|
|
|
|
接受端能不能自主选择要接受的通道
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
想问一下大神 有没有 51作发射 32作接收的资源
|
|
|
|
大神我想问一下 我 51 配对 32(接收) 32 接收不到 是什么情况 能给我您的 QQ 请教一下吗?
|
|
|
|
只有小组成员才能发言,加入小组>>
如何使用STM32+nrf24l01架构把有线USB设备无线化?
2511 浏览 7 评论
请问能利用51单片机和nRF24L01模块实现实时语音无线传输吗?
2297 浏览 5 评论
3092 浏览 3 评论
2756 浏览 8 评论
为什么ucosii上移植lwip后系统进入了HardFault_Handler?
2713 浏览 4 评论
请教各位大咖:有没有接收频率32M左右的芯片推荐的?先感谢啦!
541浏览 1评论
796浏览 0评论
896浏览 0评论
574浏览 0评论
382浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-10-21 23:19 , Processed in 1.537029 second(s), Total 102, Slave 84 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号