99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

教你自制游戲機

Android編程精選 ? 來源:Android編程精選 ? 作者:Android編程精選 ? 2022-04-12 10:02 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

MicroByte 是一款微型主機,能夠運行 NES、GameBoy、GameBoy Color、Game Gear 和 Sega Master 系統(tǒng)的游戲,所有元器件都設(shè)計在這 78 x 17 x 40 mm 的封裝中。盡管成品尺寸很小,但它符合 SNES 游戲板的布局并且具有操作按鈕。

它還配有一個清晰的 1.3 英寸 IPS 顯示屏,可以看到游戲的所有細節(jié)。

隨后還會更新 PythonArduino 庫以便進行游戲以外的開發(fā)工作。

固件、PCB 設(shè)計、外殼 3D 文件等可以在本項目文件庫中下載:

https://make.quwj.com/project/359

BOM 清單:

https://github.com/jfm92/microByte_PCB/blob/main/microByte_BOM.xlsx


項目架構(gòu)

通常啟動電子項目時,首先會創(chuàng)建一個框圖,其中設(shè)置項目所需的功能及交互的方式,然后繪制原理圖。在原理圖上,選擇符合要求的元器件并進行電氣連接,之后進行 PCB 布局設(shè)計。最后,按照設(shè)計規(guī)則和物理設(shè)計準則設(shè)置每個元器件基座的位置。

2ff034ac-b9cf-11ec-aa7f-dac502259ad0.jpg

上面是以面包板為原型的原始版本,下面是最終版本。

3010e4d6-b9cf-11ec-aa7f-dac502259ad0.jpg

此處將按照模塊化思想進行項目開發(fā),輔以原理圖設(shè)計和 PCB 布局設(shè)計。

該項目原理圖和 PCB 布局是用 Kicad 設(shè)計的,下載鏈接:

https://github.com/jfm92/microByte_PCB/tree/5cb0fcf7a9658e331d677588a7f35327a7d491d7

要打開它,只需安裝 Kicad 并雙擊 .pro 文件。

ESP32 微控制器

首先選擇合適的微控制器,對于該項目,選擇 ESP32 Wrover E 模塊。該模塊/微控制器特點:具有 240 MHZ 雙核、16 MB 閃存、8 MB RAM、超低功耗協(xié)處理器、支持 Wi-Fi藍牙以及全套外圍設(shè)備和 GPIO,仿真性能極佳。

設(shè)計中可參考 Espressif,數(shù)據(jù)表如下:

https://www.espressif.com/sites/default/files/documentation/esp32-wrover-e_esp32-wrover-ie_datasheet_en.pdf

電路板模塊的原理圖:

30292e7e-b9cf-11ec-aa7f-dac502259ad0.png

中間是與外圍設(shè)備連接的 ESP32 模塊。

引腳 25 是 IO 0 引腳。該引腳為選擇設(shè)備的引導狀態(tài),可以閃存新固件或啟動已閃存的固件。信號為高,啟動已閃存的固件;信號為低,啟動引導模式,并等待新固件。

引腳 3 是啟用引腳(又名復位)。如果這個引腳是高電平,微控制器將工作,否則不工作。為了避免信號彈跳,此處有一個 RC 電路(電阻/電容),在板啟動或跳變時產(chǎn)生干凈的信號,以防止意外復位。由于該電路沒有復位按鈕,因此并不是完全必要,但最好保持謹慎。

引腳 24 是 IO 2 引腳,連接了一個帶電阻器的藍色 LED,起到顯示通知的作用。

讓我們看看引腳 2 或 VDD 3V3。這引腳是給芯片供電的,電壓 3.3 V。注意并聯(lián)電容器,這些電容器是去耦電容器,用于清除寄生干擾。

下面是 PCB 設(shè)計布局和 PCB 板中重點研究的部分。

304e20da-b9cf-11ec-aa7f-dac502259ad0.png

3065269a-b9cf-11ec-aa7f-dac502259ad0.jpg

3079e8fa-b9cf-11ec-aa7f-dac502259ad0.jpg

除此之外,相關(guān)的組件必須盡可能靠近。

添加 USB 模塊

