无主之地2配置高吗|看真人裸体BBBBB|秋草莓丝瓜黄瓜榴莲色多多|真人強奷112分钟|精品一卡2卡3卡四卡新区|日本成人深夜苍井空|八十年代动画片

網易首頁 > 網易號 > 正文 申請入駐

復古游戲掌機

0
分享至

復古游戲掌機

60 多年過去了,盡管輝光管已經停產,有很多工程師仍然對它情有獨鐘。我用 8 塊液晶顯示屏制作了一個擬輝光管時鐘,感受復古元素的美感,表達對過去經典的敬意。

這是一款基于ESP32的開源復古游戲掌機,是很多年前的一個開源項目,我在開源項目基礎上做了一些優(yōu)化,更改了顯示屏硬件,重新繪制了PCB,對原作者表示感謝!

復古游戲掌機使用Arduino IDE編程,游戲文件存放于存儲卡中,支持游戲選擇,理論游戲數(shù)量有很多,可以暢玩很多經典游戲,是一款兒時夢寐以求的指尖游戲機,一秒找回童年記憶。

演示視頻

材料介紹

主控

復古游戲掌機主控采用 ESP32-WROVER-E 模 塊( 見 圖 1),ESP32-WROVER-E 采用的芯片是ESP32 系列的 ESP32-D0WD-V3。ESP32-D0WD-V3芯片具有可擴展、自適應的特點。兩個 CPU 可以被單獨控制。CPU 時鐘頻率的調節(jié)范圍為 80~240 MHz,集成了豐富的外設,包括電容式觸摸傳感器、霍爾傳感器、Micro SD 卡接口、以太網 接 口、 高 速 SPI、UART、I2S和 IPC 等。模塊集成了傳統(tǒng)藍牙、低功耗藍牙和 Wi-Fi,具有廣泛的用途。

圖 1 ESP32-WROVER-E 模塊

選 用 ESP32-WROVER-E 模塊除了功能強大,還有一個重要原因是這個模塊擁有片外內存區(qū) —— PSRAM,對于游戲文件超過 1MB 的情況就需要片外內存區(qū)了。這個模塊PSRAM 大小有 8MB,有 4MB 可用,足夠 1M 大小的游戲文件運行了。

液晶顯示屏

顯示屏使用 3.2 英寸液晶顯示屏( 見 圖 2), 分 辨 率 為 320 像素 ×240 像 素, 驅 動 芯 片 型 號 為ILI9341,ILI9341 驅 動 芯 片 提 供 8位 /9 位 /16 位 /18 位的并行 MCU 數(shù)據(jù) 總 線,6 位 /16 位 /18 位 RGB 接口數(shù)據(jù)總線以及 3 線 /4 線 SPI 接口,本項目采用通信方式為 4 線 SPI,接口方式為 40Pin 插接式。

圖 2 3.2 英寸液晶顯示屏

無聲貼片開關

復古游戲掌機按鍵采用無聲 貼 片 開 關( 見 圖 3), 大 小 為6mm×6mm×5mm,這款開關按力均勻,手感柔軟均勻舒適,壽命在 20萬次以上。

圖 3 無聲貼片開關

電路設計

主控部分

ESP32-WROVER-E 模 塊 的引腳分配給按鍵、顯示屏和存儲卡模塊,主控電路如圖 4 所示。

圖 4 主控電路

下載電路

本項目使用 CH340C 芯片,該芯片內置晶體振蕩器,可以省去晶體振蕩器電路,價格便宜,電路簡單,配合三極管可實現(xiàn)自動下載功能,下載電路如圖 5 所示。

圖 5 下載電路

供電及穩(wěn)壓電路

供電電路使用了 2 個 Micro USB接口,方便后期從上下兩個方向供電。穩(wěn)壓電路使用 LM1117S-3.3 芯片,這是一種常見的穩(wěn)壓芯片,價格便宜,電路簡單,供電及穩(wěn)壓電路如圖6所示。

圖 6 供電及穩(wěn)壓電路

存儲電路

掌機存儲電路的卡座采用的是市面上常見的 Micro SD 卡卡座,體積小,通信接口為標準 SPI 接口,通過文件系統(tǒng)及 SPI 接口驅動程序,單片機系統(tǒng)即可完成 Micro SD 卡內的文件讀寫,存儲電路如圖 7 所示。

圖 7 存儲電路

鋰電池充電電路

