STM32
直播中

笑尽往事

9年用户 927经验值
擅长:可编程逻辑 电源/新能源
私信 关注
[问答]

怎样去设计基于NRF24L01和STM32F030 MCU的无影Shadowless-开源无线手柄呢

NRF24L01模块是什么?有何优点?
怎样去设计基于NRF24L01和STM32F030 MCU的无影Shadowless-开源无线手柄呢?

回帖(1)

萧持毅

2021-12-20 10:46:06
无线遥控/手柄在电子设计中可以令应用凸显便捷、层次性。
NRF24L01模块是应用非常广泛的无线模块,SPI接口操作简单,易于集成,可以实现点对点或一对多通讯,是做无线应用的理想方案。
本例介绍的“无影Shadowless-开源无线手柄”即采用NRF24L01模块方案,采用STM32F030主MCU完成设计。


本例中,为增加手柄应用适应性,适当增加摇杆、按键数量,共计4个摇杆,12个独立按键,2个拨动开关,4个LED指示,1个蜂鸣器,同时扩展1路串口(3.3VTTL电平),1路调试接口(SW)。
设计原理图如下:







该手柄PCB外形如下:








对于遥控器的报文发送,采用按键变化或者摇杆位置变化时发送报文方式,报文格式定义如下:

1. 当有按键按下或摇杆变化时候,通过NRF24L01无线模块发送32字节报文;
2. 有效数据共16字节,其中第一字节为‘*’,第十四到十六字节为“rn”。
3. 第一字节定义:

------SLSR
其中SL为拨动开关SL的键值
第二字节定义:

--ABUDLR
第三字节定义:
--XY1234
第四字节定义:
----RARBRXRY
其中RA为摇杆RA的按键键值
第五字节定义:
RA摇杆上下方向模拟量,有效值范围:0-255;
第六字节定义:
RA摇杆左右方向模拟量,有效值范围:0-255;
第七字节定义:
RB摇杆上下方向模拟量,有效值范围:0-255;
第八字节定义:
RB摇杆左右方向模拟量,有效值范围:0-255;
第九字节定义:
RX摇杆上下方向模拟量,有效值范围:0-255;
第十字节定义:
RX摇杆左右方向模拟量,有效值范围:0-255;
第十一字节定义:
RY摇杆上下方向模拟量,有效值范围:0-255;
第十二字节定义:
RY摇杆左右方向模拟量,有效值范围:0-255;
第十三字节定义:
未定义,可用于电池电压信息输出;

结论:
该型手柄资源丰富,基本满足各种方式的遥控应用,同时开源方式允许有能力的DIYer自由发挥,极致突出他的价值。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分