GameBoy5110

用 Arduino Nano、诺基亚 5110 屏幕、3D 打印制作一台掌机

Cherry

喜欢

2954
浏览
1
喜欢

> 更多图片

项目状态:已完成
开放度:公开
所属分类:电子
发布时间:2020-02-14
最近更新:2020-03-03

标签

详细说明


如何打发宅在家的大把的时间呢?除了朋友圈炫厨艺,KEEP 里做运动外,Maker 们也可以动动手,制作一款任天堂的 GameBoy 游戏机吧!
这里用了诺基亚 5110 的蓝色背光 LCD 屏幕(这让它更具有复古的风格)和 3D 打印的 GameBoy 外形的外壳,项目是基于 Arduion Nano 构建的(你也可以使用自己喜欢的硬件)。

特性:
1、具有六个可编程按钮,便于上传你喜欢的游戏。
2、左侧的四个键为方向键,右侧的上部按钮为重置按钮,你可以在 Arduino 文件中更改控件。
3、声音部分采用了压电式蜂鸣器。

链接表


文件库

gb_base.stl
[684 Bytes at 2020-02-14, 15 次下载]

gb_letters.stl
[88384 Bytes at 2020-02-14, 15 次下载]

gb_front.stl
[110384 Bytes at 2020-02-14, 15 次下载]

gb_back.stl
[23084 Bytes at 2020-02-14, 15 次下载]

SnakeGameboy5110-master.zip
[4187 Bytes at 2020-02-21, 26 次下载]



教程

组件清单
  • Arduino Nano × 1
  • 诺基亚 5110 LED 液晶屏 × 1
  • 压电式蜂鸣器 × 1
  • 迷你滑动开关 × 1
  • 按钮 B3F 欧姆龙 12mm(多种颜色) × 6
  • 原型板 × 1
  • 9V 电池仓 × 1
  • 电线 × 若干
  • 杜邦母对母电缆 × 1
  • PLA 打印材料 × 1
  • 螺母 × 若干
  • 2mm 螺栓 × 若干
  • 烙铁 × 1
  • 锡以及助焊剂 × 1
  • 热胶枪 × 1
  • 螺丝刀 × 1

材料清单

Arduino Nano × 1
诺基亚 5110 LED 液晶屏 × 1
压电式蜂鸣器 × 1
迷你滑动开关 × 1
按钮 B3F 欧姆龙 12mm(多种颜色) × 6
原型板 × 1
9V 电池仓 × 1
电线 × 若干
杜邦母对母电缆 × 1
PLA 打印材料 × 1
螺母 × 若干
2mm 螺栓 × 若干
烙铁 × 1
锡以及助焊剂 × 1
热胶枪 × 1
螺丝刀 × 1

编程


这个项目参考了马拉加大学电信学院的电子工程模块。
https://www.uma.es/etsi-de-telecomunicacion/
1、使用 LCD5110_Graph.h 库对“Snake”游戏进行编程。请点击链接并下载获取说明手册。
http://www.rinkydinkelectronics.com/library.php?id=48
2、在项目文件库下载 Arduino 源代码。
https://make.quwj.com/project/201

3D 打印

3D 打印外壳。我建议先打印游戏机外壳,然后再挑选与外壳相匹配的硬件。我使用 Freecad 进行 3D 设计,采用 CC 许可证共享这些文件。

3D 打印包括四个部分:外壳前面、外壳后面、Gameboy5110 的标志以及底部。

如果你选用的原型板或者硬件与我不同,请根据你的方案更改设计图。
该设计遵循了知识共享署名,非商业性相同方式共享 4.0 许可。
3D 打印材料请在项目文件库中下载。
https://make.quwj.com/project/201

硬件部分

1、主板

a.我采用与 Arduino Nano 和 LCD 尺寸差不多的原型板。

b.将两个带有 15 针脚的母排焊接到原型板上,与 Arduino 排针的距离相同;另外一个 8 针脚的母排用于连接 LCD。

c.将 8 针脚的母排焊接到 Arduino 的排针 D3、D4、D5、D6、D7 的引脚上。
d.剩下的 3 个引脚分别为 VCC、BL 和 GND。将 VCC 和 BL 焊接至任何一个 5V 引脚上,并将 GND 焊接至电路板的任何一个接地端。

如图所示,三个原型板的焊接工作就结束了。注意选用母排针,方便在不用破坏任何组件的情况下随时取出 Arduino 和屏幕或者替换硬件。最后将 LCD 与杜邦电缆连接起来作为扩展器。

2、左侧按键
现在,开始安装游戏机左侧的按键——方向键。其中,电阻是可选的。你可以使用 INPUT_PULLUP(PIN)线作为 Arduino 输入的内部电阻,但是你需要修改程序代码。

按键的连接方式如下

如图所示,按照 3D 文件所展示的距离焊接四个按键,或者根据你选用的硬件来调整距离。
将模拟输入用作电子数值,只需将其定义为输入即可。
绿线需要焊接到 Arduino 输入的电线上,焊接方式为:
上--针脚16(A2)
左--针脚17(A3)
下--针脚18(A4)
右--针脚19(A5)
另外,你需要将 VCC 焊接至 5V,并将 GND 焊接至主原型板的任何接地端。

温馨提示:我建议在原型板之间焊接较长的电线,以便更好地调整位置。

3、右侧按键
开始安装右侧按键,如果你使用内部电阻,下面将讲解如何使用 INPUT_PULLUP。

将右侧上方的按键作为重置键,将一侧焊接到主板的 RST 引脚上,另一侧焊接到 GND。

目前我安装的这款游戏不需要第二个按键,但为了方便将来玩其他游戏,我会焊接第二个按键。你只需要将一侧焊接到 A1 并将另一侧焊接到 GND 即可。当你使用它时,建议使用 INPUT_PULLUP(15); 并与 digitalRead 一起使用。

4、电源和开关

这个部分需要 9v 电池、滑动开关和电池仓。

将黑线焊接到 GND,将红线焊接到 VIN,但是在添加开关之前,先将电池仓的红线焊接到开关的中间引脚上,另一个引脚焊接到 VIN,然后关闭电路。

5、蜂鸣器

你可以使用自己喜欢的声音单元,我这里使用图上这种发声器——压电式蜂鸣器。

将一根线焊接到 GND,另一根线焊接到引脚 2上。当然你也可以改变焊接的方式。
最后使用热胶枪将其固定在电池仓的背面,现在游戏机可以发出声音了。

组装所有的组件

1、固定外壳


游戏机的硬件部分已经全部完成,现在可以安装外壳了。用焊料点使塑料稍微软化将螺母插入四个固定柱内。

2、安装 LCD 和滑动开关


安装 LCD 显示屏,然后使用热熔枪将其固定。安装滑动开关并用螺母拧紧。

3、安装按键
这个部分比较复杂。需要将按键安装在各自的孔中,同时能够准确且牢固的将其安装到位。为了确保按键的位置不是处于按键按下的状态,需要做以下处理。

如图所示,我插入了一块柔软的塑料贴纸粘在按键上,这样就可以保持几厘米的高度。

当找到与原型板合适的位置时就可以使用热熔枪将其固定,注意操作时要保持干燥。两个原型板都要做同样的处理。
完成后测试所有的按键,确保安装无误。

4、调整外壳并修饰外壳

修复打印的塑料片,使其更坚固,当用外力按压时塑料片不会更深的挤压原型板。需要在两块板的中间进行调整。

然后使用热熔枪将其固定,干燥后再将电池仓安装其余可用的空间。最后调整好外壳内部的所有电线和主板,合上外壳。

最后,使用胶水将 GameBoy 5110 的标志粘贴在屏幕下方,并涂上你喜欢的颜色。

现在,你可以开始玩耍啦!

相似的项目:

ESP32 掌上游戏机

RETRO-CM3 掌上游戏机