在四小时内组装这台游戏机

MakerBUINO套件是向孩子们介绍电子和编码的一种有趣方式。
475 位读者喜欢这个。
Arduino circuit board

易于编程的复古游戏机是向任何人(尤其是孩子们)介绍视频游戏开发的绝佳方式。 其中之一是 Gamebuino,一种预组装的手持式复古游戏机。它有点像打了兴奋剂的Arduino,配有诺基亚5110手机显示器(84x48像素)、LiPo充电器和LiPo电池、SD卡读卡器和一张带有大量游戏的SD卡。 MAKERbuino,基本上是一个 Gamebuino 套件,你需要自己组装和焊接,这对我来说似乎更有趣。

Makerbuino

opensource.com

MAKERbuino 的创建者 Albert Gajsak 与 Gamebuino 的创建者 Aurélien Rodot 合作,以确保设备兼容并且 MAKERbuino 可以运行 Gamebuino 的游戏。 MAKERbuino 甚至使用了 Gamebuino 的引导加载程序,该程序 可在 GitHub 上找到

Albert 还公开了原理图,并且 PCB 设计 也可用。 有了这些资源,从理论上讲,您甚至可以提前一个级别开始,创建自己的印刷电路板 (PCB) 甚至具有不同物理布局的设备。

组装 MAKERbuino

我 10 岁的女儿喜欢编程和游戏,并且已经有了一些焊接经验,所以我给她买了一个 MAKERbuino 套件来组装。 MAKERbuino 的网站上有非常详尽的在线组装手册,并且包含所有零件,因此她只花了四个小时就完全组装成工作状态。

Soldering the device

opensource.com

在享受了构建设备和玩附带游戏的乐趣之后,我们想编写自己的游戏。 由于 MAKERbuino 与 Gamebuino 兼容,因此我们可以使用它的游戏库来创建我们自己的游戏。

编程 *buino

MAKERbuino 的编程方式与 Gamebuino(以及其他所有 Arduino)相同,使用 C++ 中的 Arduino IDE。 首先,将游戏库安装到 Arduino IDE 中,然后就可以开始破解了。

对于非英语母语者来说,Arduino IDE 和库是一个巨大的障碍,比如我的女儿,她讲德语(并且正在学校学习法语)。 虽然 IDE 本身是本地化的,但所有语言结构、库和文档都是英文的。 这种障碍很快就扼杀了她对这个项目的热情。

有一个类似于 Scratch 的环境可以使用 Ardublocks 对 Arduino 进行编程,但它还不支持 Gamebuino 库。 (此外,这个项目看起来已经废弃了。)我一直在研究将 Gamebuino 库添加到 Ardublocks,但这无法在一个周末内完成。

尽管如此,如果您了解 Arduino 编程(和英语),那么对 MAKERbuino 进行编程相对简单。

例如,这是一些发射激光并检查它是否击中外星飞船的代码。

#include <Gamebuino.h>
Gamebuino gb;
[..]
void setup() {
  gb.begin();    // Initialize the *buino
  gb.titleScreen();
}  

void loop() {
  if (gb.update()) { // update screen etc
    [...]
    gb.display.setColor(GRAY);
 
    if (gb.buttons.pressed(BTN_UP)) { 
      gb.display.drawLine(x+4,y-1,x+4,0);  
      // check if the laser hit the alien ship
      hit = gb.collideRectRect(x+4,0,1,y-1, alienX,alienY,8,8);
    }
 
    if (hit) {
      gb.sound.playNote(40, 20, 0);
      gb.sound.playNote(10, 20, 0);
      gb.sound.playNote(30, 20, 0);
    }
  }
}

代码在 ArduinoIDE 中编译,就像任何其他 Arduino 程序一样。

要测试代码,可以使用允许大量交互的模拟器。 我一直在使用 Simbuino4Web 上的模拟器。 它运行良好,但有时在上载后卡住时需要刷新整个页面。

Gamebuino emulator in the browser

opensource.com

要在真实设备上测试您的代码,您可以将串行到 USB 适配器连接到 MAKERbuino 并通过 USB 上载它,或者您可以创建一个二进制 HEX 文件并将其放在 SD 卡上。 要在 SD 卡上创建 HEX 文件,请在 Arduino-IDE 中使用 Sketch->Export compiled binary(而不是 upload)。

很棒的 DIY 体验

MAKERbuino 和 Gamebuino 都是很棒的复古游戏机,但组装和自行焊接的过程使 MAKERbuino 更像是“你自己的设备”。 而且,正如我们的经验表明的那样,即使在 4K 电视上以 70 fps 运行游戏的时代,复古掌上游戏体验仍然很棒。

标签
User profile image.
Heiko 是一位长期的开源提交者。 他目前在 Red Hat 从事服务器和软件系统的监控和管理方面的工作。 Heiko 获得了卡尔斯鲁厄大学计算机科学硕士学位,并撰写了两本关于 JBoss AS 和企业 Java Bean 的书。

2 条评论

我实际上从您提供的链接打印了 pcb,并从头开始制作了一切。 可以这么说。 真的很有趣的项目 :)

Creative Commons License本作品采用 Creative Commons Attribution-Share Alike 4.0 International License 授权。
© 2025 open-source.net.cn. All rights reserved.