
上QQ阅读APP看书,第一时间看更新
3.2 模块介绍
本项目主要包括手柄数据采集模块、树莓派游戏实现模块、云服务器数据存储模块和移动端数据展示模块。下面分别给出各模块的功能介绍及相关代码。
3.2.1 手柄数据采集模块
本部分包括手柄数据采集模块的功能介绍及相关代码。
1.功能介绍
手柄数据采集模块整合了Arduino开发板、JY901传感器、摇杆按键、HC-05蓝牙模块、直流电机振动模块。采集JY901姿态角度数据和摇杆按键数据,通过HC-05蓝牙模块发送给树莓派,并对相应的按键操作给出直流电机振动反馈,电路如图3-4所示。

图3-4 手柄数据采集模块连线图
2.相关代码




3.2.2 树莓派游戏实现模块
本部分包括树莓派游戏实现模块的功能介绍及相关代码。
1.功能介绍
树莓派端利用Python的Pyserial蓝牙串口模块接收数据,将接收到的JY901和按键摇杆数据进行对应动作解析,利用Python的Pygame进行编写,对体感动作做出相应的游戏,游戏画面通过OLED显示器输出,游戏结束时,通过WiFi将数据上传至云服务器。同时,通过按键映射将蓝牙手柄单独作为游戏外设使用,适配Windows平台。元件包括树莓派和OLED显示屏。
2.相关代码
1)蓝牙通信

2)体感弹球游戏



3)滑雪游戏




4)外星人入侵游戏












5)坦克大战游戏

















6)体感射击游戏




7)体感跑酷游戏









3.2.3 云服务器数据存储模块
本部分包括云服务器数据存储模块的功能介绍及相关代码。
1.功能介绍
接收树莓派发送的游戏数据,服务器后端采用Node+Express+Mysql构建数据库,采用Javascript语言编写。
2.相关代码
1)Server.js

2)APP.js


3.2.4 移动端数据展示模块
本部分包括移动端数据展示模块的功能介绍及相关代码。
1.功能介绍
移动端数据展示模块使用PHP+HTML5+CSS+JavaScript语言,采用Bootstrap框架、jQuery、ECharts库编写完成数据可视化。
2.相关代码





