Orodha ya maudhui:

ESP8266 VGA Pong: Hatua 5 (na Picha)
ESP8266 VGA Pong: Hatua 5 (na Picha)

Video: ESP8266 VGA Pong: Hatua 5 (na Picha)

Video: ESP8266 VGA Pong: Hatua 5 (na Picha)
Video: ESP8266 VGA Pong 2024, Julai
Anonim
Image
Image
Orodha ya Vifaa
Orodha ya Vifaa

Katika Maagizo haya nitaonyesha jinsi ya kujenga uzazi wa mchezo wa kawaida wa Pong kwa mfuatiliaji wa VGA, kwa kutumia ESP8266 na vifaa vingine vichache.

Mchezo huu umewezeshwa na maktaba ya EspVGAx iliyochapishwa hivi karibuni kwenye GitHub na Sandro Maffiodo (aka Smaffer) na, kwa kadiri ninavyojua, huu ni mchezo wa kwanza kuitumia.

Maktaba hutumia azimio la saizi 512 x 480, zilizohifadhiwa kwenye fremu ya fremu ndani ya RAM, ambayo inahitaji baiti 30720. Azimio ni kubwa ikilinganishwa na Arduino TVout au zile za VGAx (saizi 128 x 96 na 120 x 60 mtawaliwa). Natumai mchezo huu unahamasisha waandaaji wengine kukuza au kuzaa michezo ngumu zaidi.

Hatua ya 1: Orodha ya Vifaa

Maktaba ya EspVGAx inahitaji ESP8266 na GPIO yote wazi, kama ESP-12E, bodi ya NodeMCU-12E au bodi yoyote inayofichua GPIO5 (D1), GPIO4 (D2) na GPIO13 (D7)

Hasa, nilitumia:

  • Node ya ESP8266MCU-12E (kiungo hapa)
  • kontakt DSUB15 (kontakt kike ya VGA)
  • Mpingaji wa Ohm 330
  • kipinzani kingine (karibu 1 hadi 3 kOhm)
  • mbili za 10 kOhm Potentiometers
  • Kitufe cha Kushinikiza (n.o.)
  • Diode mbili (kama vile 1N4007s)
  • ubao wa mkate
  • waya

Nilipata kiunganishi cha DSUB15 kutoka kwa bodi ya zamani ya VGA PC. Vinginevyo, unaweza pia kukata kebo ya zamani ya VGA na unganisha waya moja kwa moja kwenye ubao wa mkate.

Hatua ya 2: Maktaba na Mchoro Pakia

Maktaba na Mchoro Pakia
Maktaba na Mchoro Pakia

Kuna njia tofauti za kupanga na ESP8266; Nilitumia IDE ya Arduino kuandika Pong na kupakia nambari hiyo.

Tafadhali kumbuka kuwa maktaba ya EspVGAx inafanya kazi kwa Arduino IDE 1.8.1. Ikiwa una matoleo mengine, bora ni kupakua faili za.zip na kuifuta kwenye folda iliyojitolea. Toleo la Windows liko hapa. Matoleo ya OS zingine ziko hapa.

Baada ya hapo, unapaswa kupakua maktaba ya EspVGAx kutoka kwa ukurasa wa GithHub hapa (kiunga cha moja kwa moja kwa toleo la zip hapa), na uifute kwenye maktaba ya folda katika programu ya Arduino.

NB Kuna mdudu mdogo kwenye faili espvgax_draw.h. Ili kuirekebisha, badilisha mstari wa 17 tu:

wakati (x0% 32) {na wakati (x0% 32 && sw> 32) {

Mwishowe unaweza kushusha ESP8266_Pong.rar mwishoni mwa hatua hii.

Mara baada ya kufunguliwa, ili kuipakia kwenye ESP8266 yako, unahitaji kusanidi IDE ya Arduino.

Ikiwa haujawahi kuifanya, unaweza kupata maagizo yote yanayohitajika kwenye Maagizo haya, haswa katika Hatua ya 2.

Mara tu kila kitu kimesanidiwa, mipangilio ya ESP8266 inapaswa kuonekana kama ile iliyoonyeshwa kwenye picha hapo juu.

Ikiwa unaweza kupakia nambari bila makosa, unaweza kuanza kukusanya sehemu.

Hatua ya 3: Kuunganisha Sehemu: Kontakt VGA

Kuunganisha Sehemu: Kontakt VGA
Kuunganisha Sehemu: Kontakt VGA
Kuunganisha Sehemu: Kontakt VGA
Kuunganisha Sehemu: Kontakt VGA
Kuunganisha Sehemu: Kontakt VGA
Kuunganisha Sehemu: Kontakt VGA

Ninakubali kuunganisha kwanza bandari ya VGA, kama inavyoonekana kwenye picha hapo juu. Tafadhali kumbuka kuwa kwa kuunganisha pini tatu Nyekundu, Kijani na Bluu pamoja (yaani pini 1, 2 na 3 kwenye kiunganishi cha DSUB15), utakuwa na picha ya B&W kwenye skrini yako. Unaweza pia kuwa na mchanganyiko wa rangi tofauti. Tazama maelezo kwenye ukurasa wa Maktaba ya GitHub.

Kwa kuongezea, unapaswa kuunganisha kontena la 330 Ohm kati ya pini za RGB na D7 (GPIO13) kwenye ESP8266. Hii ilinipa picha ya kijivu kwenye mfuatiliaji wangu kwa hivyo, baada ya kujaribu mara kadhaa, niliamua kuiondoa kabisa.

Kwa wakati huu, ikiwa kila kitu kinafanya kazi vizuri, unaweza tayari kuunganisha mfuatiliaji na kuona skrini ya mwanzo ya mchezo, na bendera "ESP8266 VGAx Pong".

Hatua ya 4: Kuunganisha Sehemu: Potentiometers na Kitufe

Kuunganisha Sehemu: Potentiometers na Kitufe
Kuunganisha Sehemu: Potentiometers na Kitufe

Kitufe lazima kiunganishwe kati ya 3.3V na pini D0 (GPIO16). Unganisha pia kipinzani cha 1 hadi 3 kOhm kutoka D0 hadi chini. Hii inazuia D0 kuwa katika hali isiyojulikana wakati kitufe kimefunguliwa.

Uunganisho wa potentiometers mbili ni ndogo, kwani kwa kweli ESP8266 ina bandari tu ya kuingiza analog ya A0 (ADC0)! Ujanja ni kuunganisha matokeo yote ya sufuria kwenye bandari moja, na 'kuzidisha'. Multiplexing inamaanisha tu kuwa utawasha potentiometer, uisome, kisha uizime na uhamie ya pili.

Ikiwa unataka kujifunza zaidi juu ya njia hii, unaweza kusoma hii inayoweza kufundishwa.

Unganisha potentiometer moja uliokithiri kwa GND, nyingine uliokithiri kwa D5 kwa potentiometer ya mchezaji wa kushoto na D6 kwa mchezaji wa kulia mmoja.

Kila pini ya kati ya potentiometer lazima iunganishe na diode ya mtu binafsi, na pande zingine za diode lazima ziunganishwe na A0 (ADC0), na polarity iliyoonyeshwa kwenye picha hapo juu.

Hatua ya 5: Hitimisho na Shukrani

Ninamshukuru Sandro Maffiodo - SMAFFER - kwa maktaba ya ESPVGAX. Mchezo huu haungewezekana bila hiyo.

Natumahi hii inayoweza kufundishwa itakuwa msukumo kwa waandaaji wengine wa programu kufanya uzalishaji wa michezo ngumu zaidi ya kawaida na ESP8266, ambayo ina kiwango cha chini sana kuliko Arduino.

Mwishowe, niliandika hii Inayoweza kufundishwa kuipeleka kwa Mashindano ya Toys: ikiwa unapenda au kuzaa tena, tafadhali chukua muda kuipigia kura!

Ilipendekeza: