各位Maker朋友们,大家好!👋
今天给大家分享一个我最近在Beetle-RP2350上捣鼓出来的小玩意儿——一个简单却充满复古情怀的方块躲避游戏。🕹️ 借助RP2350的强大性能和灵活的IO,再配上一块小巧的OLED屏幕,随时随地都能体验一把掌上游戏的乐趣!🤩

硬件连接
这次用到的硬件很简单:
- RP2350开发板🚀
- 0.96寸OLED屏幕(SSD1306):小巧精致,用来显示游戏画面刚刚好。🖼️
- 两个按键:控制玩家左右移动,手感清脆。👆👇
- 温湿度传感器 (DHT11,可选):顺手加了个环境信息显示,纯属Bonus 😄🌡️💧
连接方式如下,一看就明白:
- GP5 ---- SCL(OLED)
- GP4 ---- SDA(OLED)
- GP9 ---- K1(左)
- GP26 --- K2(右)
- GP8 ---- Data (DHT11)
温馨提示:
- 所有模块都采用3.3V供电。⚡
- 按键 另一端接地,代码里启用了内部上拉电阻,省去了外部电阻的麻烦。😌
软件实现
基于MicroPython进行开发,丰富的库支持让开发过程非常顺畅。🐍
主要实现了以下功能:
- 玩家控制:通过两个按键控制屏幕底部小方块的左右移动。⬅️➡️
- 障碍物生成与移动:从屏幕顶部随机生成方块并向下移动,速度可控。🧱⬇️
- 碰撞检测:实时检测玩家是否与下落的障碍物发生碰撞。💥
- 得分系统:成功躲避一个障碍物,得分➕1️⃣。
- 游戏结束与重置:碰撞后游戏结束,显示最终得分,等待一段时间后自动重置。 Game Over! 🔄
- OLED屏幕显示:清晰地显示游戏画面、得分以及(可选的)温湿度信息。📊
代码我就不在这里赘述了,已经整理好放在附件里了,大家可以直接下载到Beetle-RP2350上运行体验。 📦 里面有详细的注释,方便大家理解和修改。🤓
仓库地址: https://github.com/zsuroy/block-dodge-rp2350
效果展示
https://www.bilibili.com/video/BV1fVE6z6E2V/
未来展望
这只是个非常基础的版本,未来还有很多可以扩展的地方~
- 更丰富的障碍物类型:大小不一、速度各异,甚至会突然转向的障碍物,增加挑战性。🚧
- 不同的游戏模式:例如加速模式 🚀、限时模式 ⏱️等等,带来更多样的玩法。
- 音效支持:加入简单的音效,比如碰撞时的“Duang”🔊,得分时的“叮”🔔,让游戏更有代入感。
- 排行榜功能:如果能联网,搞个本地或者在线排行榜,看看谁是真正的躲避高手!🏆
💯 希望这个小项目能给大家带来一些灵感,也欢迎各位大佬一起交流完善,提出宝贵的意见和建议,让我们一起让这个小游戏变得更有趣!🤝
博客同步更新:https://suroy.cn/Py/micropython-block-game-based-on-rp2350-dancing-pixels-at-fingertips.html
评论