鋰電池充電電路里使用了TP4056 芯片,TP4056 是一款完整的單節(jié)鋰電池恒定電流 / 恒定電壓線性充電芯片。充電電壓固定在 4.2V,而充電電流可通過一個電阻進行外部設置,在充電狀態(tài)時,充電指示燈 LED4(紅色)亮;充滿電后 LED4 滅,待機指示燈 LED3(綠色)亮。TP4056 芯片采用 ESOP8 封裝,配合較少的外圍元器件使其非常適用于便攜式產品,并且適合給 USB 電源以及適配器電源供電,鋰電池充電電路如圖 8 所示。

圖 8 鋰電池充電電路

音頻電路

音頻電路中使用了一個8Ω/1W、直徑為 13mm 的揚聲器用于播放游戲背景音樂,用一個開關控制揚聲器是否工作,電路中留出兩路供電電路來選擇揚聲器的音量,音頻電路如圖 9所示。這只是個簡單的音頻電路,俗話說“聽個響”,但是這種復古音質正好和復古游戲呼應,相得益彰。

圖 9 音頻電路

顯示屏驅動電路中采用了一個0.5mm 間距 FPC 上接抽拉式貼片連接器,通過短接開關可選擇 4 線SPI 連接方式,電路中還引出了兩組顯示屏接口,接口順序和市面上其他常見顯示屏模塊的引腳順序相同,通過修改程序,可以兼容更多 4 線SPI 驅動的顯示屏,顯示屏驅動電路如圖 10 所示。

圖 10 顯示屏驅動電路

PCB設計

為了方便電路板打樣,我把電路板的長寬都限制在邊長為 10cm 的正方形里,所以 PCB 設計時,所有元器件采用旋轉 45°放置的方式,充分利用正方形的對角線長度,液晶顯示屏居中放置,操作按鍵在顯示屏兩側。PCB整體布局如圖 11 所示,PCB 整體效果如圖 12 所示。

圖 11 PCB 整體布局

圖 12 PCB 整體效果

程序介紹

編程環(huán)境

使用 Arduino IDE 1.8.16 版本,軟件中的開發(fā)板管理器 ESP32 庫版本為 1.0.6(見圖 13)。

圖 13 Arduino IDE 版本以及 ESP32 庫版本

源程序說明

源程序文件包含如下內容。

● esp32gamepad.ino :主文件。

● controller.cpp:控 制 器, 主要是按鍵類型和搖桿類定義。

● display.cpp:顯 示 屏 驅 動文件。

● hw_config.h:文件系統(tǒng)定義、音頻引腳及按鍵引腳定義。

● osd.c :操作系統(tǒng)處理函數(shù)。

● sound.c:音頻系統(tǒng)函數(shù)。

一般只需要修改 esp32gamepad.ino、display.cpp、hw_config.h 這 3個文件即可。

程序編寫

1. 導入庫和選擇開發(fā)板類型

這 個 項 目 中 使 用 了 Arduino_GFX 庫 和 arduino-nofrendomaster 庫,需要將下載好的庫文件放置在 Arduino IDE 的 libraries 文件夾中,否則會編譯失敗。

Arduino 編譯時,開發(fā)板類型選擇 “ESP32 Wrover Module”( 見圖 14)。

圖 14 選擇開發(fā)板類型

2. 自定義按鍵

按照原理圖對游戲掌機的按鍵進行定義,如程序 1 所示。

顯示屏移植

原 項 目 使 用 的 是 ST7789 驅 動的 2.4 英 寸 液 晶 顯 示 屏, 我 這 里 改成 ILI9341 驅動的 3.2 英寸液晶顯示屏,所以程序中需要修改,需要注意的是原項目中定義總線類型的語句中,IPS 是否為高清屏的內容改成Arduino_ILI9341 驅動后需要刪除,因為庫文件中沒有相關的定義,不修改編譯無法通過,原項目相關程序如程序 2 所示,移植后的程序如程序3所示。如果需要其他類型顯示屏,可在 Arduino_GFX\sr\display 這個文件夾中查找,有列的就是支持的。

復古游戲掌機的使用

(1)準備一張 Micro SD 卡,格式化成 FAT32 格式,將提前下載好的擴展名是 .nes 的游戲文件復制到存儲卡根目錄,游戲名用英文。

