本帖最后由 ADaiPlay 于 2017-2-9 11:31 编辑
本例介绍的“无影Shadowless-开源无线手柄”采用NRF24L01模块方案,使用STM32F030主MCU完成设计。
本例中,为增加手柄应用适应性,适当增加摇杆、按键数量,共计4个摇杆,12个独立按键,2个拨动开关,4个LED指示,1个蜂鸣器,同时扩展1路串口(3.3VTTL电平),1路调试接口(SW)。 设计原理图如下:
无影Shadowless-开源无线手柄-原理图_V1.1.pdf
(379.35 KB)
手柄PCB外形及焊接指导如下:
无影Shadowless-开源无线手柄-焊接指导_V1.1.pdf
(104.82 KB)
对于遥控器的报文发送,采用按键变化或者摇杆位置变化时发送报文方式,报文格式定义如下:
1. 当有按键按下或摇杆变化时候,通过NRF24L01无线模块发送32字节报文; 2. 有效数据共16字节,其中第一字节为‘*’,第十四到十六字节为“\r\n\0”。 3. 第一字节定义: 其中SL为拨动开关SL的键值 第二字节定义: 第三字节定义: 第四字节定义: 其中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; 第十三字节定义: 未定义,可用于电池电压信息输出;
|