Мазмуну:
- 1 -кадам: Аппараттык даярдоо
- 2 -кадам: Программаны даярдоо
- 3 -кадам: 3D басып чыгаруу
- 4 -кадам: LCD колдоо
- 5 -кадам: PETG плитасын даярдоо
- 6 -кадам: ESP32 Dev тактасын оңдоо
- 7 -кадам: Lipo батареясын оңдоо
- 8 -кадам: Батареяны жана Иш тактасын туташтырыңыз
- 9 -кадам: Дисплей казыктарын даярдаңыз
- 10 -кадам: GND казыктарын туташтыруу
- 11 -кадам: Vcc казыктарын туташтыруу
- 12 -кадам: LCD & Dev Board колдоо туташуу
- 13 -кадам: SPI казыктарын туташтыруу
- 14 -кадам: Flash программасы
- 15 -кадам: I2C туташтыргычы
- 16 -кадам: Ассамблея 1 -бөлүк
- 17 -кадам: Прототип I2C Gamepad
- 18 -кадам: I2C Gamepad куруңуз
- 19 -кадам: Ассамблея 2 -бөлүк
- 20 -кадам: Кошумча: Audio Breakout Pins
- 21 -кадам: Кийинкиде эмне болот?
Video: ESP32 портативдүү оюн консолу: 21 кадам (сүрөттөр менен)
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:36
Бул көрсөтмөлөр NES эмулятору оюн консолун куруу үчүн ESP32 жана ATtiny861ди кантип колдонууну көрсөтөт.
1 -кадам: Аппараттык даярдоо
ESP32 Dev Board
Бул жолу мен TTGO T8 ESP32 dev тактасын колдонуп жатам. Бул тактада камтылган Lipo кубаттоо жана жөнгө салуу схемасы бар, ал кошумча компоненттерди азайтууга жардам берет.
Дисплей
Бул жолу мен 2,4 дюймдук IPS ЖК колдонуп жатам. Айдоочу контроллери ST7789V жана токтому 320 х 240. Бул чечим NES эмулятору 252 x 224 токтому үчүн эң ылайыктуу.
Батарея
Бул жолу мен 454261 Lipo батареясын колдонуп жатам. 4,5 мм - ESP32 дев тактасынын калыңдыгы, ал эми тактайдын туурасы - 61 мм.
Pin Header
I2C геймпадын туташтыруу үчүн 4 казык эркек тегерек пин баш жана 4 казык аял тегерек пин төбөсү.
PETG Plate
Дев тактасын жана Lipo батареясын колдоо үчүн кичинекей PET/PETG табакчасы, сиз аны продукттун таңгагынан оңой таба аласыз.
Көп максаттуу PCB
2 ПХБ талап кылынат, дисплейди колдоо үчүн калыңдыгы 0,4 мм, I2C геймпадында 1 1,2 мм коюу.
Баскычтар
5 багыт баскычы, тандоо жана баштоо үчүн 2 кичине баскыч жана А жана В баскычы үчүн 2.
I2C Gamepad Controller
Бул жолу мен ATtiny861 микроконтроллерин I2C геймпад контроллери катары колдоном.
Башкалар
1 SMD 12 Ом каршылыгы, ISP программисти (мис. TinyISP)
2 -кадам: Программаны даярдоо
Arduino IDE
Эгерде азырынча жок болсо, Arduino IDEди жүктөп алып, орнотуңуз:
ATTinyCore колдоосу
Азырынча ATTinyCore колдоосун кошуу үчүн орнотуу кадамдарын аткарыңыз:
ESP-IDF
Азырынча иштеп чыгуу чөйрөсүн орнотуу үчүн ESP-IDF баштоо көрсөтмөсүнө баш ийиңиз:
3 -кадам: 3D басып чыгаруу
Капты жүктөп алыңыз жана басып чыгарыңыз:
4 -кадам: LCD колдоо
ЖК колдоо үчүн 24 х 27 тешик 0,4 мм ПХБны кесип алыңыз. LCD FPCди бүктөө үчүн бир аз орун ээлөөнү унутпаңыз. Андан кийин, ПКБдагы ЖКны оңдоо үчүн эки жактуу скотчту колдонуңуз.
5 -кадам: PETG плитасын даярдоо
Dev board жана Lipo батарейкасын колдоо үчүн 62 мм x 69 мм PETG табагын кесип алыңыз.
6 -кадам: ESP32 Dev тактасын оңдоо
PETG пластинкасындагы дев тактасын оңдоо үчүн эки жактуу скотчту колдонуңуз.
7 -кадам: Lipo батареясын оңдоо
Lipo батареясын оңдоо үчүн эки тараптуу скотчту колдонуңуз.
8 -кадам: Батареяны жана Иш тактасын туташтырыңыз
9 -кадам: Дисплей казыктарын даярдаңыз
ЖК дисплейде ар кандай сатуучулардан турган көптөгөн вариациялар бар. Сураныч, туура маалымат барагын алыңыз жана кандайдыр бир патч жана туташуудан мурун аны окуп чыгыңыз.
Кээ бир казыктар сенсордук панель үчүн корголгон. Бул ЖКда сенсордук панель жок болгондуктан, ошол казыктарды кесип салыңыз, тынчсызданууну азайта алат.
10 -кадам: GND казыктарын туташтыруу
Көпчүлүк учурда, GNDге туташууну талап кылган бир нече казык бар. Ширетүү аракетин азайтуу үчүн, мен жез лентанын формасын кесип, бардык GND казыктарына жетип, андан кийин толугу менен ширеттим.
11 -кадам: Vcc казыктарын туташтыруу
Vcc, LCD кубаты жана LED кубаттуулугуна туташуу үчүн 2 казык керек. Маалымат баракчасына ылайык, ЖК кубаты түз приборго 3.3 В төөнөгүчкө туташа алат, бирок LED кубаты 3.3 Вдан бир аз төмөн иштейт, андыктан ортосуна SMD каршылыгын кошуу жакшы, мис. 12 Ом каршылыгы.
12 -кадам: LCD & Dev Board колдоо туташуу
скотчту LCD колдоосун жана дев тактасын колдоону бирге колдонуңуз. Эки колдоо тең бүктөө үчүн болжол менен 5 мм боштукту ээлеп коюшу керек.
13 -кадам: SPI казыктарын туташтыруу
Бул жерде туташуунун резюмеси:
LCD ESP32
GND -> GND RST -> GPIO 33 SCL -> GPIO 18 DC -> GPIO 27 CS -> GPIO 5 SDI -> GPIO 23 SDO -> туташкан эмес Vcc -> 3.3 V LED+ -> 12 Ом каршылыгы -> 3.3 V LED - -> GND
14 -кадам: Flash программасы
- GitHubдан баштапкы кодду жүктөп алыңыз:
- Булак кодунун папкасында "make menuconfig" иштетиңиз
- "Nofrendo ESP32ге тиешелүү конфигурацияны" тандаңыз
- "Иштетүү үчүн жабдыкты" -> "Ыңгайлаштырылган жабдыкты" тандаңыз
- "ЖК түрүн" тандоо -> "ST7789V ЖК"
- Толтуруучу пин орнотуулары: MISO -> -1, MOSI -> 23, CLK -> 18, CS -> 5, DC -> 27, RST -> 33, Backlight -> -1, IPS -> Y
- Чыгуу жана сактоо
- "Make -j5 flash" иштетүү
- "Sh flashrom.sh PATH_TO_YOUR_ROM_FILE" иштетүү
15 -кадам: I2C туташтыргычы
I2C казыктары, ESP32 демейки I2C казыктары:
Pin 1 (SCL) -> GPIO 22
Pin 2 (SDA) -> GPIO 21 Pin 3 (Vcc) -> 3.3 V (Lipo батарейкасы менен иштеген 5 В кубаты жок) Pin 4 (GND) -> GND
16 -кадам: Ассамблея 1 -бөлүк
Корпустун бардык бөлүктөрүн бүктөө жана кысуу үчүн видео кадамдарды аткарыңыз.
17 -кадам: Прототип I2C Gamepad
I2C Gamepad программасы өтө жөнөкөй, болгону 15 сап код. Бирок ширетүүдөн кийин ATtiny861ди кайра программалоо бир аз кыйын, андыктан аны адегенде нан тактасында сынап көрүү жакшы.
GitHubдан программаны жүктөп алыңыз, түзүңүз жана жаркылдатыңыз:
18 -кадам: I2C Gamepad куруңуз
Бул жерде кыскача байланыш:
ATtiny861 баскычы
GND -> Бардык баскычтар бир пин пин 20 (PA0) -> Жогору баскычы Pin 19 (PA1) -> Төмөнкү баскыч Pin 18 (PA2) -> Сол баскычы Pin 17 (PA3) -> Оң баскычы Pin 14 (PA4) -> Баскычты тандоо Pin 13 (PA5) -> Баштоо түйүнү Pin 12 (PA6) -> A баскычы Pin 11 (PA7) -> B баскычы Pin 6 (GND) -> I2C эркек пин башынын пини 4 Pin 5 (Vcc) -> I2C Эркек пин төөнөгүч пин 3 Пин 3 (SCL) -> I2C эркек пин төөнөгүч пин 1 Пин 1 (SDA) -> I2C эркек пин баш аткыч пин 2
19 -кадам: Ассамблея 2 -бөлүк
Капкакты жана I2C геймпадын негизги корпуска орнотуу үчүн видео кадамдарды аткарыңыз.
20 -кадам: Кошумча: Audio Breakout Pins
ESP32 dev board Pin 25 жана 26 аналогдук аудио сигналын чыгарууда, бул 2 казыкты, ошондой эле үстүндөгү электр казыктарын (3.3 V жана GND) ажыратуу абдан оңой. Андан кийин, аны туташтыруу үчүн наушникти жамап койсоңуз болот. Же ал тургай, аны катуу ойнотуу үчүн спикери бар аудио күчөткүч модулун кошсоңуз болот.
21 -кадам: Кийинкиде эмне болот?
NES эмулятору - бул ESP32 менен жасай турган жалгыз кызыктуу нерсе эмес. Мисалы аны менен микро питон консолун кура аласыз. Сиз өзгөртүү керек болгон жалгыз компонент I2C геймпадынан I2C клавиатурасына чейин. Менин оюмча, аны ATtiny88 контроллери менен жасоо анчалык деле кыйын эмес. Статусун көрүү үчүн менин твиттеримди ээрчип алсаңыз болот.
Сунушталууда:
DIY Raspberry Pi Zero портативдүү оюн консолу: 6 кадам (сүрөттөр менен)
DIY Raspberry Pi Zero портативдүү оюн консолу: Бул долбоордо мен сизге Raspberry Pi Zero, NiMH батареяларын, үйдө ашыкча агып кетүүдөн коргоо схемасын, арткы экранды жана аудио ампти кантип колдонгонуңузду көрсөтөм. ретро оюндары. Кел, баштайлы
1963 Pi Tourer оюн консолу: 9 кадам (сүрөттөр менен)
1963 Pi Tourer Оюн Консолу: Бул 1963 -жылкы Sky Tourer унаа радиосу, мен аны ыңгайлуу көчмө ретро оюн консолуна айландырдым. Анда Raspberry Pi 3 орнотулган, 6 аркада баскычы жана джойстик бар, бул Vintage RetroPie спрайттарын Picade контроллер тактасы аркылуу башкарат. The
Визитка/оюн консолу: ATtiny85 жана OLED экраны: 5 кадам (сүрөттөр менен)
Визитка/оюн консолу: ATtiny85 жана OLED экраны: Саламатсыздарбы! Бүгүн мен сизге кантип өзүңүздүн визиттик картаңызды/оюн консолун/I2C OLED дисплейи жана ATtiny85 микропроцессору бар экенин элестете алган нерсеңизди кантип курууну көрсөтөм. Бул Нускамада мен сизге кантип ПКБ жасоону айтып берем
Arduino чөнтөк оюн консолу + A -лабиринт - лабиринт оюну: 6 кадам (сүрөттөр менен)
Arduino чөнтөк оюн консолу + A -лабиринт - лабиринт оюну: Менин биринчи үйрөткүчүмө кош келиңиз! Мен бүгүн сиздер менен бөлүшкүсү келген долбоор бул Arduino лабиринт оюну, ал чөнтөк консолу Arduboy сыяктуу жөндөмдүү жана ушул сыяктуу Arduino негизделген консолу болуп калды. Аны менин (же сиздин) келечектеги оюндарыңыздын жардамы менен жаркырата аласыз
Үйдө жасалган оюн консолу- "NinTIMdo RP": 7 кадам (сүрөттөр менен)
Үйдө жасалган оюн консолу- "NinTIMdo RP": Көбүрөөк түшүндүрмөлөрү, бөлүктөр тизмеси жана файлдары бар веб-баракчага шилтеме http://timlindquist.meБул долбоор портативдүү оюн системасын түзүү болчу, ал портативдүү компьютер катары эки эсе көбөйтүлүшү мүмкүн. Максаты жакшы иштеген консолун түзүү болчу