硬币大小的游戏机不来一个?能玩小蜜蜂和吃豆人~

在接触沁恒家的 CH32V003 芯片一段时间后,发现了国外有个爱好者用它做了个小型游戏机,还配了不少游戏,例如小蜜蜂、呼吃豆人什么的,这不得自己复刻一个。

不过原作者的项目 PCB 设计体积比较大,不太符合我心中微型游戏机的形象,就自己重新搞了一下,顺便把原项目中的方向键从独立按键换成了摇杆,玩起来更舒适一点。

成品照片

老样子,自己做东西还是得搞个正经点的外壳。

经过极限压缩后的 PCB 大小为 24x40mm,加上电池后,整体外壳不包含钥匙扣环的尺寸为宽 27mm,高 42mm,厚 12mm,正面大小不到 2 个硬币大小 😃。

ch32v003-gameconsole-1

硬件选型

为了和原作者的 ROM 兼容,大部分 BOM 都跟原版 PCB 一样,这里只是将原版的方向按键换成了五向摇杆,其他的都还是保持一致。为了保障 PCB 体积,整体电阻、电容都采用了 0603 封装。

主要的几个元件都可以在某宝上购买,特别是其中的电磁式蜂鸣器,某宝上购买要便宜很多。

另外需要注意,12864 OLED 需要购买窄边框的版本。

位号 元件 备注
BUZZER1 4kHz 电磁式蜂鸣器
H3 PZ254V-11-05P 烧录排针,不焊接
SW1 MSK12C02-HB 电源开关
SW2 TM-4175-B-A 五向摇杆
SW3 TS-1002S-06026C 右侧按钮
U1 CH32V003F4P6 主芯片
U2 BS-0601-SK-4W CR2032 电池仓
U4 HS96L03W2C03 屏幕排针座,不焊接

原理图设计

相比原版,原理图没有特别多的变更,主要有以下变更:

  1. 方向按键换成五向摇杆,并且摇杆按压也连接到动作按钮,在某些游戏中,可以单摇杆游玩了
  2. 蜂鸣器添加了一个限流电阻,要不然有音乐时用 CR2032 供电很容易电流不够

ch32v003-gameconsole-2

PCB 设计

整个 PCB 电路比较简单,主要元件都在背面,正面只有摇杆、动作按钮和屏幕。

ch32v003-gameconsole-3

立创 EDA 中 12864 OLED 的封装尺寸和某宝上购买的窄边模块尺寸不太一致,这里用了实际的尺寸来画 PCB 板框,需要注意一下。

PCB 3D 渲染图

整个背面,占体积最大的就是 CR2032 电池盒了,为了方便电池的安装和拆卸,用了这种类型的电池连接器,如果为了放更大零件,其实也可以直接用电池弹片,整体游戏厚度还能再减少一点。

ch32v003-gameconsole-4

焊接与调试

这个游戏机的元件实在太少了,随便搞搞就可以了,当然背面还是可以使用铁板烧的,

刷锡膏用了之前介绍过的牛皮纸钢网,有兴趣的朋友可以顺便了解一下 😃

正面的摇杆和按钮可以直接用电铬铁点一下,也比较简单。

注意:铁板烧时,建议电池连接器的两端触点多加点锡膏增加强度,防止拆装电池时连接器脱落。

ch32v003-gameconsole-5

另外 12864 OLED 屏幕的底部不平,焊接的时候不太方便,我搞了个焊接辅助工具,可以辅助将屏幕放水平,焊接的时候按住顶部排针区域,再焊接针脚就可以。

ch32v003-gameconsole-6

屏幕焊接完就可以把摇杆和按钮焊接上,这两个元件的引脚都比较大,焊接还是比较简单的。

ch32v003-gameconsole-7

固件烧录

原作者已经提供了好几个小游戏编译好的固件,可以在 https://github.com/wagiminator/CH32V003-GameConsole/tree/main/software 下载到,例如要烧录一个吃豆人游戏,可以先进到 tiny_pacman 目录中,下载游戏固件 tiny_pacman.bin,在 macOS 上,我使用 wlink 来烧录固件。

注意:CH32V003 烧录需要使用 WCH Link-E 烧录器,与 WCH 其他一些芯片是不通用的,需要单独购买。

使用以下命令即可完成烧录:

wlink flash --address 0x8000000 ./tiny_pacman.bin

在终端中显示以下内容就表示固件烧录成功啦~

ch32v003-gameconsole-8

烧录完游戏固件后,就可以先试玩一下,看看摇杆和按钮是否工作正常。

ch32v003-gameconsole-9

外壳设计

外面还是用了三明治结构,不过这次因为 PCB 布局太紧凑,没有了足够的空间来放自攻螺丝孔,后盖就没有螺丝固定,直接弄了个卡槽 + 卡扣的模式。

ch32v003-gameconsole-10

把外壳和按钮都打印出来就可以组装啦~

建议将 PCB 电源开关一侧先放入外壳,再整体按压下去,外壳底部设计了斜坡用于卡紧 PCB。

按钮键帽建议最后安装,如果打印精度不够可能会有松动的问题,可以使用胶水固定一下。

ch32v003-gameconsole-11

组装完成就可以随时游玩了~

ch32v003-gameconsole-12

项目开源地址

硬件开源地址

立创开源平台: https://oshwhub.com/wandaeda/ji-yu-ch32v003-de-yue-chi-kou-you-xi-ji

原理图、PCB、外壳模型 STL 文件等都在立创开源平台发布了,如果碰到项目打不开的情况,可能在在审核中,可以稍后再试。

固件开源地址

固件可以直接使用原作者的固件。

GitHub 仓库: https://github.com/wagiminator/CH32V003-GameConsole

参考资料

发表评论?

0 条评论。

发表评论


注意 - 你可以用以下 HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>