完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
1个回答
|
|
1.1 NRF24L01简介
NRF24L01是由NORDIC生产的工作在2.4GHz~2.5GHz的ISM 频段的单片无线收发器芯片。无线收发器包括:频率发生器、增强型“SchockBurst”模式控制器、功率放大器、晶体振荡器、调制器和解调器。 NRF24L01的输出功率频道选择和协议的设置均可以通过SPI 接口进行设置,因此,其具有极高的兼容性,几乎可以连接到各种单片机芯片,并完成无线数据传送工作。除此之外,NRF24L01的功耗也非常的低,当工作在发射模式下发射功率为0dBm 时电流消耗仅为11.3mA ,接收模式时为12.3mA,掉电模式和待机模式下电流消耗更低。所以NRF24L01可以广泛地应用在无线键鼠、无线门禁、无线电台、智能工业设备、玩具等场合。 如下表所示列举了NRF24L01的特性参数。
二、2.4G双机通信 2.1 NRF24L01使用方法 NRF24L01是以包的形式进行发送的,具体的包格式如下表所示。
2.4G双机通信实验涉及到遥控器端和飞控端,两者的2.4G通道均设置为110。首先配置遥控器端的左摇杆的按键为外部中断模式,一旦按下做摇杆按键,就发送“Remoter”这个字符串到飞控上,飞控接收到后,把LED航情灯进行闪烁,然后再向遥控器回发“Airplane”这个字符串,遥控收到后,闪烁电源指示灯。无论是遥控器还是飞控使用NRF24L01均使用到了STM32的硬件SPI,不同的是遥控器使用的是SPI2,而飞控使用的是SPI1。STM32的SPI配置方法可以参考飞控开发基础《SPI(六轴传感器数据获取)》。 3.1遥控器端 本次实验中遥控器端触发无线数据的发送是通过外部中断实现的,具体的外部中断配置可以参考《遥控器开发实战-中断》。在该中断中向飞控发送“Remoter”字符串,具体代码如下图所示。 遥控器端的NRF24L01的初始化代码如下图所示。 遥控器端的接收处理是在主循环中轮询实现的,收到飞控发来的信息后,电源指示灯闪烁,具体代码如下图所示。 3.2飞控端 飞控端的无线数据接收在主循环中实现,接收到遥控器发送的信息后,电源指示灯闪烁,且向遥控端回发“Airplane”,具体代码如下图所示。 飞控端的NRF24L01的初始化代码如下。 3.3实验现象 把遥控器端代码下载到遥控器内、飞控端代码下载到飞控内。上电,此时按下遥控器的左摇杆按键,可见飞控四个电机底部的LED航情灯闪烁,然后遥控的电源指示灯也闪烁。这就意味着飞控收到了来自遥控器端的信息并且回发了信息给遥控器,且遥控器也收到了来自飞控端的回发信息。如下图所示为飞控航情灯以及遥控左按键及电源指示灯。 |
||||
|
||||
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1100 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1118 浏览 1 评论
551 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
417 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1004 浏览 2 评论
1598浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
267浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
281浏览 3评论
253浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
243浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-8-17 23:17 , Processed in 0.832879 second(s), Total 78, Slave 62 queries .
Powered by 电子发烧友网
© 2015 www.ws-dc.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号