大家好,歡迎回來!這是Pong PRO,一個自制的迷你游戲設(shè)備,可以運行Pong。
在這里,我們在帶有SSD1306 OLED屏幕的ESP32 Dev板上運行《PONG》,并使用兩個方向按鈕控制桿。然后,所有的東西都固定在獨特的3d打印手柄上,允許用戶正確操作控制器。
這個項目是基于我們以前的Macropad項目的pcb,它本質(zhì)上是一個ESP32分線,兩個按鈕連接到微控制器和一個124x32 OLED顯示器。模擬兩個手柄,并將項目轉(zhuǎn)化為一個功能齊全的PONG游戲控制臺。
對于這個項目,我們甚至從頭開始設(shè)計了自己的PONG游戲,本文將介紹整個構(gòu)建過程,因此讓我們從構(gòu)建開始。
材料要求
這些是這個項目中使用的材料:
?定制PCB(由HQ Next PCB提供)
?ESP32開發(fā)板
?按鈕SMD
?SSD1306 OLED 128x32
?PCB壓鉚螺母柱
?M3螺栓
?3D打印部件
三維模型
本項目的3D模型由原來的Macropad Assembly組成,由三層組成:頂層,中間層,底層,所有層都通過M2.5 PCB支架連接在一起。在這個設(shè)計中,我們刪除了底層,只保留了頂層和中間層。
中間層包含所有電子元件,包括ESP32微控制器板,SSD1306 OLED屏幕和兩個SMD按鈕。頂層作為中間層的非道德蓋板,中間層有三個開口:一個用于OLED顯示器的矩形孔徑和兩個開關(guān)致動器。
開關(guān)執(zhí)行器建模并定位在頂層開關(guān)開槽和SMD開關(guān)旋鈕之間。
由于開關(guān)執(zhí)行器和開關(guān)旋鈕彼此完美地放在一起,擠壓開關(guān)執(zhí)行器也會壓住旋鈕,導(dǎo)致開關(guān)咔嗒聲。
為了符合人體工程學(xué),我們從世嘉創(chuàng)世紀(jì)控制器中獲得靈感,設(shè)計了兩個手柄部分,使用M2.5 PCB支架連接兩個PCB層。
模型完成后,將開關(guān)執(zhí)行器和手柄導(dǎo)出為網(wǎng)格文件,并使用橙色PLA和0.4mm噴嘴進(jìn)行3D打印。
PCB設(shè)計
這個項目的PCB設(shè)計很簡單;我們使用帶有D0和D1 I/O引腳的XIAO ESP32板將其連接到兩個SMD開關(guān)。我們還將OLED顯示器與微控制器結(jié)合在一起,微控制器連接到XIAO的I2C端口。
我們根據(jù)模型的尺寸創(chuàng)建了兩塊板:頂層板和中間層板。由于中間層板和底層共用相同的形式和安裝孔,所以我們將其用于底層。
HQ NextPCB服務(wù)
PCB設(shè)計完成后,我們導(dǎo)出Gerber數(shù)據(jù),發(fā)送給HQ NextPCB取樣。
對于中間層和頂層板,有兩個訂單。我們?yōu)橹虚g層和頂層板訂購了一個黑色的帶白色屏幕的阻焊板。
下訂單后,PCB在一周內(nèi)收到,PCB質(zhì)量非常好。
另外,我要把HQDFM帶給你,它在很多項目中給了我很大的幫助。華秋的內(nèi)部工程師開發(fā)了免費的制造設(shè)計軟件HQDFM,徹底改變了PCB設(shè)計師如何可視化和驗證他們的設(shè)計。
利用NextPCB的加速器活動,為您的創(chuàng)新項目獲得2個免費組裝的基于rp2040的pcb。
此報價涵蓋所有費用,包括物流,使您的想法更容易,更實惠的生活。SMT服務(wù)可能很昂貴,但NextPCB可以幫助您克服這一障礙。只要分享你的相關(guān)項目,他們就會處理好剩下的事情。不要錯過這個提升你的科技創(chuàng)作的絕佳機會!
HQDFM:免費在線Gerber查看器和DFM分析工具
此外,NextPCB有自己的Gerber Viewer和DFM分析軟件。
您的設(shè)計可以通過他們的HQDFM軟件(DFM)服務(wù)得到改進(jìn)。因為我發(fā)現(xiàn)等待制造商的DFM報告很煩人,所以HQDFM是執(zhí)行事件前自檢的最有效方法。
以下是在線Gerber Viewer向我展示的內(nèi)容。再清楚不過了。然而,對于完整的功能,如DFM分析的PCBA,你需要下載的軟件。在線版本僅提供簡單的PCB DFM報告。
具有全面的制造設(shè)計(DFM)分析功能,HQDFM是一個免費的,復(fù)雜的在線PCB Gerber文件查看器。
它利用超過15年的行業(yè)專業(yè)知識提供了對先進(jìn)制造的見解。如果你想以合理的價格獲得優(yōu)質(zhì)的PCB服務(wù),你可以看看HQ NextPCB。
印刷電路板組裝
?使用錫膏點針,我們開始PCB組裝過程,將錫膏放在每個組件墊上。
?接下來,我們使用ESD鑷子挑選并放置SMD開關(guān)在其位置。
?隨后,我們?nèi)〕鲭娐钒宀⑵浞旁赗eflow熱板上,這將PCB的溫度從下面提高到焊膏融化的點,并且SMD組件都連接到它們的焊盤上。
?我們將從PCB背面插入的兩個CON7母頭引腳連接器的焊盤連接到XIAO微控制器的位置。
?我們從頂部添加OLED后將其焊接到位。
?板裝配現(xiàn)在已經(jīng)完成。
控制臺組裝
通過四個安裝孔將9mm PCB支架連接到電路板的頂層是我們開始層組裝過程的方式。
翻轉(zhuǎn)頂層板,將兩個3d打印的開關(guān)插入指定槽位。
接下來,中間層從頂層的底部開始定位。
然后,我們將3d打印的左手和右手手柄放置在中間層上,并用兩個M2.5螺釘固定在PCB支架上。
將兩個手柄連接到連接PCB頂層和中間層的支架后,我們安裝了XIAO ESP32并完成了控制臺組件。
代碼
讓我們看一下我們構(gòu)建的代碼,這是一個簡單的代碼。
我們用兩個按鈕來控制槳。它包括顯示和按鈕的初始化,跟蹤球拍和球位置的變量,以及處理球運動、球拍控制和碰撞檢測的游戲邏輯。
游戲以“PONG PRO”的歡迎屏幕開始,并在游戲結(jié)束時顯示“你贏了!”或“你輸了!”的信息,這取決于玩家或電腦是否錯過了球。然后游戲重新開始下一輪,繼續(xù)循環(huán),直到設(shè)備關(guān)閉。
結(jié)果
這是這個簡單而有趣的構(gòu)建的最終結(jié)果:一個運行PONG的超級小型手持游戲設(shè)備。在這個游戲中,我們的對手是電腦,我們正在和它比賽。當(dāng)電腦沒有擊中球時,會出現(xiàn)一個閃屏,表明我們贏了;如果我們錯過了球,一個閃屏出現(xiàn),表明我們已經(jīng)輸了。
總的來說,這是一個有趣的小項目,幾乎完成;然而,因為這個設(shè)備是通過USB端口供電的,我們沒有包括電池,我們將在這個項目的下一個迭代中解決這個問題。
本文編譯自hackster.io