Orodha ya maudhui:

PC ya Msingi ya ESP32 na Pato la VGA: Hatua 7
PC ya Msingi ya ESP32 na Pato la VGA: Hatua 7

Video: PC ya Msingi ya ESP32 na Pato la VGA: Hatua 7

Video: PC ya Msingi ya ESP32 na Pato la VGA: Hatua 7
Video: Управление 32 серводвигателями с PCA9685 и ESP32 - V4 2024, Julai
Anonim
Image
Image
Bodi za ESP32, Ufungaji wa IDE ya Arduino na Usanidi wa Maktaba ya VGA
Bodi za ESP32, Ufungaji wa IDE ya Arduino na Usanidi wa Maktaba ya VGA

Katika hii inayoweza kufundishwa nitaonyesha jinsi ya kujenga PC rahisi ya mtindo wa retro iliyofanywa na ESP32 moja na vifaa vingine vichache.

PC hii inaendesha Kidogo Msingi, lahaja rahisi ya BASIC, na hutoa pato kwa mfuatiliaji wa VGA.

Azimio ni saizi 640x350, ikiruhusu herufi 80x25 za asci katika rangi 8. Kibodi za PS2 zinaweza kushikamana na kutumiwa kuandika nambari, ikiruhusu hadi ka 14059 za kumbukumbu.

Pini za I / O za ESP32 zinaweza kuongozwa moja kwa moja na amri za BASIC zilizojitolea.

Mradi huu umewezeshwa na maktaba ya kushangaza ya ESP32 VGA iliyoandikwa na Fabrizio Di Vittorio. Tazama hapa kwa maelezo zaidi.

Hatua ya 1: Bodi za ESP32, Ufungaji wa Arduino IDE na Usanidi wa Maktaba ya VGA

Bodi za ESP32, Ufungaji wa IDE ya Arduino na Usanidi wa Maktaba ya VGA
Bodi za ESP32, Ufungaji wa IDE ya Arduino na Usanidi wa Maktaba ya VGA
Bodi za ESP32, Ufungaji wa IDE ya Arduino na Usanidi wa Maktaba ya VGA
Bodi za ESP32, Ufungaji wa IDE ya Arduino na Usanidi wa Maktaba ya VGA

Kwanza kabisa unahitaji kununua marekebisho ya ESP32 1 au ya juu. Kuna matoleo mengi yanayopatikana, lakini ninapendekeza kuchagua moja na pini nyingi. Ninatumia toleo hili, lakini nadhani mengine mengi ni sawa pia. Kwa mfano, katika maelezo ya video hii, unaweza kupata mifano mingine mitatu ambayo iko chini ya pesa 5.

Mara tu unapopata bodi, unahitaji kuendelea na hatua tatu zifuatazo:

  1. Sakinisha IDE ya Arduino ya mwisho
  2. Sanidi ESP32 katika IDE na
  3. Sakinisha maktaba ya VGA

Hatua ndogo 1.

Kuna njia tofauti za kupanga ESP32, lakini hapa unahitaji kutumia Arduino IDE ya hivi karibuni (ninatumia toleo 1.8.9). Ili kuiweka, unaweza kwenda kwenye ukurasa wa Arduino IDE na ufuate maagizo.

Hatua ndogo 2

Mara baada ya operesheni ya awali kufanywa, unahitaji kusanidi ESP32 yako ndani ya Arduino IDE. Hii sio ya maana, kwani ESP32 sio (bado?) Asili ndani yake. Unaweza kufuata mafunzo haya, au hatua zifuatazo.

1) fungua Arduino IDE

2) fungua dirisha la upendeleo, Faili / Upendeleo, vinginevyo bonyeza "Ctrl + koma"

3) nenda kwenye "URL za Meneja wa Bodi za Ziada", nakili na ubandike maandishi yafuatayo:

https://dl.espressif.com/dl/package_esp32_index.json

na bonyeza kitufe cha OK.

4) Meneja wa bodi wazi. Nenda kwa Meneja wa Zana / Bodi / Bodi…

5) Tafuta ESP32 na bonyeza kitufe cha kusanikisha "ESP32 na Espressif Systems":

6) Wakati huu, unapo unganisha kwa mara ya kwanza ESP32 yako, unapaswa kuchagua mfano sahihi katika orodha ndefu ya bodi za ESP32 zilizopo (angalia picha katika hatua hii). Ikiwa kuna mashaka juu ya mfano, chagua tu generic, i.e.ya kwanza. Inafanya kazi kwangu.

7) mfumo unapaswa pia kuchagua bandari sahihi ya USB na Kasi ya Kupakia (kawaida 921600). Kwa wakati huu uhusiano kati ya PC yako na bodi ya ESP32 inapaswa kuanzishwa.

Hatua ndogo 3

Mwishowe lazima usakinishe maktaba ya FabGL VGA. [sasisha Julai 2019] Unahitaji na toleo la zamani la libray hii: unaweza kupakua faili ya zip src.old.zip chini ya hatua hii, uncompress na kubadilisha jina la folda kama "src" katika yako

"… / Arduino-1.8.9 / maktaba" folda.

Mara tu unapofanya shughuli hizi, unaweza kwenda hatua inayofuata na kupakia TinyBasic iliyobadilishwa kufuata hatua inayofuata.

Hatua ya 2: Kupakia Nambari Msingi ndogo kwa ESP32

Inapakia Nambari Msingi ndogo kwa ESP32
Inapakia Nambari Msingi ndogo kwa ESP32
Inapakia Nambari Msingi ndogo kwa ESP32
Inapakia Nambari Msingi ndogo kwa ESP32

Pakua ESP32_TinyBasicPlus_PS2_FabLab_beta.ino chini ya hatua hii.

Fungua na Arduino IDE na uipakie kwenye ESP32 yako mbichi.

Ikiwa huna ujumbe wa hitilafu, nambari hiyo inapaswa kuwa tayari inafanya kazi.

Hatua ya ustadi: ikiwa unataka kujaribu TinyBasic kabla ya kuunganisha kibodi ya VGA na PS2, unaweza tayari kuifanya na mteja wa SSH na telnet. Ninatumia PuTTY.

Unaweza kuona jinsi inavyoonekana kwenye picha kwenye hatua hii.

Hatua ya 3: Kuunganisha VGA Port

Kuunganisha Bandari ya VGA
Kuunganisha Bandari ya VGA

Unahitaji sehemu zifuatazo:

  • Kiunganishi cha DSUB15, i.e.kontakt wa kike wa VGA au kebo ya VGA kukatwa.
  • wapinzani watatu 270 Ohm.

Unganisha pini ya ESP32 GPIO 2, 15 na 21 kwa VGA Nyekundu, Kijani na Bluu mtawaliwa, kupitia wapinzani wa 270 Ohm.

Unganisha VGA Hsync na Vsync kwenye pini za ESP32 GPIO 17 na 4 mtawaliwa.

Unganisha viunganishi vya DSUB15 pini 5, 6, 7, 8 na 10 kwa ESP32 GND.

Kwa ufafanuzi wa pini ya kontakt VGA DSUB15, angalia picha katika hatua hii. NB, huu ndio upande wa kutengenezea wa kiunganishi cha kike.

Hatua ya 4: Kuunganisha Bandari ya PS2

Kuunganisha Bandari ya PS2
Kuunganisha Bandari ya PS2

Unahitaji kiunganishi cha kike cha kibodi cha PS2.

Unaweza kupata moja kutoka kwa ubao wa mama wa zamani wa PC, bila kuuuza kwa bunduki ya joto. Katika picha iliyoonyeshwa katika hatua hii, unaweza kupata kazi ya pini zinazohitajika za kiunganishi cha PS2.

Uunganisho ni:

  • Takwimu za kibodi kwenye ESP32 GPIO pin 32
  • Kinanda IRQ (saa) hadi ESP32 GPIO siri 33
  • Unahitaji pia kuunganisha pini 5V na GND moja.

Hatua ya 5: Kupanga na msingi mdogo

