Съдържание:
- Стъпка 1: Списък на материалите
- Стъпка 2: Качване на библиотека и скица
- Стъпка 3: Свързване на частите: VGA конектор
- Стъпка 4: Свързване на частите: потенциометрите и бутона
- Стъпка 5: Заключение и признания
Видео: ESP8266 VGA понг: 5 стъпки (със снимки)
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:52
В тази инструкция ще ви покажа как да създадете репродукция на класическата игра Pong за VGA монитор, използвайки ESP8266 и няколко други компонента.
Тази игра е станала възможна от библиотеката EspVGAx, публикувана наскоро в GitHub от Sandro Maffiodo (известен още като Smaffer) и, доколкото знам, това е първата игра, която я използва.
Библиотеката реализира разделителна способност от 512 x 480 пиксела, съхранена в рамков буфер вътре в RAM, което изисква 30720 байта. Резолюцията е огромна в сравнение с тези на Arduino TVout или VGAx (съответно 128 x 96 и 120 x 60 пиксела). Надявам се, че тази игра вдъхновява други програмисти да разработват или възпроизвеждат по -сложни игри.
Стъпка 1: Списък на материалите
Библиотеката EspVGAx изисква ESP8266 с всички GPIO изложени, като ESP-12E, NodeMCU-12E платка или всяка друга платка, която излага GPIO5 (D1), GPIO4 (D2) и GPIO13 (D7)
По -специално използвах:
- ESP8266 NodeMCU-12E (връзка тук)
- съединител DSUB15 (т.е. VGA женски конектор)
- резистор от 330 ома
- друг резистор (около 1 до 3 kOhm)
- два 10 kOhm потенциометра
- бутон (н.о.)
- два диода (като 1N4007s)
- макет
- проводници
Взех конектора DSUB15 от стара VGA PC платка. Като алтернатива можете също да отрежете стар VGA кабел и да свържете проводниците директно към платката.
Стъпка 2: Качване на библиотека и скица
Има различни методи за програмиране и ESP8266; Използвах Arduino IDE, за да напиша Pong и да кача кода.
Моля, обърнете внимание, че библиотеката EspVGAx работи за Arduino IDE 1.8.1. Ако имате други версии, най -добре е да изтеглите.zip файловете и да ги декомпресирате в специална папка. Версията на Windows е тук. Версии за други ОС са тук.
След това трябва да изтеглите библиотеката EspVGAx от страницата на GithHub тук (директна връзка за zip версията тук) и да я декомпресирате в библиотеките на папки в софтуера Arduino.
NB Има малка грешка във файла espvgax_draw.h. За да го коригирате, просто сменете реда 17:
while (x0%32) {с while (x0%32 && sw> 32) {
Накрая можете да изтеглите ESP8266_Pong.rar в края на тази стъпка.
След като бъде разархивиран, за да го качите на вашия ESP8266, трябва да конфигурирате Arduino IDE.
Ако никога не сте го правили, можете да намерите всички необходими инструкции в тази инструкция, по -специално в Стъпка 2.
След като всичко е конфигурирано, настройките на ESP8266 трябва да изглеждат като тези, показани на снимката по -горе.
Ако можете да качите кода без грешки, можете да започнете да сглобявате частите.
Стъпка 3: Свързване на частите: VGA конектор
Препоръчвам първо да свържете VGA порта, както е показано на снимките по -горе. Моля, обърнете внимание, че като свържете трите пина Червено, Зелено и Синьо заедно (т.е. пинове 1, 2 и 3 на конектора DSUB15), ще имате черно -бяло изображение на екрана си. Можете също така да имате различни цветови комбинации. Вижте подробностите на страницата на библиотеката GitHub.
Освен това трябва да свържете резистор от 330 ома между RGB щифтовете и D7 (GPIO13) на ESP8266. Това ми даде малко сивкаво изображение на монитора, така че след няколко опита реших изобщо да го премахна.
В този момент, ако всичко работи правилно, вече можете да свържете монитора и да видите началния екран на играта, с банера „ESP8266 VGAx Pong“.
Стъпка 4: Свързване на частите: потенциометрите и бутона
Бутонът трябва да бъде свързан между 3.3V и щифт D0 (GPIO16). Свържете също резистора от 1 до 3 kOhm от D0 към земята. Това избягва D0 да бъде в неопределено състояние, когато бутонът е отворен.
Връзката на двата потенциометра е по -малко тривиална, всъщност ESP8266 има само аналогов входен порт A0 (ADC0)! Номерът е да свържете двата изхода pot.s към същия порт и да ги „мултиплексирате“. Мултиплексирането просто означава, че ще включите потенциометър, прочетете го, след това ще го изключите и преминете към втория.
Ако искате да научите повече за този метод, можете да прочетете този Instructable.
Свържете една крайност на потенциометъра към GND, другата крайност към D5 за потенциометъра на левия плейър и D6 за десния плейър.
Всеки централен щифт на потенциометъра трябва да бъде свързан към отделен диод, а другите страни на диодите трябва да бъдат свързани към A0 (ADC0), като полярността е показана на горната снимка.
Стъпка 5: Заключение и признания
Благодарен съм на Сандро Мафиодо - SMAFFER - за библиотеката ESPVGAX. Тази игра не би била възможна без нея.
Надявам се, че този Instructable ще бъде вдъхновение за други програмисти да правят репродукции на по -сложни класически аркадни игри с ESP8266, който има много по -малко ограничения от Arduino.
Накрая написах тази инструкция, за да я изпратя на конкурса за играчки: ако ви харесва или я възпроизвеждате, моля, отделете малко време, за да я гласувате!
Препоръчано:
Най -добрата машина за бирен понг - PongMate CyberCannon Mark III: 6 стъпки (със снимки)
Най -добрата машина за бирен понг - PongMate CyberCannon Mark III: Въведение PongMate CyberCannon Mark III е най -новата и най -модерна технология за бирен понг, която някога е била продавана на обществеността. С новия CyberCannon всеки може да стане най -страховитият играч на масата за бирен понг. Как е това п
Направете своя собствена 1D игра в понг: 5 стъпки (със снимки)
Направете своя собствена 1D понг игра: За този проект ще ви покажа как комбинирах MDF плоча с бутони, светодиоди и Arduino Nano, за да създам 1D Pong игра, която е наистина забавна за игра. По пътя ще ви покажа как да създадете електронна схема и как се различават
Тенис на понг с LED матрица, Arduino и джойстици: 5 стъпки (със снимки)
Тенис на понг с LED матрица, Arduino и джойстици: Този проект е предназначен както за начинаещи, така и за опитни калайджии. На основно ниво може да се направи с макет, проводници и да се залепи за парче скрап (използвах дърво) с Blu-Tack и без запояване. На по -напред обаче
Понг играе гъвкав екран на риза: 8 стъпки (със снимки)
Понг играе гъвкав екран на риза: Това е моят костюм за Хелоуин за 2013 г. Той е в процес на работа от около година и е отнел доста часове за създаване. Екранът е 14 на 15 пиксела, така че, доста ниска разделителна способност, но все пак може да направи някои забавни неща. Той е физически летящ
Понг на Arduino от Пиърсън и Джейс: 5 стъпки (със снимки)
Понг на Arduino от Пиърсън и Джейс: Това е инструкция как да играете понг на arduino. Разказва се в пет прости стъпки. Надяваме се да се насладите на нашата игра