USB 收發(fā)器是一個將 USB 信號轉(zhuǎn)換為串行、RS232 或其他類似協(xié)議的芯片。在市場上,有各種各樣的型號可供選擇,此處使用 CH340C。

CH340C 不需要像 CH340G 一樣的外部時鐘,其用法簡單,價格是 CP2102 或 FT232 的一小部分。

3090802e-b9cf-11ec-aa7f-dac502259ad0.png

圖的右側(cè)所示。它的設(shè)計非常簡單,只有一塊芯片,上面有兩個去耦電容和一個 0 歐姆的電阻。如果不確定是否必須進行連接,則將這種電阻器用作電橋。

右邊是 USB-C 連接器的示意圖。其作用是連接到 PC 并給電池充電。在 PCB 布線時,使用 USB-C 更具挑戰(zhàn)性,因為需要添加雙連接,可以在任何方向使用導線。

提示:USB 信號是并行高速信號,必須盡量平行布線,避免信號間的串擾,并盡量將信號線布在靠近數(shù)字邏輯芯片的地方。

30b3d704-b9cf-11ec-aa7f-dac502259ad0.jpg

30cc6ad0-b9cf-11ec-aa7f-dac502259ad0.png

電池與電源管理

此處分為三個部分:電池充電和保護電路電源管理和電池電量控制。
電池充電和保護電路:

30e7f322-b9cf-11ec-aa7f-dac502259ad0.png

對于 Li-Po 電池的使用,安全第一,需要做一個正確的恒流充電控制器,使它不要在 4.2 V 以上充電或在 2.8 V 以下對電池放電,以免損壞電池。

TP4056 是一個鋰聚合物電池充電器芯片,可提供恒定的線性電壓電流,還可以通過修改 R 2 的阻值設(shè)置充電電流。切記充電電流應為電池容量的 25 % 左右。此芯片連接到 LED D1,以顯示電池的充電狀態(tài)。

FS312F-G 是一個電池保護電路芯片,如果檢測到電池過度充電或過度放電,它會切斷電池的使用。這樣可以避免損壞電池。

FS8205 是一個集成兩個 MOSFET 晶體管以選擇電路功率的芯片,如果電池處于合適的范圍內(nèi),它將從電池中獲取能量,如果將設(shè)備連接到 USB 端口,它將直接利用 USB 的能量工作。

電源管理:

310f297e-b9cf-11ec-aa7f-dac502259ad0.png

該模塊是電壓轉(zhuǎn)換器的升壓電路,可提供 3.3 V 的恒定電壓。鋰電池的最大充電電壓為 4.2 V,最小安全電壓為 2.8 V。因此,需要提供恒定電壓以避免微控制器不穩(wěn)定或顯示器上的亮度較低。為解決這個問題,此處使用 MT3608,它是一種可配置的升壓電壓轉(zhuǎn)換器。在該電路的輸出端,電壓為 4.2 V,高于器件所需的 3.3 V,所以使用 MCP1700 電壓轉(zhuǎn)換器將電壓從 4.2 V 轉(zhuǎn)換為 3.3 V。

這個方案可能存在過度設(shè)計或效率低下的問題,但這是最便宜有效的解決方案。

電池電量控制:

31235124-b9cf-11ec-aa7f-dac502259ad0.png

就像升壓電路前的分壓器一樣簡單。此點的電壓最大將達到 4.2 V,因此僅需設(shè)計一個降至 3.3 V 的分壓器以遵守 ESP32 的邏輯電平并將其連接到 ADC GPIO 即可測量模擬電平信號。

314b6754-b9cf-11ec-aa7f-dac502259ad0.png

316f2e0a-b9cf-11ec-aa7f-dac502259ad0.jpg

31818672-b9cf-11ec-aa7f-dac502259ad0.jpg

設(shè)計 SD 卡模塊

SD 卡使用 SPI 協(xié)議,這是一種雙向通信,可實現(xiàn)高速通信。使用外設(shè)時,不必擔心串擾,因為它的速度不足以產(chǎn)生磁場(至少此處沒有任何問題)。

