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

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

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

如何使用ESP32和ATtiny861制作NES模擬器游戲控制臺(tái)

454398 ? 來源:工程師wv ? 2019-08-27 14:20 ? 次閱讀

步驟1:硬件準(zhǔn)備

如何使用ESP32和ATtiny861制作NES模擬器游戲控制臺(tái)

ESP32開發(fā)板

這次我使用的是TTGO T8 ESP32開發(fā)板。該板內(nèi)置Lipo充電和調(diào)節(jié)電路,可以幫助減少額外的元件。

顯示

這次我使用的是2.4“IPS LCD。驅(qū)動(dòng)控制器是ST7789V,分辨率為320 x 240.此分辨率最適合NES仿真器252 x 224分辨率。

電池

這次我使用的是454261 Lipo電池.4.5 mm是ESP32開發(fā)板的厚度,61 mm是板的寬度。

引腳接頭

一個(gè)4針公頭圓形針頭和一個(gè)4針母頭圓形針頭用于連接I2C游戲手柄。

PETG板

用于支撐開發(fā)板和鋰電池的小型PET/PETG板,您可以在產(chǎn)品包裝中輕松找到它。

多用途PCB

需要2個(gè)PCB,1個(gè)0.4 mm厚用于支撐顯示器,1個(gè)1.2 mm厚用于I2C游戲手柄。

按鈕

A 5個(gè)方向按鈕,2個(gè)用于選擇和啟動(dòng)的小按鈕,2個(gè)用于A和B按鈕。

I2C游戲手柄控制器

這次我使用的是ATtiny8 61微控制器作為I2C游戲手柄控制器。

其他

1個(gè)SMD 12歐姆電阻,一個(gè)ISP編程器(例如TinyISP)

第2步:軟件準(zhǔn)備

Arduino IDE

下載并安裝Arduino IDE

ATTinyCore支持

按照安裝步驟操作如果還沒有添加ATTinyCore支持

ESP-IDF

關(guān)注ESP-IDF入門指南如果還沒有設(shè)置開發(fā)環(huán)境

第3步:3D打印

下載并打印案例:https://www.thingiverse.com/thing:3591170

第4步:LCD支持

切割24 x 27孔0.4 mm PCB以支持LCD。請記住為折疊LCD FPC預(yù)留一些空間。然后使用一些雙面膠帶將LCD固定在PCB上。

步驟5:準(zhǔn)備PETG板

為開發(fā)板和Lipo電池支撐切出62 mm x 69 mm PETG板。

步驟6:修復(fù)ESP32開發(fā)板

使用雙面膠帶將開發(fā)板固定在PETG板上。

步驟7:修復(fù)Lipo電池

使用雙面膠帶修復(fù)除開發(fā)板外的Lipo電池。

步驟8:連接電池和電池;開發(fā)板

步驟9:準(zhǔn)備顯示引腳

LCD顯示有很多變化形式不同供應(yīng)商。請獲取正確的數(shù)據(jù)表,并在任何補(bǔ)丁和連接之前閱讀。

某些引腳保留用于觸摸屏。由于這款LCD沒有觸摸屏,只需將這些引腳切斷就可以減少干擾。

步驟10:連接GND引腳

在大多數(shù)情況下,很少有引腳需要連接到GND。為了減少焊接工作量,我切割銅帶形狀以到達(dá)所有GND引腳,然后完全焊接。

步驟11:連接Vcc引腳

需要連接Vcc,LCD電源LED電源的2個(gè)引腳。根據(jù)數(shù)據(jù)表,LCD電源可直接連接到開發(fā)板3.3 V引腳,但LED電源工作電壓略低于3.3 V.因此最好在中間添加一個(gè)SMD電阻,例如12歐姆電阻。

步驟12:連接LCD&開發(fā)板支持

使用磁帶連接LCD支持和開發(fā)板支持。兩個(gè)支持都應(yīng)保留約5毫米的間隙進(jìn)行折疊。

步驟13:連接SPI引腳

以下是連接摘要:

LCD ESP32

GND -》 GND

RST -》 GPIO 33

SCL -》 GPIO 18

DC -》 GPIO 27

CS -》 GPIO 5

SDI -》 GPIO 23

SDO -》 not connected

Vcc -》 3.3 V

LED+ -》 12 Ohm resistor -》 3.3 V

LED- -》 GND

步驟14:Flash程序

在GitHub下載源代碼:https://github.com/moononournation/esp32-nesemu

在源代碼文件夾下,運(yùn)行“make menuconfig”

選擇“Nofrendo ESP32特定配置”

選擇“要運(yùn)行的硬件” - 》“自定義硬件”

選擇“LCD類型” - 》“ST7789V LCD”

填充引腳設(shè)置:MISO - 》 -1,MOSI - 》 23,CLK - 》 18,CS - 》 5,DC - 》 27,RST - 》 33,背光 - 》 -1,IPS - 》 Y

退出并保存

運(yùn)行“make -j5 flash”

運(yùn)行“sh flashrom.sh PATH_TO_YOUR_ROM_FILE”

步驟15:I2C連接器

突破I2C引腳,ESP32默認(rèn)I2C引腳為:

Pin 1 (SCL) -》 GPIO 22

Pin 2 (SDA) -》 GPIO 21

Pin 3 (Vcc) -》 3.3 V (no 5 V power while powered by Lipo battery)

Pin 4 (GND) -》 GND

Ste第16頁:裝配第1部分

按照視頻步驟將所有部件折疊并擠壓到外殼中。

步驟17:原型I2C游戲手柄

I2C游戲手柄的程序非常簡單,只有15個(gè)代碼行。但是焊接后對(duì)ATtiny861進(jìn)行重新編程有點(diǎn)困難,所以最好先在面包板上對(duì)它進(jìn)行測試。

從GitHub下載,編譯和刷新程序:https://github.com/moononournation/attiny861_i2c _.。.

步驟18:構(gòu)建I2C游戲手柄

以下是連接摘要:

ATtiny861 Button

GND -》 All buttons one pin

Pin 20 (PA0) -》 Up button

Pin 19 (PA1) -》 Down button

Pin 18 (PA2) -》 Left button

Pin 17 (PA3) -》 Right button

Pin 14 (PA4) -》 Select button

Pin 13 (PA5) -》 Start button

Pin 12 (PA6) -》 A button

Pin 11 (PA7) -》 B button

Pin 6 (GND) -》 I2C male pin header pin 4

Pin 5 (Vcc) -》 I2C male pin header pin 3

Pin 3 (SCL) -》 I2C male pin header pin 1

Pin 1 (SDA) -》 I2C male pin header pin 2

步驟19:裝配第2部分

按照視頻步驟將封面和I2C游戲手柄安裝到主體上。

步驟20:可選:音頻突破引腳

ESP32開發(fā)板引腳25和26輸出模擬音頻信號(hào),很容易突破這兩個(gè)引腳和電源引腳( 3.3 V和GND)在頂部。然后你可以修補(bǔ)一個(gè)耳機(jī)插上它。或者你甚至可以添加一個(gè)帶揚(yáng)聲器的音頻放大器模塊來大聲播放。

步驟21:下一步是什么?

NES模擬器不是ESP32唯一有趣的事情。例如。你可以用它構(gòu)建一個(gè)微型python控制臺(tái)。您需要更改的唯一組件是從I2C游戲手柄到I2C鍵盤。我認(rèn)為使用ATtiny88控制器制作它并不困難。您可以按我的推特查看狀態(tài)。

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

    關(guān)注

    3

    文章

    128

    瀏覽量

    19534
  • 模擬器
    +關(guān)注

    關(guān)注

    2

    文章

    855

    瀏覽量

    42978
  • ESP32
    +關(guān)注

    關(guān)注

    17

    文章

    936

    瀏覽量

    16666
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    esp32esp8266代碼共用嗎

    本文將介紹ESP32ESP8266兩款流行的微控制器在代碼共用性方面的可能性與差異性。 一、引言 隨著物聯(lián)網(wǎng)技術(shù)的飛速發(fā)展,越來越多的智能設(shè)備開始進(jìn)入我們的生活。其中,ESP32
    的頭像 發(fā)表于 08-19 18:23 ?610次閱讀

    esp32用什么軟件編程

    ESP32是一款由樂鑫(Espressif)推出的低功耗、高性能的Wi-Fi和藍(lán)牙雙模微控制器,廣泛應(yīng)用于物聯(lián)網(wǎng)、智能家居、智能穿戴等領(lǐng)域。要對(duì)ESP32進(jìn)行編程,需要選擇合適的編程軟件和開發(fā)環(huán)境
    的頭像 發(fā)表于 08-19 17:24 ?888次閱讀

    火語言RPA如何建立控制臺(tái)應(yīng)用

    火語言通過軟件自帶的豐富的顆粒組件庫,開發(fā)出滿足各種需求的應(yīng)用?;鹫Z言中的應(yīng)用分為兩種常見類型,界面應(yīng)用以及控制臺(tái)應(yīng)用。 下面詳細(xì)介紹下控制臺(tái)應(yīng)用的定義以及構(gòu)建方法。 控制臺(tái)應(yīng)用 控制臺(tái)
    的頭像 發(fā)表于 08-15 09:24 ?242次閱讀
    火語言RPA如何建立<b class='flag-5'>控制臺(tái)</b>應(yīng)用

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

    明確宣布允許PC模擬器應(yīng)用提供游戲下載功能。此前,雖然游戲機(jī)模擬器應(yīng)用已被允許包含游戲下載選項(xiàng),但PC
    的頭像 發(fā)表于 08-02 16:37 ?199次閱讀

    請問ESP32C3如何重定向控制臺(tái)串口?

    軟件環(huán)境:esp-idf v4.4 硬件環(huán)境:esp32c3 問題描述:需要將控制臺(tái)輸出重定向到 UART1(RX: GPIO4,TX:GPIO5),UART0 用來做上下位機(jī)通信。 按照這個(gè)鏈接
    發(fā)表于 06-07 08:12

    RetroArch iOS模擬器現(xiàn)已發(fā)布,可暢玩多平臺(tái)游戲

    作為第一款公開獲得tvOS認(rèn)證的模擬器,RetroArch讓iPhone、iPad及Apple TV用戶能夠暢玩多種系統(tǒng)的游戲。同時(shí),該模擬器支持MFi手柄,方便用戶在大屏設(shè)備上進(jìn)行游戲
    的頭像 發(fā)表于 05-16 11:08 ?995次閱讀

    超酷!基于ESP32自制一個(gè)藍(lán)牙游戲手柄

    電路識(shí)別為游戲控制器。我還用兩個(gè) ESP32 測試了該電路,使用 ESP-NOW 關(guān)于它們之間的通信,結(jié)果也很成功。 如果你想知道還能用這個(gè)電路做什么,可以參考下面的幾個(gè)項(xiàng)目。 你可以
    發(fā)表于 05-06 16:59

    蘋果商店現(xiàn)已上架Delta游戲模擬器,支持多種經(jīng)典主機(jī)游戲

    Delta游戲模擬器由Riley Testut開發(fā),他就是曾在十幾年前風(fēng)靡一時(shí)的開源GBA4iOS模擬器的創(chuàng)造者。遺憾的是,盡管GBA4iOS短暫輝煌,但它為Delta的誕生奠定了堅(jiān)實(shí)的基礎(chǔ)。
    的頭像 發(fā)表于 04-18 11:18 ?1085次閱讀

    Delta模擬器隨AltStore上線,蘋果解禁復(fù)古游戲模擬器

     4月9日消息,開發(fā)者Riley Testut在Mastodon平臺(tái)宣布已獲得蘋果公司確認(rèn),其研發(fā)的游戲模擬器應(yīng)用程序Delta將隨AltStore一同正式上線。
    的頭像 發(fā)表于 04-09 11:08 ?803次閱讀

    基于ESP32NES游戲 https://oshwhub.com/micespring/esp32-nese

    ESP32
    蛋黃酥
    發(fā)布于 :2024年02月15日 13:45:16

    如何使用ESP32和STC51芯片制作一個(gè)小小光立方呢?

    分享一個(gè)用ESP32和STC51芯片,以及0805貼片燈珠,手工焊接制作的小小光立方。
    的頭像 發(fā)表于 01-09 15:37 ?1641次閱讀
    如何使用<b class='flag-5'>ESP32</b>和STC51芯片<b class='flag-5'>制作</b>一個(gè)小小光立方呢?

    開源 | 超容易復(fù)刻的多功能ESP32游戲機(jī),藍(lán)牙手柄+NES模擬器+Wi-Fi投屏…

    復(fù)刻(確信)。 1 當(dāng)前主要功能 目前已實(shí)現(xiàn)Raylib游戲、BLE手柄、NES模擬器、Wi-Fi投屏、音樂播放等多個(gè)功能,可通
    的頭像 發(fā)表于 12-08 13:55 ?2157次閱讀
    開源 | 超容易復(fù)刻的多功能<b class='flag-5'>ESP32</b><b class='flag-5'>游戲</b>機(jī),藍(lán)牙手柄+<b class='flag-5'>NES</b><b class='flag-5'>模擬器</b>+Wi-Fi投屏…

    python獲取控制臺(tái)輸出內(nèi)容

    在Python中,獲取控制臺(tái)輸出內(nèi)容可以使用多種方法。無論是在開發(fā)過程中調(diào)試程序,還是在分析程序執(zhí)行結(jié)果時(shí),獲取控制臺(tái)輸出內(nèi)容都是非常有用的。 最常見的方法就是使用print函數(shù)來輸出內(nèi)容到控制臺(tái)
    的頭像 發(fā)表于 11-22 14:08 ?1913次閱讀

    5個(gè)步驟,讓你的核桃派玩回當(dāng)年火爆全球NES游戲

    1.準(zhǔn)備好你的nes游戲nes游戲鏈接:鏈接:百度網(wǎng)盤 請輸入提取碼 提取碼:k6sh 2.安裝nes
    發(fā)表于 11-22 10:50

    【開源項(xiàng)目】用ESP32復(fù)刻N(yùn)okia 1110,可運(yùn)行NES游戲,播放音樂,也能連Wi-Fi!

    簡介:該項(xiàng)目是使用ESP32模塊復(fù)刻的Nokia1110,可運(yùn)行NES游戲模擬器和LVGL,主要功能包括彩屏顯示,ADC按鍵,Type-C充電,USB轉(zhuǎn)串口,DAC音樂播放,SD卡讀
    發(fā)表于 11-16 14:52