Talaan ng mga Nilalaman:
- Hakbang 1: Mga Board ng ESP32, Pag-install ng Arduino IDE at Pag-configure ng VGA Library
- Hakbang 2: Pag-upload ng Maliliit na Batayang Code sa ESP32
- Hakbang 3: Pagkonekta sa VGA Port
- Hakbang 4: Pagkonekta sa PS2 Port
- Hakbang 5: Programming Sa Maliliit na Pangunahin
- Hakbang 6: Pagkonekta ng isang SD Memory Card
- Hakbang 7: Mga Pagkilala
Video: Pangunahing PC ng ESP32 Sa Paglabas ng VGA: 7 Mga Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:13
Sa Instructable na ito ay ipapakita ko kung paano bumuo ng isang simpleng istilong retro na PC na tapos sa isang solong ESP32 at ilang iba pang mga bahagi.
Nagpapatakbo ang PC ng Tiny Basic, isang pinasimpektang dayalekto ng BASIC, at bumubuo ng output para sa isang VGA monitor.
Ang resolusyon ay 640x350 mga pixel, pinapayagan ang 80x25 asci na mga character sa 8 mga kulay. Ang isang PS2 keyboard ay maaaring konektado at magamit upang isulat ang code, na nagpapahintulot sa hanggang sa 14059 bytes ng memorya.
Ang mga ESP32 I / O na pin ay maaaring direktang hinimok ng nakatuon na mga pangunahing utos na BASIC.
Ang proyektong ito ay ginawang posible ng kamangha-manghang aklatan ng ESP32 VGA na isinulat ni Fabrizio Di Vittorio. Tingnan dito para sa karagdagang detalye.
Hakbang 1: Mga Board ng ESP32, Pag-install ng Arduino IDE at Pag-configure ng VGA Library
Una sa lahat kailangan mong bumili ng isang ESP32 na rebisyon 1 o mas mataas. Maraming magagamit na mga bersyon, ngunit inirerekumenda kong pumili ng isa na may maraming mga pin. Gumagamit ako ng bersyon na ito, ngunit sa palagay ko marami pang iba ay mabuti rin. Halimbawa, sa paglalarawan ng video na ito, mahahanap mo ang tatlong iba pang mga modelo na mas mababa sa 5 pera.
Kapag nakuha mo ang board, kailangan mong magpatuloy sa sumusunod na tatlong mga sub-hakbang:
- I-install ang huling Arduino IDE
- I-configure ang ESP32 sa IDE at
- I-install ang VGA library
Sub-hakbang 1.
Mayroong iba't ibang mga pamamaraan upang mai-program ang ESP32, ngunit narito kailangan mong gamitin ang pinakabagong Arduino IDE (Gumagamit ako ng bersyon 1.8.9). Upang mai-install ito, maaari kang pumunta sa pahina ng Arduino IDE at sundin ang tagubilin.
Sub-hakbang 2
Kapag tapos na ang nakaraang operasyon, kailangan mong i-configure ang iyong ESP32 sa loob ng Arduino IDE. Ito ay hindi gaanong mahalaga, dahil ang ESP32 ay hindi (pa?) Katutubo dito. Maaari mong sundin ang tutorial na ito, o ang mga sumusunod na hakbang.
1) buksan ang Arduino IDE
2) buksan ang window ng mga kagustuhan, File / Preferensya, kahalili pindutin ang "Ctrl + comma"
3) pumunta sa "Mga Karagdagang Mga URL ng Manager ng Board", kopyahin at i-paste ang sumusunod na teksto:
https://dl.espressif.com/dl/package_esp32_index.json
at i-click ang OK na pindutan.
4) Open boards manager. Pumunta sa Mga Tool / Board / Board Board…
5) Maghanap para sa ESP32 at pindutin ang pindutan ng pag-install para sa "ESP32 ng Espressif Systems":
6) Sa puntong ito, kapag kumonekta ka sa unang pagkakataon sa iyong ESP32, dapat mong piliin ang tamang modelo sa mahabang listahan ng mga magagamit na mga board ng ESP32 (tingnan ang larawan sa hakbang na ito). Sa kaso ng mga pag-aalinlangan tungkol sa modelo, piliin lamang ang generic, ibig sabihin, ang una. Gumagana sa akin.
7) dapat ding piliin ng system ang tamang USB port at ang Bilis ng Pag-upload (karaniwang 921600). Sa puntong ito ang koneksyon sa pagitan ng iyong PC at ng board ng ESP32 ay dapat na maitatag.
Sub-hakbang 3
Sa wakas kailangan mong i-install ang FabGL VGA library. [update July 2019] Kailangan mo at lumang bersyon ng libray na ito: maaari mong i-download ang zip file src.old.zip sa ilalim ng hakbang na ito, huwag i-compress at palitan ang pangalan ng folder bilang "src" sa iyong
"… / arduino-1.8.9 / mga aklatan" folder.
Kapag nagawa mo na ang mga operasyong ito, maaari kang pumunta sa susunod na hakbang at i-upload ang binagong TinyBasic na sumusunod sa susunod na hakbang.
Hakbang 2: Pag-upload ng Maliliit na Batayang Code sa ESP32
I-download ang ESP32_TinyBasicPlus_PS2_FabLab_beta.ino sa ilalim ng hakbang na ito.
Buksan ito gamit ang Arduino IDE at i-upload ito sa iyong hilaw na ESP32.
Kung wala kang mga mensahe ng error, dapat na tumatakbo ang code.
Hakbang sa facultative: kung nais mong subukan ang TinyBasic bago ikonekta ang VGA at PS2 keyboard, magagawa mo na ito sa isang SSH at telnet client. Gumagamit ako ng PuTTY.
Maaari mong makita kung paano ito nakikita sa mga larawan sa hakbang na ito.
Hakbang 3: Pagkonekta sa VGA Port
Kailangan mo ang mga sumusunod na bahagi:
- isang Konektor ng DSUB15, ibig sabihin ay isang konektor ng babaeng VGA o isang VGA cable na puputulin.
- tatlong 270 Ohm resistors.
Ikonekta ang ESP32 GPIO pin 2, 15 at 21 sa VGA Red, Green at Blue ayon sa pagkakabanggit, sa pamamagitan ng 270 Ohm resistors.
Ikonekta ang VGA Hsync at Vsync sa ESP32 GPIO pin 17 at 4 ayon sa pagkakabanggit.
Ikonekta ang mga konektor ng DSUB15 na 5, 6, 7, 8 at 10 sa ESP32 GND.
Para sa kahulugan ng pin ng konektor ng VGA DSUB15, tingnan ang larawan sa hakbang na ito. NB, ito ang bahagi ng paghihinang ng babaeng konektor.
Hakbang 4: Pagkonekta sa PS2 Port
Kailangan mo ng isang konektor ng babaeng PS2 keyboard.
Maaari kang makakuha ng isa mula sa isang lumang PC motherboard, i-unsold lamang ito sa isang heat gun. Sa larawang ipinakita sa hakbang na ito, mahahanap mo ang pagpapaandar ng kinakailangang mga pin ng konektor ng PS2.
Ang koneksyon ay:
- Data ng Keyboard sa ESP32 GPIO pin 32
- Keyboard IRQ (orasan) sa ESP32 GPIO pin 33
- Kailangan mo ring ikonekta ang 5V pin at ang GND.
Hakbang 5: Programming Sa Maliliit na Pangunahin
Sa puntong ito, kung maaari mong ikonekta ang monitor ng VGA at PS2 keyboard at ang ESP32 sa power supply.
Ang imahe na ipinapakita dito ay dapat na lumitaw sa monitor. Ngayon ay maaari kang maglaro nang kaunti sa mga maliliit na utos ng Batas.
Subukan, halimbawa, ang sapilitan Kumusta, Salita! walang katapusang loop:
10 print na "Kumusta, Mundo!"
20 goto 10
tumakbo
Maaari mong baguhin ang apat na magkakaibang mga kulay ng pagpindot sa pindutan ng esc, at ihinto ang loop gamit ang ctrl + c
Tandaan na kung gumawa ka ng isang typo, hindi mo ito makakansela! O mas mabuti, maaari mong kanselahin ngunit pagkatapos ay ang pagwawasto ng typo ay hindi makilala. Kailangan mong muling isulat ang buong linya ng utos.
Ngayon ay maaari mong subukan ang isang bagay na mas kumplikado, tulad ng pagmamaneho ng blinking ng isang LED na may pangunahing programa. Ikonekta, halimbawa, ang LED anode (ang mahabang binti) sa ESP32 GPIO pin 13, at ang cathode sa GND.
Pagkatapos ay isulat:
bago
10 i = 1000
20 print i
30 antala i
40 ibawas ang 13, mataas
50 pagkaantala i
60 ibawas ang 13, mababa
70 i = i * 9/10
80 kung ako> 0 goto 20
90 pagtatapos
tumakbo
Maaari mong makita ang resulta sa video na naka-embed sa Instructable na ito.
Hakbang 6: Pagkonekta ng isang SD Memory Card
Ang isang antigong PC, hindi mahalaga kung gaano kaunti at mahina, ay hindi kumpleto kung hindi mo maiimbak nang permanente ang iyong mga programa.
Sa hakbang na ito ipapakita ko kung paano ikonekta ang isang SD memory card, ngunit sa kasamaang palad, sa sandaling ito (inaasahan ko lamang para sa sandali), ang pag-iimbak ng mga programa ay hindi gagana!
Ang BTW, gumamit ako ng isang microSD sa SD card adapter at naghinang ako ng 8 mga hugis na L na pin tulad ng ipinakita sa larawan sa hakbang na ito.
Naikonekta ko pagkatapos ang mga pin ng adapter ng SD sa ESP32 ayon sa pangalawang larawan niya, ibig sabihin, nakakonekta ko ang mga pin ng ESP32 GPIO 5, 18, 19, 23 sa SC, orasan, MISO, MOSO ayon sa pagkakabanggit, kasama ang 3.3V at dalawang GND.
Sinundan ko rin ang mga tagubilin at halimbawang nahanap dito, at sa halimbawa ng code na SD_test.ino, maaari akong magsulat sa aking 2 GBytes microSD card.
Kaya kung may makahanap ng solusyon, mangyaring ipagbigay-alam sa akin sa aking email na [email protected] at makukumpleto ko ang Maituturo na ito.
Hakbang 7: Mga Pagkilala
Nais kong ipahayag ang aking mga tangke kay Fabrizio Di Vittorio para sa kanyang kahanga-hangang aklatan ng ESP32 VGA. Para sa higit pang mga detalye, halimbawa, at… Space Invaders, bisitahin ang kanyang site dito.
maraming salamat din sa mga may-akda ng Tiny Basic:
- Mike Field
- Scott Lawrence
- Brian O'Dell
Panghuli, kung gusto mo ang proyektong ito, mangyaring sumulat ng isang komento o magbahagi ng larawan ng aparato na iyong itinatayo… at, higit sa lahat, iboto ito sa paligsahan ng Arduino!
Inirerekumendang:
Mga Soldering Surface Mount Component - Mga Pangunahing Kaalaman sa Paghinang: 9 Mga Hakbang (na may Mga Larawan)
Mga Soldering Surface Mount Component | Mga Pangunahing Kaalaman sa Paghinang: Sa ngayon sa aking Serye ng Mga Pangunahing Kaalaman sa Soldering, tinalakay ko ang sapat na mga pangunahing kaalaman tungkol sa paghihinang para masimulan mong magsanay. Sa Ituturo na ito kung ano ang tatalakayin ko ay medyo mas advanced, ngunit ito ay ilan sa mga pangunahing kaalaman para sa paghihinang sa Surface Mount Compo
Pangunahing PC ng Arduino Sa Output ng VGA: 5 Mga Hakbang (na may Mga Larawan)
Basic na PC ng Arduino Gamit ang Output ng VGA: Sa aking nakaraang Instructable naipakita ko kung paano bumuo ng isang retro 8-bit na computer na nagpapatakbo ng BASIC, sa pamamagitan ng dalawang Arduino, at may isang output signal sa B & W para sa isang TV screen. Ipapakita ko ngayon kung paano bumuo ng parehong computer, ngunit may output signal sa
Movie Tracker - Sinusuportahan ng Raspberry Pi ang Tracker ng Paglabas ng Theatrical: 15 Hakbang (na may Mga Larawan)
Movie Tracker - Sinusuportahan ng Raspberry Pi ang Tracker ng Paglabas ng Dula: Ang Tracker ng Pelikula ay isang hugis ng clapperboard, Tagapagawasak ng Paglabas na pinalalakas ng Raspberry Pi. Gumagamit ito ng TMDb API upang mai-print ang poster, pamagat, petsa ng paglabas at pangkalahatang ideya ng mga paparating na pelikula sa iyong rehiyon, sa isang tinukoy na agwat ng oras (hal. Ang paglabas ng pelikula sa linggong ito) sa
Ang mekanikal na Remote na Paglabas para sa Ricoh GR II Digital: 5 Hakbang (na may Mga Larawan)
Ang mekanikal na Remote na Paglabas para sa Ricoh GR II Digital: Masisiyahan ako sa Ricoh`s GR 28mm lens mula noong ginamit ko ang aking unang GR1 20 taon na ang nakakaraan. Ngayon ay naabutan ako ng nakaraan at binili ang GR II digital. Para sa pag-hiking gusto ko ang pagiging simple, maliit at magaan na kagamitan - ang GR II ay perpekto para sa aking mga layunin ngunit ang accessory
10 Pangunahing Mga Proyekto ng Arduino para sa Mga Nagsisimula! Gumawa ng hindi bababa sa 15 Mga Proyekto Na May Isang solong Lupon !: 6 Mga Hakbang
10 Pangunahing Mga Proyekto ng Arduino para sa Mga Nagsisimula! Gumawa ng hindi bababa sa 15 Mga Proyekto Na May Isang solong Lupon !: Arduino Project & Lupon ng Tutorial; May kasamang 10 pangunahing mga proyekto ng Arduino. Lahat ng mga source code, ang Gerber file at marami pa. Walang SMD! Madaling paghihinang para sa lahat. Madaling naaalis at mapapalitan na mga bahagi. Maaari kang gumawa ng hindi bababa sa 15 mga proyekto sa isang solong bo