`实验名称:精英STM32F103开发板结项报告-NRF24L01通讯实验
实验目的:通过两块STM32开发板使用NRF24L01进行通讯, 并将接收到的信息显示在LCD屏上
实验效果:
实验材料:
精英STM32F103开发板
STM32F407开发板
NRF24L01+模块2个
USB转TTL模块
实验步骤:
1.烧写程序
精英STM32F103直接通过数据线连接, 用FlyMcu烧写即可
STM32F407开发板需要用USB转TTL转接至PC后烧写
2.连接通电
将两个NRF24L01+分别插入两块开发板的WireLess座, 并对开发板通电. 两块开发板引脚对应如下:
通电后, 精英开发板上的LCD屏显示实验信息, 并提示: KEY0:RX_Mode KEY1:TX_Mode, 即按下K0进入接收模式, 按下K1进入发送模式
STM32F407开发板也进入了K0与K1选择状态, 只是未接LCD所以无显示
3.启动通讯
按下精英开发板K0键, 使之进入接收模式. LCD屏显示RX_Mode并显示接收提示"Received DATA"
再按下STM32F407开发板K1键, 使之进入发送模式, 从字母A开始发送32个字符, 再从字母B开始发送32个字符, 依此类推循环发送.
此时精英开发板接收到此32个字符并显示, 然后再接收下一组字符并显示. 由于每次每组字符错位1位, 看起来是字符滚动效果.
最后晒一下我这几天改造小破平板, 接出来的可同时充电+OTG的接口(丑是丑的不行,但是很实用的哦):
总结:精英STM32F103开发板资源丰富, 结构精巧, 功能强大, 是学习STM32的非常好的一款开发板. 通过对此开发板的试用, 在STM32开发上有非常大的进步. 也还有很多功能没有使用到, 还需要持续学习和研究.
实验过程视频:
主要代码:
- 精英开发板接收:
- Show_Str(20,120,BLUE,BLACK,"NRF24L01 RX_Mode",16,0);
- Show_Str(20,150,BLUE,BLACK,"Received DATA:",16,0);
- NRF24L01_RX_Mode();
- while(1)
- {
- if(NRF24L01_RxPacket(tmp_buf)==0)
- {
- tmp_buf[32]=0;
- Show_Str(30,180,YELLOW,BLACK,tmp_buf,16,0);
- }else delay_us(100);
- t++;
- if(t==10000)
- {
- t=0;
- LED0=!LED0;
- }
复制代码
`
|