(2)開機后顯示屏上如果提示“Filesystem mount failed! try to restart.”,說明存儲卡掛載失敗,可以嘗試斷電重啟,若兩三次重啟后仍然無法使用,請檢查存儲卡或者電路。

(3) 開 機 存 儲 卡 掛 載 成 功 后會顯示一張圖片,顯示屏上方顯示“waiting”字樣。

(4)在“waiting”字樣界面下,使用 left 和 right 按鍵可以調整亮度,立即生效,亮度最小 10,最大 255,支持重啟后記住之前的設定值。

(5)在“waiting”字樣界面下,按一次 A 鍵,則會瀏覽根目錄文件,如果不是游戲文件,則會顯示“Not a game file, please select again.”,需要繼續(xù)按 A 鍵繼續(xù)選擇,直到出現(xiàn).nes 的游戲文件。

(6)出現(xiàn) .nes 游戲文件名顯示后,按 mode 按鍵確認即可開始游戲。

(7)進入游戲后根據(jù)游戲中的按鍵提示進行操作即可。

成果展示

制作完成的復古游戲掌機如圖 15所示。

圖 15 NES 游戲掌機

復古游戲掌機做完后,我迫不及待打開了小時候玩的第一個游戲,伴隨著熟悉的背景音樂,以一種老玩家從容不迫的心態(tài)無傷通過了第一關,一切都是那么熟悉,此時手里捧著的不再是一臺游戲機,而是童年時期的夢想。

現(xiàn)在,畫面震撼、玩法多樣的游戲每年都會推陳出新,自制游戲機項目每年也在不斷革新,我在自己能力范圍內制作了屬于自己的復古游戲掌機,也算是還了一個“童年債”。每次玩起這些老游戲,我總能想起那些遙遠的、計算機還沒普及的寒暑假,打開游戲機,選擇好上次沒能通關的游戲,那時候我最不缺的就是時間。

特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發(fā)布,本平臺僅提供信息存儲服務。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相關推薦
熱點推薦
日媒:日本國家隊已經返回日本,約700名球迷前來接機

日媒:日本國家隊已經返回日本,約700名球迷前來接機

懂球帝
2026-07-02 16:01:12
人口大遷徙已成定局?明后年,越來越多的人會舉家流入這4座城市

人口大遷徙已成定局?明后年,越來越多的人會舉家流入這4座城市

琴音似君語
2026-06-26 16:39:55
男籃世青賽八強正式出爐!中國隊慘敗出局:美國法國澳洲攜手晉級

男籃世青賽八強正式出爐!中國隊慘敗出局:美國法國澳洲攜手晉級

籃球快餐車
2026-07-02 06:05:56
“喂到他娶媳婦為止”,網友:孩子奶奶發(fā)型,早已預示了家教水平

“喂到他娶媳婦為止”,網友:孩子奶奶發(fā)型,早已預示了家教水平

世界圈
2026-06-09 08:32:26
再見了!馮小剛,《抓特務》票房慘敗,屬于馮小剛的時代結束了

再見了!馮小剛,《抓特務》票房慘敗,屬于馮小剛的時代結束了

夸大其詞的說
2026-06-30 23:10:03
李國慶談韓紅走個面爭議:人家混圈子只為募捐 還敢訓不捐款明星

李國慶談韓紅走個面爭議:人家混圈子只為募捐 還敢訓不捐款明星

快科技
2026-07-01 18:58:25
奇景!比利時落后鬧內訌:對手都來勸架 轉頭兩人聯(lián)袂絕平

奇景!比利時落后鬧內訌:對手都來勸架 轉頭兩人聯(lián)袂絕平

新英體育
2026-07-02 12:46:15
今年最熱時間變了!全年高溫頂峰不在七月初,別再按老辦法防暑

今年最熱時間變了!全年高溫頂峰不在七月初,別再按老辦法防暑

荊醫(yī)生科普
2026-07-02 15:53:16
現(xiàn)場上座率超99%!2026世界杯改寫歷史,48隊賽制成最大商業(yè)勝利

現(xiàn)場上座率超99%!2026世界杯改寫歷史,48隊賽制成最大商業(yè)勝利

熱血體育社
2026-07-02 00:47:42
橫掃失敗怒轟10-0!王藝迪3-1送韓國老將3連敗,靜待日本德比勝者

橫掃失敗怒轟10-0!王藝迪3-1送韓國老將3連敗,靜待日本德比勝者

釘釘陌上花開
2026-07-02 10:43:31
黃皮再次被點名!研究發(fā)現(xiàn):吃得越多,痛風患者病情或好轉?

黃皮再次被點名!研究發(fā)現(xiàn):吃得越多,痛風患者病情或好轉?

敘說醫(yī)療健康
2026-07-01 08:00:10
1936 錢壯飛烏江失蹤成謎,尋 50 年 1986 金沙縣考證結局唏噓

1936 錢壯飛烏江失蹤成謎,尋 50 年 1986 金沙縣考證結局唏噓

磊子講史
2026-01-08 15:47:38
清爽夏日:那不是季節(jié),是身體學會松綁的時節(jié)

清爽夏日:那不是季節(jié),是身體學會松綁的時節(jié)

疾跑的小蝸牛
2026-07-01 18:37:22
某大廠員工:小組裁員35%,一個人扛三個人的活。累得心絞痛發(fā)作

某大廠員工:小組裁員35%,一個人扛三個人的活。累得心絞痛發(fā)作

螞蟻大喇叭
2026-07-02 16:41:08
濃眉轉發(fā)嘲諷佩林卡評論:濃眉被捅刀了!跪求中鋒多年佩總一動不動

濃眉轉發(fā)嘲諷佩林卡評論:濃眉被捅刀了!跪求中鋒多年佩總一動不動

818體育
2026-07-02 11:42:54
世界銀行做出決定,五年內對中國停止貸款,美國第一時間出面祝賀

世界銀行做出決定,五年內對中國停止貸款,美國第一時間出面祝賀

看盡人間百態(tài)
2026-07-02 10:27:39
李冰冰開出12萬月薪招保姆。其中一位保姆應聘,將菜里里外外洗了5、6遍,才給李冰冰看。沒想到,李冰冰只看了一眼...

李冰冰開出12萬月薪招保姆。其中一位保姆應聘,將菜里里外外洗了5、6遍,才給李冰冰看。沒想到,李冰冰只看了一眼...

LULU生活家
2026-07-02 15:59:19
這個一妻多夫制的民族,晚上怎么過?女人直言:簡直就是受罪

這個一妻多夫制的民族,晚上怎么過?女人直言:簡直就是受罪

哄動一時啊
2026-06-24 14:26:23
中方將迎戰(zhàn)!美財長已對華下戰(zhàn)書,7月陰謀已成,鎖死對中貿易

中方將迎戰(zhàn)!美財長已對華下戰(zhàn)書,7月陰謀已成,鎖死對中貿易

商業(yè)財經風向
2026-07-01 11:31:50
狂轟11-1,孫穎莎打瘋了!王楚欽回應0-2混雙逆轉!美國大滿貫16強出爐 CCTV直播

狂轟11-1,孫穎莎打瘋了!王楚欽回應0-2混雙逆轉!美國大滿貫16強出爐 CCTV直播

好乒乓
2026-07-02 15:30:25
2026-07-02 18:03:00
無線電雜志 incentive-icons
無線電雜志
《無線電》雜志官方網易號
719文章數(shù) 5027關注度
往期回顧 全部

游戲要聞

好游戲就得長?短小精悍和量大管飽誰更適合現(xiàn)代玩家

頭條要聞

西安賽格某商戶負責人墜亡 疑曾發(fā)文稱被商場罰款千萬

頭條要聞

西安賽格某商戶負責人墜亡 疑曾發(fā)文稱被商場罰款千萬

體育要聞

韓國人,為什么恨透了洪明甫?

娛樂要聞

眾星祝福祖國,曾沛慈原形畢露?

財經要聞

千億茶市場無贏家:瀾滄巨虧 八馬停"蹄"

科技要聞

馬斯克不承認,但SpaceX就該造AI手機

汽車要聞

小鵬MONA L03 智能化水平拉滿 還有玩法多樣的巧思大空間

態(tài)度原創(chuàng)

時尚
本地
親子
數(shù)碼
藝術

月入3萬,時代紅利砸向文科生

本地新聞

這場穿越酉陽的光影之旅,張張都是壁紙!

親子要聞

分年齡段選購兒童被子指南:不同成長階段核心需求與選型方向梳理

數(shù)碼要聞

RTX 5090D液氮超頻首破4GHz

藝術要聞

光輝歷程 時代丹青——慶祝中國共產黨成立105周年美展 油畫選

無障礙瀏覽 進入關懷版