Բովանդակություն:

ESP8266 VGA պոնգ. 5 քայլ (նկարներով)
ESP8266 VGA պոնգ. 5 քայլ (նկարներով)

Video: ESP8266 VGA պոնգ. 5 քայլ (նկարներով)

Video: ESP8266 VGA պոնգ. 5 քայլ (նկարներով)
Video: Mining Dogecoin Menggunakan VGA Withdraw Otomatis Ke Indodax 2024, Հուլիսի
Anonim
Image
Image
Նյութերի ցանկ
Նյութերի ցանկ

Այս Instructables- ում ես ցույց կտամ, թե ինչպես կարելի է կառուցել դասական խաղ Pong- ի վերարտադրություն VGA մոնիտորի համար ՝ օգտագործելով ESP8266 և մի քանի այլ բաղադրիչ:

Այս խաղը հնարավոր է դարձել EspVGAx գրադարանի միջոցով, որը վերջերս հրապարակվել է GitHub- ում ՝ Սանդրո Մաֆիոդոյի (հայտնի է նաև Սմաֆֆեր) կողմից և, որքանով տեղյակ եմ, սա առաջին խաղն է, որն օգտագործում է այն:

Գրադարանը իրականացնում է 512 x 480 պիքսել թույլատրելիություն, որը պահվում է RAM- ի ներսում գտնվող framebuffer- ում, որը պահանջում է 30720 բայթ: Բանաձևը հսկայական է Arduino TVout- ի կամ VGAx- ի համեմատ (համապատասխանաբար ՝ 128 x 96 և 120 x 60 պիքսել): Հուսով եմ, որ այս խաղը ոգեշնչում է այլ ծրագրավորողներին զարգացնել կամ վերարտադրել ավելի բարդ խաղեր:

Քայլ 1: Նյութերի ցանկ

EspVGAx գրադարանը պահանջում է ESP8266 ՝ բոլոր GPIO- ով ցուցադրված, ինչպես ESP-12E, NodeMCU-12E տախտակ կամ ցանկացած տախտակ, որը ցուցադրում է GPIO5 (D1), GPIO4 (D2) և GPIO13 (D7)

Մասնավորապես, ես օգտագործել եմ.

  • an ESP8266 NodeMCU-12E (հղումն այստեղ)
  • DSUB15 միակցիչ (այսինքն ՝ VGA կին միակցիչ)
  • 330 Օմ դիմադրություն
  • մեկ այլ դիմադրություն (մոտ 1 -ից 3 կՕմ)
  • երկու 10 կՕմ պոտենցիոմետր
  • սեղմիչ կոճակ (ոչ)
  • երկու դիոդ (օրինակ ՝ 1N4007s)
  • մի տախտակ
  • լարերը

Ես DSUB15 միակցիչը ստացա հին VGA համակարգչի տախտակից: Այլապես, կարող եք նաև կտրել հին VGA մալուխը և լարերը միացնել անմիջապես տախտակին:

Քայլ 2. Գրադարան և էսքիզների վերբեռնում

Գրադարան և էսքիզների վերբեռնում
Գրադարան և էսքիզների վերբեռնում

Կան ծրագրավորման և ESP8266 տարբեր մեթոդներ; Ես օգտագործել եմ Arduino IDE- ն ՝ պոնգ գրելու և ծածկագիրը վերբեռնելու համար:

Խնդրում ենք նկատի ունենալ, որ EspVGAx գրադարանը աշխատում է Arduino IDE 1.8.1 -ի համար: Եթե ունեք այլ տարբերակներ, ապա ամենալավն այն է, որ ներբեռնեք.zip ֆայլերը և հանեք այն հատուկ թղթապանակում: Windows- ի տարբերակը այստեղ է: Այլ OS- ի տարբերակները այստեղ են:

Դրանից հետո դուք պետք է ներբեռնեք EspVGAx գրադարանը GithHub էջից այստեղ (այստեղ ՝ zip տարբերակի ուղիղ հղումը) և ապակոմպեդացրեք Arduino ծրագրաշարի թղթապանակների գրադարաններում:

Նշում espvgax_draw.h ֆայլում մի փոքր սխալ կա: Այն շտկելու համար պարզապես փոխարինեք 17 -րդ տողը.