Kupanga na Msingi mdogo
Kupanga na Msingi mdogo
Kupanga na Msingi mdogo
Kupanga na Msingi mdogo

Kwa wakati huu, ikiwa unaweza kuunganisha ufuatiliaji wa VGA na kibodi cha PS2 na ESP32 kwa usambazaji wa umeme.

Picha iliyoonyeshwa hapa inapaswa kuonekana kwenye mfuatiliaji. Sasa unaweza kucheza kidogo na amri ndogo za Msingi.

Jaribu, kwa mfano, lazima Hello, Word! kitanzi kisicho na mwisho:

Chapisha 10 "Halo, Ulimwengu!"

20 picha 10

kukimbia

Unaweza kubadilisha rangi nne tofauti ukibonyeza kitufe cha esc, na usimamishe kitanzi na ctrl + c

Kumbuka kuwa ukifanya typo, huwezi kuifuta! Au bora, unaweza kughairi lakini basi urekebishaji wa typo hautambuliki. Unahitaji kuandika tena laini nzima ya amri.

Sasa unaweza kujaribu kitu ngumu zaidi, kama vile kuendesha mwangaza wa mwangaza wa LED na programu ya msingi. Unganisha, kwa mfano, anode ya LED (mguu mrefu) kwa ESP32 GPIO pin 13, na cathode kwa GND.

Kisha andika:

mpya

10 i = 1000

Magazeti 20 i

30 kuchelewa i

40 dwrite 13, juu

50 kuchelewa i

60 dwrite 13, chini

70 i = i * 9/10

80 ikiwa i> 0 picha 20

90 mwisho

kukimbia

Unaweza kuona matokeo kwenye video iliyowekwa ndani ya hii inayoweza kufundishwa.

Hatua ya 6: Kuunganisha Kadi ya Kumbukumbu ya SD

Kuunganisha Kadi ya Kumbukumbu ya SD
Kuunganisha Kadi ya Kumbukumbu ya SD
Kuunganisha Kadi ya Kumbukumbu ya SD
Kuunganisha Kadi ya Kumbukumbu ya SD

PC ya mavuno, haijalishi ni ndogo na dhaifu, haiwezi kuwa kamili ikiwa huwezi kuhifadhi programu zako kabisa.

Katika hatua hii nitaonyesha jinsi ya kuunganisha kadi ya kumbukumbu ya SD, lakini kwa bahati mbaya, kwa sasa (natumai kwa muda tu), uhifadhi wa mipango haifanyi kazi!

BTW, nilitumia adapta ya kadi ya SDSD na nikauza pini 8 zenye umbo la L kama inavyoonekana kwenye picha katika hatua hii.

Kisha nikaunganisha pini za adapta za SD kwenye ESP32 kulingana na picha yake ya pili, i.e. niliunganisha pini za ESP32 GPIO 5, 18, 19, 23 na SC, saa, MISO, MOSO mtawaliwa, pamoja na 3.3V na GND mbili.

Nilifuata pia maagizo na mifano iliyopatikana hapa, na nambari ya mfano SD_test.ino, ninaweza kuandika kwenye kadi yangu ya 2 GByte ya MicroSD.

Kwa hivyo ikiwa mtu yeyote atapata suluhisho, tafadhali nijulishe ASAP kwa barua pepe yangu [email protected] na nitakamilisha hii inayoweza kufundishwa.

Hatua ya 7: Shukrani

Shukrani
Shukrani

Ninataka kuelezea mizinga yangu kwa Fabrizio Di Vittorio kwa maktaba yake ya kushangaza ya ESP32 VGA. Kwa maelezo zaidi, mifano, na… Wavamizi wa Nafasi, tembelea tovuti yake hapa.

asante nyingi pia kwa waandishi wa Tiny Basic:

  • Uwanja wa Mike
  • Scott Lawrence
  • Brian O'Dell

Mwishowe, ikiwa unapenda mradi huu, tafadhali andika maoni au ushiriki picha ya kifaa unachojenga… na, juu ya yote, ipigie kura katika shindano la Arduino!

Ilipendekeza: