无线遥控/手柄在电子设计中可以令应用凸显便捷、层次性。 NRF24L01模块是应用非常广泛的无线模块,SPI接口操作简单,易于集成,可以实现点对点或一对多通讯,是做无线应用的理想方案。 本例介绍的“无影Shadowless-开源无线手柄”即采用NRF24L01模块方案,采用STM32F030主MCU完成设计。
本例中,为增加手柄应用适应性,适当增加摇杆、按键数量,共计4个摇杆,12个独立按键,2个拨动开关,4个LED指示,1个蜂鸣器,同时扩展1路串口(3.3VTTL电平),1路调试接口(SW)。 设计原理图如下: 本例中,设计BOM如下:
该手柄PCB外形及焊接指导如下:
对于遥控器的报文发送,采用按键变化或者摇杆位置变化时发送报文方式,报文格式定义如下:
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; 第十三字节定义: 未定义,可用于电池电压信息输出;
结论: 该型手柄资源丰富,基本满足各种方式的遥控应用,同时开源方式允许有能力的DIYer自由发挥,极致突出他的价值。
|