while (x0%32) {with while (x0%32 && sw> 32) {

Վերջապես, այս քայլի վերջում կարող եք բեռնել ESP8266_Pong.rar:

Ձեր ապակողպումից դուրս գալուց հետո այն ESP8266- ում վերբեռնելու համար անհրաժեշտ է կարգավորել Arduino IDE- ն:

Եթե դուք դա երբեք չեք արել, կարող եք գտնել բոլոր անհրաժեշտ հրահանգները այս Հրահանգների վրա, մասնավորապես ՝ Քայլ 2 -ում:

Երբ ամեն ինչ կազմաձևվի, ESP8266- ի կարգավորումները պետք է նմանվեն վերևում պատկերվածին:

Եթե կարող եք վերբեռնել ծածկագիրը առանց սխալների, կարող եք սկսել հավաքել մասերը:

Քայլ 3: Մասերի միացում. VGA միակցիչ

Մասերի միացում. VGA միակցիչ
Մասերի միացում. VGA միակցիչ
Մասերի միացում. VGA միակցիչ
Մասերի միացում. VGA միակցիչ
Մասերի միացում. VGA միակցիչ
Մասերի միացում. VGA միակցիչ

Ես խորհուրդ եմ տալիս նախ միացնել VGA նավահանգիստը, ինչպես ցույց է տրված վերևի նկարներում: Խնդրում ենք նկատի ունենալ, որ կարմիր, կանաչ և կապույտ երեք կապերը իրար միացնելով (այսինքն ՝ DSUB15 միակցիչի 1, 2 և 3 կապերը), ձեր էկրանին կունենաք B&W պատկեր: Կարող եք նաև ունենալ տարբեր գույների համադրություն: Մանրամասները տես Գրադարանի GitHub էջում:

Բացի այդ, ESP8266- ի RGB կապերի և D7 (GPIO13) - ի միջև պետք է միացնել 330 Օմ դիմադրություն: Սա ինձ մի փոքր մոխրագույն պատկեր տվեց մոնիտորի վրա, ուստի մի քանի փորձից հետո որոշեցի ընդհանրապես վերացնել այն:

Այս պահին, եթե ամեն ինչ ճիշտ է աշխատում, արդեն կարող եք միացնել մոնիտորը և տեսնել խաղի սկզբնական էկրանը ՝ «ESP8266 VGAx Pong» պաստառով:

Քայլ 4. Մասերի միացում. Պոտենցիոմետրեր և կոճակ

Մասերի միացում. Պոտենցիոմետրեր և կոճակ
Մասերի միացում. Պոտենցիոմետրեր և կոճակ

Կոճակը պետք է միացված լինի 3.3V- ի և P0 D0- ի (GPIO16) միջև: Միացրեք նաև 1 -ից 3 կՕմ դիմադրությունը D0- ից գետնին: Սա խուսափում է, որ կոճակը բաց լինի, երբ D0- ը գտնվի անորոշ վիճակում:

Երկու պոտենցիոմետրերի միացումն ավելի քիչ աննշան է, քանի որ իրականում ESP8266- ն ունի միայն անալոգային մուտքային A0 պորտ (ADC0): Հնարքն այն է, որ pot.s- ի երկու ելքերը միացնեն նույն նավահանգստին և դրանք «մուլտիպլեքս» դարձնեն: Multiplexing- ը պարզապես նշանակում է, որ դուք միացնում եք պոտենցիոմետրը, կարդում այն, այնուհետև այն անջատում և անցնում երկրորդին:

Եթե ցանկանում եք ավելին իմանալ այս մեթոդի մասին, կարող եք կարդալ այս Instructable- ը:

Մի պոտենցիոմետր ծայրահեղությունը միացրեք GND- ին, մյուս ծայրահեղությունը D5- ին `ձախ նվագարկչի պոտենցիոմետրին և D6` աջ նվագարկիչի համար:

Պոտենցիոմետրերի յուրաքանչյուր կենտրոնական փին պետք է միանա առանձին դիոդին, իսկ դիոդների մյուս կողմերը պետք է միացված լինեն A0- ին (ADC0) ՝ վերևում պատկերված բևեռականությամբ:

Քայլ 5. Եզրակացություն և շնորհակալություն

Ես երախտապարտ եմ Սանդրո Մաֆիոդոյին `SMAFFER- ին` ESPVGAX գրականության համար: Այս խաղը հնարավոր չէր լինի առանց դրա:

Հուսով եմ, որ այս Instructable- ը ոգեշնչում կլինի այլ ծրագրավորողների համար `կատարել ավելի բարդ դասական արկադային խաղերի վերարտադրություններ ESP8266- ով, որն ունի շատ ավելի քիչ սահմանափակումներ, քան Arduino- ն:

Ի վերջո, ես գրեցի այս Instructable- ը ՝ այն Խաղալիքների մրցույթին ներկայացնելու համար.

Խորհուրդ ենք տալիս: