Cuprins:
- Pasul 1: plăci ESP32, instalare Arduino IDE și configurare bibliotecă VGA
- Pasul 2: Încărcarea codului de bază Tiny pe ESP32
- Pasul 3: Conectarea portului VGA
- Pasul 4: Conectarea portului PS2
- Pasul 5: Programarea cu Tiny Basic
- Pasul 6: Conectarea unui card de memorie SD
- Pasul 7: Mulțumiri
Video: PC de bază ESP32 cu ieșire VGA: 7 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:44
În acest Instructable voi arăta cum să construiesc un PC simplu în stil retro realizat cu un singur ESP32 și câteva alte componente.
Acest computer rulează Tiny Basic, un dialect simplificat al BASIC și generează ieșirea pentru un monitor VGA.
Rezoluția este de 640x350 pixeli, permițând 80x25 caractere asc în 8 culori. O tastatură PS2 poate fi conectată și utilizată pentru a scrie codul, permițând până la 14059 octeți de memorie.
Pinii ESP32 I / O pot fi direcționați direct prin comenzi BASIC dedicate.
Acest proiect este posibil datorită minunatei biblioteci ESP32 VGA scrisă de Fabrizio Di Vittorio. Vezi aici pentru mai multe detalii.
Pasul 1: plăci ESP32, instalare Arduino IDE și configurare bibliotecă VGA
Mai întâi de toate, trebuie să achiziționați un ESP32 revision 1 sau superior. Există multe versiuni disponibile, dar vă recomand să alegeți una cu mai mulți pini. Folosesc această versiune, dar cred că și alții sunt bine. De exemplu, în descrierea acestui videoclip, puteți găsi alte trei modele care sunt sub 5 dolari.
După ce obțineți placa, trebuie să continuați cu următorii trei sub-pași:
- Instalați ultimul IDE Arduino
- Configurați ESP32 în IDE și
- Instalați biblioteca VGA
Sub-pasul 1.
Există diferite metode pentru a programa ESP32, dar aici trebuie să utilizați cel mai recent IDE Arduino (folosesc versiunea 1.8.9). Pentru ao instala, puteți accesa pagina IDE Arduino și urmați instrucțiunile.
Sub-pasul 2
Odată ce operația anterioară a fost finalizată, trebuie să vă configurați ESP32 în Arduino IDE. Acest lucru nu este banal, deoarece ESP32 nu este (încă?) Nativ în el. Puteți urma acest tutorial sau pașii următori.
1) deschideți ID-ul Arduino
2) deschideți fereastra de preferințe, Fișier / Preferință, alternativ apăsați „Ctrl + virgulă”
3) accesați „Adresele URL suplimentare ale administratorului de bord”, copiați și lipiți următorul text:
https://dl.espressif.com/dl/package_esp32_index.json
și faceți clic pe butonul OK.
4) Open board manager. Mergeți la Instrumente / Board / Boards Manager …
5) Căutați ESP32 și apăsați butonul de instalare pentru „ESP32 by Espressif Systems“:
6) În acest moment, când vă conectați pentru prima dată la ESP32, ar trebui să alegeți modelul potrivit în lista lungă a plăcilor ESP32 disponibile (consultați imaginea din acest pas). În caz de îndoieli cu privire la model, alegeți-l pe cel generic, adică primul. Merge pentru mine.
7) sistemul ar trebui să aleagă și portul USB corect și viteza de încărcare (în mod normal, 921600). În acest moment ar trebui stabilită conexiunea dintre computerul dvs. și placa ESP32.
Sub-pasul 3
În cele din urmă trebuie să instalați biblioteca VGA FabGL. [actualizare iulie 2019] Aveți nevoie și o versiune veche a acestui libray: puteți descărca fișierul zip src.old.zip în partea de jos a acestui pas, decomprimați și redenumiți folderul ca „src” în
Dosarul „… / arduino-1.8.9 / biblioteci”.
După ce ați făcut aceste operații, puteți trece la pasul următor și puteți încărca TinyBasic modificat urmând pasul următor.
Pasul 2: Încărcarea codului de bază Tiny pe ESP32
Descărcați ESP32_TinyBasicPlus_PS2_FabLab_beta.ino în partea de jos a acestui pas.
Deschideți-l cu IDE-ul Arduino și încărcați-l în ESP32 brut.
Dacă nu aveți mesaje de eroare, codul ar trebui să ruleze deja.
Pas facultativ: dacă doriți să testați TinyBasic înainte de a conecta tastatura VGA și PS2, o puteți face deja cu un client SSH și telnet. Eu folosesc PuTTY.
Puteți vedea cum arată în imagini în acest pas.
Pasul 3: Conectarea portului VGA
Aveți nevoie de următoarele părți:
- un conector DSUB15, adică un conector VGA mamă sau un cablu VGA care trebuie tăiat.
- trei rezistențe de 270 Ohm.
Conectați pinul ESP32 GPIO 2, 15 și 21 la VGA roșu, respectiv verde și albastru, prin intermediul rezistențelor de 270 Ohm.
Conectați VGA Hsync și Vsync la pinii GP32 ESP32 și respectiv 4.
Conectați pinii 5, 6, 7, 8 și 10 ai conectorilor DSUB15 la ESP32 GND.
Pentru definiția pinului conectorului VGA DSUB15, consultați imaginea din acest pas. NB, aceasta este partea de lipit a conectorului feminin.
Pasul 4: Conectarea portului PS2
Aveți nevoie de un conector de sex feminin pentru tastatură PS2.
Puteți obține una de pe o placă de bază pentru PC veche, pur și simplu o vindeți cu un pistol de căldură. În imaginea prezentată în acest pas, puteți găsi funcția pinilor necesari ai conectorului PS2.
Conexiunea este:
- Date de la tastatură la pinul 32 ESPIO GPIO
- Tastatură IRQ (ceas) la ESP32 GPIO pin 33
- De asemenea, trebuie să conectați pinul de 5V și cel GND.
Pasul 5: Programarea cu Tiny Basic
În acest moment, dacă puteți conecta monitorul VGA și tastatura PS2 și ESP32 la sursa de alimentare.
Imaginea prezentată aici ar trebui să apară pe monitor. Acum puteți juca puțin cu comenzile Tiny Basic.
Încercați, de exemplu, Bună ziua, Word! buclă infinită:
10 tipărește "Bună ziua, lume!"
20 merge la 10
alerga
Puteți schimba în patru culori diferite apăsând butonul esc și opriți bucla cu ctrl + c
Rețineți că, dacă faceți o greșeală de scriere, nu o puteți anula! Sau mai bine, puteți anula, dar corectarea greșelilor de tip nu este recunoscută. Trebuie să rescrieți întreaga linie de comandă.
Acum puteți încerca ceva mai complex, cum ar fi să conduceți clipirea unui LED cu un program de bază. Conectați, de exemplu, anodul LED (piciorul lung) la pinul ESP32 GPIO 13 și catodul la GND.
Apoi scrie:
nou
10 i = 1000
20 tipar i
30 întârziere i
40 dwrite 13, mare
50 întârziere i
60 dwrite 13, scăzut
70 i = i * 9/10
80 dacă i> 0 merge la 20
90 sfârșit
alerga
Puteți vedea rezultatul în videoclipul încorporat în acest instructabil.
Pasul 6: Conectarea unui card de memorie SD
Un PC de epocă, indiferent cât de mic și slab este, nu poate fi complet dacă nu puteți stoca programele dvs. permanent.
În acest pas voi arăta cum să conectez un card de memorie SD, dar din păcate, pentru moment (sper doar pentru moment), stocarea programelor nu funcționează!
BTW, am folosit un adaptor microSD la card SD și am lipit 8 pini în formă de L așa cum se arată în imagine în acest pas.
Am conectat apoi pinii adaptorilor SD la ESP32 conform celei de-a doua imagini, adică am conectat pinii ESP32 GPIO 5, 18, 19, 23 la SC, ceas, MISO, respectiv MOSO, plus 3.3V și două GND.
De asemenea, am urmat instrucțiunile și exemplele găsite aici și, cu codul de exemplu SD_test.ino, pot scrie pe cardul meu microSD de 2 GB.
Astfel, dacă cineva găsește o soluție, vă rugăm să mă informați cât mai curând posibil la e-mailul meu [email protected] și voi completa acest instructabil.
Pasul 7: Mulțumiri
Doresc să-mi exprim tancurile către Fabrizio Di Vittorio pentru biblioteca sa minunată ESP32 VGA. Pentru mai multe detalii, exemple și … Space Invaders, vizitați site-ul său aici.
mulțumiri și autorilor Tiny Basic:
- Mike Field
- Scott Lawrence
- Brian O'Dell
În cele din urmă, dacă vă place acest proiect, vă rugăm să scrieți un comentariu sau să împărtășiți o imagine a dispozitivului pe care îl construiți … și, mai presus de toate, votați-l în cadrul concursului Arduino!
Recomandat:
Obțineți ieșire HDMI de pe Rock64 folosind Armbian: 15 pași
Obțineți ieșire HDMI din Rock64 folosind Armbian: probabil că sunteți aici după ce Google a căutat „Rock64 fără ieșire HDMI” te-a îndreptat în această direcție. Sau te-ai putea întreba cum să folosești ecranul de 16 x 2 care a venit cu o achiziție care părea să fie adevărată: „Pentru 10 $ - 20 $, un Sing
Convertor de ieșire de 5V cu eficiență ridicată DIY: 7 pași
DIY Convertor de ieșire de 5V cu eficiență ridicată !: Am dorit o modalitate eficientă de a reduce tensiunile mai mari de la pachetele LiPo (și alte surse) la 5V pentru proiecte electronice. În trecut, am folosit module generice Buck de la eBay, dar controlul de calitate îndoielnic și lipsa numelui capacității electrolitice
PC de bază Arduino cu ieșire VGA: 5 pași (cu imagini)
PC de bază Arduino cu ieșire VGA: În Instructable-ul meu anterior am arătat cum să construiesc un computer retro pe 8 biți care rulează BASIC, prin intermediul a două Arduino și cu un semnal de ieșire în B & W pentru un ecran TV. Acum voi arăta cum să construiți același computer, dar cu semnalul de ieșire în
PC de bază Arduino cu ieșire TV: 5 pași (cu imagini)
PC de bază Arduino cu ieșire TV: În acest Instructables voi arăta cum să construiți un computer retro pe 8 biți care rulează BASIC, prin intermediul a două Arduino și a altor câteva componente. Puteți introduce variabilele și programul BASIC cu o tastatură PS2, iar ieșirea este afișată pe un monitor cu
Tutorial de bază foarte de bază: 6 pași
Tutorial Batch foarte de bază: dacă știți deja elementele esențiale ale lotului, NU este necesar să citiți acest instructable, continuați cu Tutorialul de bază nu atât de simplu. NOTĂ! ghilimele (dacă vedeți t