Мазмұны:

ESP32 VGA аркадтық ойындары мен джойстик: 6 қадам (суреттермен)
ESP32 VGA аркадтық ойындары мен джойстик: 6 қадам (суреттермен)

Бейне: ESP32 VGA аркадтық ойындары мен джойстик: 6 қадам (суреттермен)

Бейне: ESP32 VGA аркадтық ойындары мен джойстик: 6 қадам (суреттермен)
Бейне: Как подключить старый монитор к ардуино. VGA to ESP32 2024, Қараша
Anonim
Image
Image
ESP32 VGA аркадтық ойындары мен джойстик
ESP32 VGA аркадтық ойындары мен джойстик
ESP32 VGA аркадтық ойындары мен джойстик
ESP32 VGA аркадтық ойындары мен джойстик

Бұл нұсқаулықта мен VGA мониторының шығысымен ESP32 көмегімен төрт ойын аркадты - Tetris - Snake - Breakout - Bomber - қалай шығаруға болатынын көрсетемін.

Ажыратымдылық 320х200 пиксель, 8 түсте. Мен бұған дейін Arduino Uno нұсқасын жасадым (мұнда қараңыз), бірақ ажыратымдылығы 120 х 60 пиксель, 4 түсті, және Arduino жады толықтай дерлік болды. ESP32 -дің үлкен көрсеткіштерінің арқасында ажыратымдылық пен ойнату мүмкіндігі жоғары. Сонымен қатар, әлі де көп жады бар, сондықтан болашақта жаңа ойындарды қосу оңай болады.

Мен RS232 кабелі арқылы қарапайым джойстикті қосуды көрсетемін. Мен Commodore 64 -тің бір түйінін қолданамын.

Бұл жоба Fabrizio Di Vittorio жазған керемет ESP32 VGA кітапханасының арқасында мүмкін болды. Толық ақпарат алу үшін мына жерден қараңыз.

1 -қадам: ESP32 тақталары, Arduino IDE орнату және VGA кітапханасының конфигурациясы

ESP32 тақталары, Arduino IDE орнату және VGA кітапханасының конфигурациясы
ESP32 тақталары, Arduino IDE орнату және VGA кітапханасының конфигурациясы
ESP32 тақталары, Arduino IDE орнату және VGA кітапханасының конфигурациясы
ESP32 тақталары, Arduino IDE орнату және VGA кітапханасының конфигурациясы
ESP32 тақталары, Arduino IDE орнату және VGA кітапханасының конфигурациясы
ESP32 тақталары, Arduino IDE орнату және VGA кітапханасының конфигурациясы

Алдымен сізге ESP32 нұсқасының 1 немесе одан жоғары нұсқасын сатып алу қажет. Көптеген нұсқалар бар, бірақ мен көп түйреуішті таңдауға кеңес беремін, жақсырақ осы суреттегідей 38 істікшелі модель. Мен бұл нұсқаны қолданамын, бірақ менің ойымша, басқалары да жақсы. Ebay -де сіз бұл модельді 7 евродан төмен бағамен таба аласыз, оның ішінде жеткізілім.

Тақтаны алғаннан кейін келесі үш кіші қадамды орындау керек:

  1. Соңғы Arduino IDE орнатыңыз
  2. IDE ішіндегі ESP32 теңшеңіз
  3. VGA кітапханасын жүктеңіз және орнатыңыз

Ішкі қадам 1. ESP32 бағдарламалаудың әр түрлі әдістері бар, бірақ мұнда Arduino IDE қолдану қажет (мен айтпақшы 1.8.9 нұсқасын қолданамын). Оны орнату үшін Arduino IDE бетіне өтіп, нұсқауларды орындауға болады.

Қосымша 2-қадам. Алдыңғы операция аяқталғаннан кейін Arduino IDE ішінде ESP32 конфигурациясын жасау қажет. Бұл маңызды емес, өйткені ESP32 оның ішінде жоқ (әлі?). Сіз бұл оқулықты немесе келесі қадамдарды орындауға болады.

1) Arduino IDE ашыңыз

2) теңшелімдер терезесін ашыңыз, Файл/Параметр, немесе «Ctrl+үтір» пернесін басыңыз.

3) «Қосымша тақта менеджерінің URL мекенжайларына» өтіңіз, келесі мәтінді көшіріп, қойыңыз:

https://dl.espressif.com/dl/package_esp32_index.js…

және OK түймесін басыңыз.

4) Ашық тақта менеджері. Құралдар/тақта/тақта менеджеріне өтіңіз …

5) ESP32 іздеңіз және «ESP32 by Espressif Systems» үшін орнату түймесін басыңыз:

6) Осы сәтте, сіз ESP32 құрылғысын алғаш рет қосқанда, қол жетімді ESP32 тақталарының ұзақ тізімінен дұрыс модельді таңдауыңыз керек (осы қадамдағы суретті қараңыз). Егер модельге күмәндансаңыз, жалпыға ортақ, яғни біріншісін таңдаңыз. Бұл мен үшін жұмыс істейді.

7) жүйе сонымен қатар дұрыс USB (COM) порты мен жүктеу жылдамдығын (әдетте 921600) таңдауы керек. Бұл кезде компьютер мен ESP32 тақтасы арасындағы байланыс орнатылуы керек.

Қосымша 3. Ақырында FabGL VGA кітапханасын орнату қажет. Толық қысылған файлды жүктеу үшін мына жерді басыңыз. Оны ашыңыз және алынған қалтаны (FabGL-master) Arduino IDE кітапханалар қалтасына көшіріңіз, ол келесідей:

«… / arduino-1.8.12 / кітапханалар».

2 -қадам: «ESP32_VGA_Tetris_Snake_Breakout_Bomber_V1.0» жүктеу

Осы қадамның төменгі жағында ESP32_VGA_Tetris_Snake_Breakout_Bomber_V1.0.zip жүктеп алыңыз. Ашыңыз және Arduino IDE көмегімен ашыңыз, содан кейін оны ESP32 -ге жүктеңіз. Егер сізде қате туралы хабар болмаса, код жұмыс істеп тұруы керек және сізге VGA порты мен түймелерін (немесе джойстикті) қосу қажет.

3 -қадам: VGA портын қосу

VGA портын қосу
VGA портын қосу

Сізге келесі бөліктер қажет:

  • DSUB15 қосқышы, яғни VGA аналық қосқышы немесе кесілетін VGA кабелі.
  • үш 270 Ом резисторы.

270 Ом резисторлары арқылы ESP32 GPIO 2, 15 және 21 түйреуіштерін сәйкесінше VGA Қызыл, Жасыл және Көкке қосыңыз.

VGA Hsync және Vsync тиісінше ESP32 GPIO түйреуіштеріне 17 және 4 жалғаңыз.

DSUB15 коннекторларының 5, 6, 7, 8 және 10 түйреуіштерін ESP32 GND -ге қосыңыз.

VGA DSUB15 коннекторының түйреуішін анықтау үшін осы қадамдағы суретті қараңыз. NB, бұл әйел коннекторының дәнекерлеу жағы.

4 -қадам: Төрт түймені қосыңыз

Төрт түймені қосыңыз
Төрт түймені қосыңыз
Төрт түймені қосыңыз
Төрт түймені қосыңыз
Төрт түймені қосыңыз
Төрт түймені қосыңыз

Егер сізде C64 джойстигі болмаса, осы қадамнан кейін төрт түймені қосуға болады. Егер сізде джойстик болса, сіз бұл қадамды өткізіп жіберіп, келесі қадамға өтуге болады, бірақ бәрібір түймелерді де, джойстикті де қосуға болады (олар бәрібір «параллель»).

Бұл қадамдағы схема +5В -дан ESP32 берілген түйреуішке бір түймені (Әдетте ашық) қалай қосу керектігін көрсетеді.

Сондай -ақ, ESP берілген штырды GND -ге 1 -ден 5 кОм -ге дейінгі резистор арқылы қосу керек екенін ескеріңіз. Осылайша, түйме босатылған кезде (ашық) ESP түйреуіші нөлдік вольтке тең болады. Нақтырақ айтқанда, келесі ретпен төрт түймені қосу керек:

  • 12 түймесін оң жақ түймеге бекітіңіз
  • 25 -ші түйреуішті жоғарыға қарай басыңыз
  • 14 түймесін сол жақ түймеге бекітіңіз
  • 35 түймесін төмен түймеге бекітіңіз

5 -қадам: Джойстикті қосыңыз

Джойстикті қосыңыз
Джойстикті қосыңыз
Джойстикті қосыңыз
Джойстикті қосыңыз
Джойстикті қосыңыз
Джойстикті қосыңыз

C64 джойстикінде осы қадамның бірінші суретте көрсетілген түйін бар. Оны ESP32 -ге қосу үшін сізге екінші суретте көрсетілгендей 9 істікшелі DSUB еркек қосқышы (яғни розетка) қажет. Мен ескі электронды тақтадан ілулі түйреуіштерді алып тастадым. Сіз оны жою үшін жылу тапаншасын қолдана аласыз (бірақ оны сыртта жасаңыз!).

Бұл суреттердегі сандар ретімен түйреуіштерді қосу керек. Схема джойстиктің жағына қатысты екенін ескеріңіз, осылайша ол аналық штепсельдік жалғауды білдіреді. ESP32 -ге қосылатын розеткада (еркек) «айна» тәрізді түйреуіштер бар. Егер күмән туындаса, түйреуіш нөмірі үшінші суретте көрсетілгендей, әрқашан ерлер мен аналықтардың коннекторларында жазылатынын ұмытпаңыз.

Егер сіз ойындарды тек джойстикпен басқарғыңыз келсе, оның жалпы түйреуішін (9) ESP32 +5V, ал джойстиктің 1, 2, 3, 4 және 6 түйреуіштерін келесі тізім бойынша ESP берілген түйреуіштерге қосыңыз.

  • ESP штыры 12 оңға қарай (RS232 түйреуіш 4)
  • ESP түйрегіші 14 сол жақ түймеге дейін (RS232 түйреуіш 3)
  • ESP pin 35 төмен түсіру түймесіне дейін (RS232 PIN 2)
  • ESP PIN 25 -тен жоғары түймесі

Ескерту: ESP 12, 14, 25 және 35 түйреуіштері 1-5 кОм резистор арқылы GND -ге қосылуы керек. Осылайша, түйме босатылған кезде (ашық) ESP түйреуіші нөлдік вольтке тең болады.

NB2 джойстикінің ЖОҒАРЫ позициясы мен өрт түймесі ESP түйреуіші 25-ке қосылады.

Мен ДК тақтасындағы төрт түймені қостым, осылайша маған джойстик қажет емес (джойстикпен әлдеқайда күлкілі болса да). Тағы да RS232 түйреуіші +5 В қосылуы керек, ал джойстиктің түйреуіштері түймелерге параллель орналасқан.

6 -қадам: Қорытынды және мойындау

Қорытынды және мойындау
Қорытынды және мойындау

Егер бәрі дұрыс жұмыс істесе, VGA мониторын қосыңыз, сонда сіз ескі стильдегі ойыннан ләззат ала аласыз!

Сіз VGA кітапханасының мүмкіндіктерін тексеру үшін 640 x 350 пиксель рұқсаты бар Mandelbrot жиынтығын салуға болады.

Кодтың басқа ойындарды болашақта оңай қосуға болатындай етіп жазылғанын ескеріңіз (ESP32 -те көп орын бар!). Менің ойымша, бұл жобаға қызығушылық жеткілікті, мен мұны істей аламын …

Ақырында, мен Fabrizio Di Vittorio -ға өзінің керемет ESP32 VGA кітапханасы үшін танктерімді білдіргім келеді. Қосымша мәліметтер, мысалдар және… Space Invaders үшін оның сайтына кіріңіз.

Ұсынылған: