
nRF24L01+测试程序(测距和测速)
5星
- 浏览量: 0
- 大小:None
- 文件类型:RAR
简介:
0.软件版本为Keil5,目前尚不清楚该软件是否支持Keil4的兼容性(如遇到问题建议手动创建一个 Keil 4 的新工程以实现与现有项目的兼容)
1.单片机型号为 STM32F103C8,使用硬件SPI协议作为通信接口
2.nRF24L01 模块采用了 3.3V 电源供电方案,其具体接线如下:
nRF24L01 STM32
CE PA3
CS PA4
SCK PA5
MISO PA6
MOSI PA7
IRQ默认未配置(建议在需要时通过查询机制进行配置)
该LED控制器采用PC13芯片进行配置,在控制模式下,LED灯会在低电平时点亮。在设计中,单片机的PA0引脚被配置为按钮输入。当按下按钮时,系统将在完成当前任务后切换至等待状态,并对相应的事件进行响应处理。默认情况下,该通道已设置为高电平输出。如果需要其他功能可在此程序中加以实现4.My24L01_Tx是发送端应用,My24L01_Rx是接收域服务;在发送端每隔约100毫秒进行一次通信操作,并避免使用确认应答(ACK)。当接收端检测到LED信号翻转时,这通常表示数据已成功传输。完成程序下载后,在接收端观察到LED指示灯频繁闪烁,并建议在该区域活动以确保数据传输。这有助于确认发送距离。如果接收到的LED信号变化速度减缓,可能意味着数据丢失或网络拥塞。当LED指示灯持续不变时,这表明接收端未能成功捕获任何数据包。通过分析接收到的数据量和变化率,我们能够估算出发送端到接收端的距离。6.24L01配置为0频道,采用2Mbps传输速率,在0dBm功率下支持Address字段3Bytes编码长度,并具备实际测距能力超过10米的特点(测试结果适用于不同房间环境)二、测试速率
0.软件为Keil5,不知道是否支持Keil4(如不行请手动新建Keil4工程)
1.单片机为STM32F103C8,采用硬件SPI
2.nRF24L01+采用3.3V供电,接线如下: 24L01+ STM32 CE —— PA3 CS —— PA4 SCK —— PA5 MISO —— PA6 MOSI —— PA7 IRQ未接(采用查询方式,如须用自加外部中断程序)
3.led灯为PC13控制,低电平亮(在Userled.c中修改GPIO);按键为PA0,按下后(接地)才开始发送!!!
4.My24L01_Tx为发送端程序,My24L01_Rx为接收端程序;
5.接收端先上电,发送端上电后按下按键后才发送50KB(32B一帧 共32*50帧 32*32=1024=1K),发送端收到ACK后才发下一帧,发完后进入死循环,如须再发要先复位或重新上电;接收端每收到一次led反转;(如未反转说明未成功发送,发送端接收端重新复位后再试)时间可看在接收程序中tim3Count(单位ms 16进制,定时器1ms中断)在Watch1中
6.发送端我用的是延时等待查询STATUS寄存器,用外部中断IRQ应该会更好(未测试)
7.24L01采用0频道,2Mbps, 0dBm, Address 3Bytes,实测速率约为50KBs
全部评论 (0)