電路也非常簡單,將每條線連接到 MCU 的 SPI GPIO 口并添加一個上拉電阻。該電阻對于保持線路上的恒定高電平并避免可能破壞數(shù)據(jù)傳輸?shù)闹虚g電平信號很重要。

31991698-b9cf-11ec-aa7f-dac502259ad0.png

31bfa7a4-b9cf-11ec-aa7f-dac502259ad0.png

31e70218-b9cf-11ec-aa7f-dac502259ad0.jpg

此處還有我們的老朋友去耦電容器。

音頻輸出

使用 ESP32,有兩種方式輸出音頻。通過檢查數(shù)據(jù)表,此處可以使用集成的 I2S 到 DAC 轉(zhuǎn)換器或直接使用 I2S 外設(shè)。

32003440-b9cf-11ec-aa7f-dac502259ad0.png

獲得音頻輸出的最簡單方法是使用 I2S 到 DAC 轉(zhuǎn)換器,因為可以將揚聲器直接連接到 GPIO,如果音頻音量很低,則可以使用模擬音頻放大器,這非常容易實施。但是這種解決方案也帶來了一些不便。DAC 僅使用 I2S 16 位中的 8 位,這意味著將丟失很多音頻信息,導致音頻質(zhì)量非常差。

I2S 是一種數(shù)字音頻協(xié)議,可保證高保真音頻,而不造成質(zhì)量損失或噪聲。但需要一個轉(zhuǎn)換器模擬轉(zhuǎn)換器和放大器收到的東西。此處采用 MAX98357 音頻放大器。該放大器將 I2S 信號轉(zhuǎn)換為模擬信號,并將其放大以直接用于接揚聲器或耳機。該放大器/轉(zhuǎn)換器可為我們提供 6.4W 的輸出功率,并具有可配置的輸出選擇——在單聲道或立體聲音頻之間進行選擇和阻抗選擇。

32235b5a-b9cf-11ec-aa7f-dac502259ad0.png

323cd134-b9cf-11ec-aa7f-dac502259ad0.jpg

3254e85a-b9cf-11ec-aa7f-dac502259ad0.jpg

免責聲明:我對音頻的了解不是很深,所以一些音頻數(shù)據(jù)可能是錯誤的,僅供參考。

添加按鍵

ESP32 是一個不錯的模塊,但它的 GPIO 端口數(shù)量很少。但是不用擔心,我們有 TCA9555 解決方案。

TCA9555 是 I2C GPIO 多路復用器。該器件最多允許使用 18 個額外的 GPIO。這些 GPIO 可用作輸入或輸出,并可通過 I2C 進行控制或檢查。因此,僅使用兩個 GPIO(I2C SDA 和 I2C SCLK),就有了 18 個額外的 GPIO!延遲不是問題,因為可以讀取或?qū)懭敫哌_ 400 Khz的數(shù)據(jù),這意味著每秒 400000 次!

32664fb4-b9cf-11ec-aa7f-dac502259ad0.png

讓我們看一下原理圖。該多路復用器可與 I2C 一起使用,因此需要上拉每個信號以避免線路上的噪聲。它也有一個中斷引腳,但未使用。I2C 信號為 SCL 和 SDA 引腳(19 和 20)。需要通過硬件配置設(shè)備的地址,此配置通過設(shè)置引腳 A0、A1 和 A2 的邏輯電平來完成。此處只有一個 I2C 設(shè)備,因此給出地址 0x00。

最后,所有開關(guān)按鈕都直接連接到芯片,我們通過軟件配置設(shè)置了上拉或下拉電阻,因為該多路復用器具有可配置的內(nèi)部電阻。

328ade56-b9cf-11ec-aa7f-dac502259ad0.png

該設(shè)備的有趣之處之一是電感式按鈕,它們是沒有絲印層的 PCB 布線,因此,帶有碳膜的橡膠按鈕可以用作開關(guān)按鈕。這是游戲手柄上的常規(guī)配置。如果要在設(shè)計中使用,可以在項目附帶的庫中找到。

32b8142a-b9cf-11ec-aa7f-dac502259ad0.jpg

32cad3d0-b9cf-11ec-aa7f-dac502259ad0.jpg

配一款亮麗的顯示屏

32eeeb4e-b9cf-11ec-aa7f-dac502259ad0.png

3306f0b8-b9cf-11ec-aa7f-dac502259ad0.png

顯示器采用 IPS 1.3 英寸屏幕,分辨率為 240 x 240 px,可以提供非常漂亮的色彩和清晰的圖像。通信協(xié)議是 SPI,可以實現(xiàn)高達 70 FPS 的幀速率(數(shù)據(jù)表中注明)。另一方面,可以控制顯示器的背光以選擇亮度等級。通過 BS138 MOSFET 晶體管完成控制顯示屏上嵌入的 LED 的電流。

完成

現(xiàn)在就可以運行這臺復古游戲機了,開啟你的復古游戲回憶之旅吧!

項目所用的代碼在本項目文件庫中可以下載:

https://make.quwj.com/project/359

-End-

審核編輯 :李倩

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 芯片
    +關(guān)注

    關(guān)注

    460

    文章

    52505

    瀏覽量

    440814
  • 電容器
    +關(guān)注

    關(guān)注

    64

    文章

    6709

    瀏覽量

    102916
  • 引腳
    +關(guān)注

    關(guān)注

    16

    文章

    1728

    瀏覽量

    52889

原文標題:自制游戲機,這個小伙辦到了!

文章出處:【微信號:AndroidPush,微信公眾號:Android編程精選】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    【項目分享】Xii-Boy-Ultra 無線便攜式 Wii 游戲機

    Xii-Boy Ultra 是一款小型便攜式 Wii 游戲機,采用垂直布局設(shè)計。該系統(tǒng)允許用戶無需使用焊錫,僅用螺絲刀就能輕松組裝和拆卸。 Xii-Boy Ultra 是一款采用垂直布局、小巧
    發(fā)表于 07-14 17:27

    【VisionFive 2單板計算機試用體驗】VisionFive 2一個霸氣的游戲機

    這次的測試活動,每人人手送一個游戲機,非常的好?。。?! 很高興收到賽昉科技發(fā)放的VisionFive 2開發(fā)板,VisionFive 2是全球首款集成了3D GPU的高性能量產(chǎn)RISC-V
    發(fā)表于 07-13 20:41

    單片實例項目:FC小霸王游戲手柄資料

    單片實例項目:FC小霸王游戲手柄資料,推薦下載!
    發(fā)表于 06-03 21:04

    用 Lakka 和 樹莓派 打造終客廳游戲機

    盡管現(xiàn)代樹莓派單板計算機(SBC)的規(guī)格有了大幅提升,但它們的性能仍不足以在4K分辨率下以60幀每秒(FPS)的速度運行3A級PC游戲。不過,那些老派游戲——尤其是為老式游戲機設(shè)計的游戲
    的頭像 發(fā)表于 05-27 15:35 ?220次閱讀
    用 Lakka 和 樹莓派 打造終客廳<b class='flag-5'>游戲機</b>!

    樹莓派復古游戲機:用科技重現(xiàn)經(jīng)典,讓童年永不落幕!

    復古游戲機是一種能讓你玩經(jīng)典游戲機上的視頻游戲的設(shè)備。有了復古游戲機,你可以玩來自Atari的《太空侵略者》和《吃豆人》,或者來自NintendoNES的《超級馬里奧兄弟》。甚至還能玩
    的頭像 發(fā)表于 03-25 09:28 ?497次閱讀
    樹莓派復古<b class='flag-5'>游戲機</b>:用科技重現(xiàn)經(jīng)典,讓童年永不落幕!

    樹莓派復古游戲“雙雄會”,Batocera 和 RetroPie 誰更懂你?

    要點包括:1.歷史和主要特點:Batocera于2016年作為Recalbox分支推出,是開源復古游戲發(fā)行版,可將計算機變游戲機;RetroPie始于2012年,基
    的頭像 發(fā)表于 03-25 09:19 ?1004次閱讀
    樹莓派復古<b class='flag-5'>游戲</b>“雙雄會”,Batocera 和 RetroPie 誰更懂你?

    N9300-S16 MP3解碼芯片IC在抓娃娃游戲機中的應用方案

    隨著科技發(fā)展,抓娃娃游戲機融入音樂芯片成為創(chuàng)新趨勢。音樂增強玩家代入感,音頻模塊N9300-S16提供高品質(zhì)音效。該芯片功能豐富,支持多種控制模式,為抓娃娃游戲機帶來音頻體驗升級,推動行業(yè)創(chuàng)新發(fā)展。
    的頭像 發(fā)表于 03-24 13:37 ?409次閱讀
    N9300-S16 MP3解碼芯片IC在抓娃娃<b class='flag-5'>游戲機</b>中的應用方案

    游戲機與數(shù)碼相機的理想選擇:HT4088高性能充電芯片

    討論HT4088在高性能便攜式設(shè)備中的應用,如游戲機和數(shù)碼相機,提供快速充電解決方案。
    的頭像 發(fā)表于 03-13 17:24 ?496次閱讀
    <b class='flag-5'>游戲機</b>與數(shù)碼相機的理想選擇:HT4088高性能充電芯片

    山澤回音壁連接指南:使用光纖HDMI線輕松打造家庭影院

    大家好!今天給大家?guī)硪黄敿毜闹改希?b class='flag-5'>教你如何使用光纖HDMI線連接山澤回音壁,讓你的家庭影院音效更上一層樓! 準備工具 HDMI線:用于連接視頻源(如電視、游戲機)與回音壁。 光纖線
    的頭像 發(fā)表于 11-12 14:41 ?978次閱讀

    索尼即將發(fā)布其首款OLED INZONE游戲顯示器

    索尼,這一在游戲機及多元消費電子領(lǐng)域享有盛譽的品牌,于2022年初涉游戲顯示器市場,憑借INZONE M9贏得了業(yè)界的關(guān)注。然而,在此后的時間里,索尼在該細分市場的動作相對沉寂,直至近期,其重返舞臺的意圖愈發(fā)明顯,預示著將推出一款革命性的新品。
    的頭像 發(fā)表于 09-24 15:40 ?813次閱讀

    索尼PS5 Pro游戲機震撼發(fā)布

    游戲界的萬眾矚目下,索尼于近日舉行的PS5技術(shù)展示會上,由首席架構(gòu)師Mark Cerny親自揭曉了萬眾期待的PS5 Pro游戲機。這款全新力作以699美元的定價,定于11月7日盛大發(fā)售,無疑為游戲愛好者們帶來了前所未有的震撼與
    的頭像 發(fā)表于 09-11 16:59 ?1021次閱讀

    任天堂Switch后繼機型或明年亮相

    任天堂即將為游戲界帶來新一輪的震撼,據(jù)悉,Switch的后繼機型有望在明年正式上市。這款開創(chuàng)性的游戲機自八年前問世以來,憑借其獨特的游戲體驗和便攜性設(shè)計,贏得了全球玩家的熱烈追捧,累計銷量已突破
    的頭像 發(fā)表于 08-13 15:36 ?915次閱讀

    蘋果更新App Store指南,允許PC模擬器下載游戲

    明確宣布允許PC模擬器應用提供游戲下載功能。此前,雖然游戲機模擬器應用已被允許包含游戲下載選項,但PC模擬器卻并未被明確包含在這一范圍內(nèi)。
    的頭像 發(fā)表于 08-02 16:37 ?849次閱讀

    基于 FPGA 的飛機大戰(zhàn)游戲系統(tǒng)設(shè)計

    喜歡老式電子游戲的買家。一些愛好者一直在收集復古游戲產(chǎn)品,一些普通玩家也開始收集舊式磁帶和CD,還有小時候玩過的游戲機。 雖然復古游戲只占全球 1090 億美金
    發(fā)表于 07-24 20:03

    藍牙模塊在無線游戲設(shè)備中的應用

    了更多的樂趣和可能性。本文將探討藍牙模塊在無線游戲設(shè)備中的應用,并分析其對游戲產(chǎn)業(yè)的影響。 藍牙模塊在無線游戲設(shè)備中的基礎(chǔ)應用主要體現(xiàn)在設(shè)備間的無線連接和數(shù)據(jù)傳輸。通過藍牙模塊,游戲
    的頭像 發(fā)表于 07-19 14:00 ?576次閱讀