从零开始做了一个小的DIY乒乓游戏控制台

  发布人:amy2025 时间:2025-08-15

大家好,欢迎回来!这是Pong PRO,一个自制的迷你游戏设备,可以运行Pong。

在这里,我们在带有SSD1306 OLED屏幕的ESP32 Dev板上运行《PONG》,并使用两个方向按钮控制杆。然后,所有的东西都固定在独特的3d打印手柄上,允许用户正确操作控制器。

这个项目是基于我们以前的Macropad项目的pcb,它本质上是一个ESP32分线,两个按钮连接到微控制器和一个124x32 OLED显示器。模拟两个手柄,并将项目转化为一个功能齐全的PONG游戏控制台。

对于这个项目,我们甚至从头开始设计了自己的PONG游戏,本文将介绍整个构建过程,因此让我们从构建开始。

材料要求

这些是这个项目中使用的材料:

•定制PCB(由HQ Next PCB提供)

•ESP32开发板

•按钮SMD

•SSD1306 OLED 128x32

•PCB压铆螺母柱

•M3螺栓

•3D打印部件

三维模型

本项目的3D模型由原来的Macropad Assembly组成,由三层组成:顶层,中间层,底层,所有层都通过M2.5 PCB支架连接在一起。在这个设计中,我们删除了底层,只保留了顶层和中间层。

中间层包含所有电子元件,包括ESP32微控制器板,SSD1306 OLED屏幕和两个SMD按钮。顶层作为中间层的非道德盖板,中间层有三个开口:一个用于OLED显示器的矩形孔径和两个开关致动器。

开关执行器建模并定位在顶层开关开槽和SMD开关旋钮之间。

由于开关执行器和开关旋钮彼此完美地放在一起,挤压开关执行器也会压住旋钮,导致开关咔嗒声。

为了符合人体工程学,我们从世嘉创世纪控制器中获得灵感,设计了两个手柄部分,使用M2.5 PCB支架连接两个PCB层。

模型完成后,将开关执行器和手柄导出为网格文件,并使用橙色PLA和0.4mm喷嘴进行3D打印。

PCB设计

这个项目的PCB设计很简单;我们使用带有D0和D1 I/O引脚的XIAO ESP32板将其连接到两个SMD开关。我们还将OLED显示器与微控制器结合在一起,微控制器连接到XIAO的I2C端口。

我们根据模型的尺寸创建了两块板:顶层板和中间层板。由于中间层板和底层共用相同的形式和安装孔,所以我们将其用于底层。

HQ NextPCB服务

PCB设计完成后,我们导出Gerber数据,发送给HQ NextPCB取样。

对于中间层和顶层板,有两个订单。我们为中间层和顶层板订购了一个黑色的带白色屏幕的阻焊板。

下订单后,PCB在一周内收到,PCB质量非常好。

另外,我要把HQDFM带给你,它在很多项目中给了我很大的帮助。华秋的内部工程师开发了免费的制造设计软件HQDFM,彻底改变了PCB设计师如何可视化和验证他们的设计。

利用NextPCB的加速器活动,为您的创新项目获得2个免费组装的基于rp2040的pcb。

此报价涵盖所有费用,包括物流,使您的想法更容易,更实惠的生活。SMT服务可能很昂贵,但NextPCB可以帮助您克服这一障碍。只要分享你的相关项目,他们就会处理好剩下的事情。不要错过这个提升你的科技创作的绝佳机会!

HQDFM:免费在线Gerber查看器和DFM分析工具

此外,NextPCB有自己的Gerber Viewer和DFM分析软件。

您的设计可以通过他们的HQDFM软件(DFM)服务得到改进。因为我发现等待制造商的DFM报告很烦人,所以HQDFM是执行事件前自检的最有效方法。

以下是在线Gerber Viewer向我展示的内容。再清楚不过了。然而,对于完整的功能,如DFM分析的PCBA,你需要下载的软件。在线版本仅提供简单的PCB DFM报告。

具有全面的制造设计(DFM)分析功能,HQDFM是一个免费的,复杂的在线PCB Gerber文件查看器。

它利用超过15年的行业专业知识提供了对先进制造的见解。如果你想以合理的价格获得优质的PCB服务,你可以看看HQ NextPCB。

印刷电路板组装

•使用锡膏点针,我们开始PCB组装过程,将锡膏放在每个组件垫上。

•接下来,我们使用ESD镊子挑选并放置SMD开关在其位置。

•随后,我们取出电路板并将其放在Reflow热板上,这将PCB的温度从下面提高到焊膏融化的点,并且SMD组件都连接到它们的焊盘上。

•我们将从PCB背面插入的两个CON7母头引脚连接器的焊盘连接到XIAO微控制器的位置。

•我们从顶部添加OLED后将其焊接到位。

•板装配现在已经完成。

控制台组装

通过四个安装孔将9mm PCB支架连接到电路板的顶层是我们开始层组装过程的方式。

翻转顶层板,将两个3d打印的开关插入指定槽位。

接下来,中间层从顶层的底部开始定位。

然后,我们将3d打印的左手和右手手柄放置在中间层上,并用两个M2.5螺钉固定在PCB支架上。

将两个手柄连接到连接PCB顶层和中间层的支架后,我们安装了XIAO ESP32并完成了控制台组件。

代码

让我们看一下我们构建的代码,这是一个简单的代码。

我们用两个按钮来控制桨。它包括显示和按钮的初始化,跟踪球拍和球位置的变量,以及处理球运动、球拍控制和碰撞检测的游戏逻辑。

游戏以“PONG PRO”的欢迎屏幕开始,并在游戏结束时显示“你赢了!”或“你输了!”的信息,这取决于玩家或电脑是否错过了球。然后游戏重新开始下一轮,继续循环,直到设备关闭。

结果

这是这个简单而有趣的构建的最终结果:一个运行PONG的超级小型手持游戏设备。在这个游戏中,我们的对手是电脑,我们正在和它比赛。当电脑没有击中球时,会出现一个闪屏,表明我们赢了;如果我们错过了球,一个闪屏出现,表明我们已经输了。

总的来说,这是一个有趣的小项目,几乎完成;然而,因为这个设备是通过USB端口供电的,我们没有包括电池,我们将在这个项目的下一个迭代中解决这个问题。



关键词: 控制器 OLED ESP32 SSD1306

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关电路