44浏览
查看: 44|回复: 4

[项目] 【Arduino 动手做】MPU6050 32x8 矩阵上的交互式滚动游戏

[复制链接]
如何在 32 x 8 LED 矩阵模块上制作有趣的互动游戏,通过移动设备进行控制。

这次我将向你展示如何在一个 32 x 8 的 LED 矩阵上制作一个有趣的互动游戏,该游戏通过移动设备进行控制。在设备进行特定移动时,MPU6050 传感器会向微控制器发送信号,微控制器会根据该信息在屏幕上执行指定的操作。


实际上,该传感器代表着所谓的“空中控制器”,我们可以在现代电视遥控器中找到它。该项目已发布在 Benjamin Balogh 的 GiHub 页面上(https://github.com/benibalogh/LEDMatrix-Games ),您可以在其中找到原始代码。源代码是在支持 Arduino 的 Visual Studio(即 Visual Micro)中编写的。

遗憾的是,编译并上传原始代码到 Arduino 后,设备无法处理来自 MPU6050 的数据,只能滚动显示“Wall Scroller”文本。我多次尝试联系代码作者,但均未成功。经过一段时间的研究,我稍作修改,最终成功将其适配。此外,我没有使用 Visual Micro,而是将其编译到标准的 Arduino IDE 中。

为了正确编译代码,您需要从包含所有必需库的指定文件夹中打开代码。需要强调的是,如果您之前在 Arduino IDE 中安装过任何库,请将其删除。我还在代码中添加了一些简单的音调,这些音调不会干扰游戏玩法,并使游戏更加有趣。

【Arduino 动手做】MPU6050 32x8 矩阵上的交互式滚动游戏图1

驴友花雕  中级技神
 楼主|

发表于 前天 16:36

【Arduino 动手做】MPU6050 32x8 矩阵上的交互式滚动游戏

该设备构造极其简单,仅包含几个组件:

- Arduino 微控制器

- MPU6050陀螺仪+加速度计传感器模块

- 蜂鸣器

- 带有 MAX7219 驱动器的 32x8 LED 矩阵模块

- 电池,可选,例如我的情况,一块 3.7 伏锂电池,带充电器和升压模块。当然,你也可以使用普通的 9V 电池或外部电源。

- 和两个开关

【Arduino 动手做】MPU6050 32x8 矩阵上的交互式滚动游戏图1

回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 前天 16:37

【Arduino 动手做】MPU6050 32x8 矩阵上的交互式滚动游戏

上传代码后,我们需要进行一些设置。根据传感器的安装位置,我们需要通过更改以下代码行中的值来进行校准。

constexpr float INIT_PITCH = 弧度(175.0f);

constexpr float MENU_BACK_ROLL = 弧度(-90.0f);

constexpr float MENU_ENTER_ROLL = 弧度(-155.0f)

constexpr auto TILT_ANGLE = 145;

constexpr float MENU_NAVIGATION_PITCH = 弧度(TILT_ANGLE + 30);

角度可以有正值也可以有负值

开机后,会立即出现一个滚动的文字,其中包含游戏名称。向左倾斜设备即可浏览菜单。要激活某个选项,请向下倾斜设备。向上倾斜设备即可返回菜单。要开始玩游戏,在“游戏”菜单中,请向下倾斜设备,然后向左倾斜。现在,我们通过左右移动来玩游戏,尽量不要撞到墙壁。每通过一个环节,就会获得一定数量的积分。经过一段时间后,移动速度会增加。当我们撞到墙壁时,会发出游戏结束的信号并显示结果。向上倾斜设备即可再次返回主菜单。

需要说明的是,该电源由一块 3.7V 锂电池、一块用于给电池充电的充电板以及一个将电压从 3.7V 升压至 5V 的升压模块组成。电源原理图如下图所示。

最后,将该装置安装在由PVC板制成的合适盒子中,并用彩色壁纸覆盖。

【Arduino 动手做】MPU6050 32x8 矩阵上的交互式滚动游戏图1

【Arduino 动手做】MPU6050 32x8 矩阵上的交互式滚动游戏图2

04.jpg
schematic_JjRf5lfYFc.jpg
回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 前天 16:39

【Arduino 动手做】MPU6050 32x8 矩阵上的交互式滚动游戏

项目代码(下载)

【Arduino 动手做】MPU6050 32x8 矩阵上的交互式滚动游戏图2

【Arduino 动手做】MPU6050 32x8 矩阵上的交互式滚动游戏图1

回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 前天 16:43

【Arduino 动手做】MPU6050 32x8 矩阵上的交互式滚动游戏

附录
【Arduino 动手做】MPU6050 32x8 矩阵上的交互式滚动游戏
项目链接:https://www.hackster.io/mircemk/ ... -32x8-matrix-4a4f27
项目作者:北马其顿 米尔塞姆克(Mirko Pavleski)

项目视频 :https://www.youtube.com/watch?v=bm5lKUUrow0
项目代码:https://hacksterio.s3.amazonaws. ... INAL_with_Sound.zip
项目参考:https://github.com/benibalogh/LEDMatrix-Games

【Arduino 动手做】MPU6050 32x8 矩阵上的交互式滚动游戏图1

【Arduino 动手做】MPU6050 32x8 矩阵上的交互式滚动游戏图2

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4 备案 沪公网安备31011502402448

© 2013-2025 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail