Innholdsfortegnelse:

ESP32 Basic PC med VGA -utgang: 7 trinn
ESP32 Basic PC med VGA -utgang: 7 trinn

Video: ESP32 Basic PC med VGA -utgang: 7 trinn

Video: ESP32 Basic PC med VGA -utgang: 7 trinn
Video: Управление 32 серводвигателями с PCA9685 и ESP32 - V4 2024, Juli
Anonim
Image
Image
ESP32 -kort, Arduino IDE -installasjon og VGA -bibliotekskonfigurasjon
ESP32 -kort, Arduino IDE -installasjon og VGA -bibliotekskonfigurasjon

I denne instruksen skal jeg vise hvordan du bygger en enkel PC i retrostil, utført med en enkelt ESP32 og få andre komponenter.

Denne PC -en kjører Tiny Basic, en forenklet BASIC -dialekt, og genererer utgang for en VGA -skjerm.

Oppløsningen er 640x350 piksler, og tillater 80x25 asci -tegn i 8 farger. Et PS2 -tastatur kan kobles til og brukes til å skrive koden, og gir opptil 14059 byte minne.

ESP32 I/O -pinnene kan drives direkte av dedikerte BASIC -kommandoer.

Dette prosjektet er muliggjort av det fantastiske ESP32 VGA -biblioteket skrevet av Fabrizio Di Vittorio. Se her for mer informasjon.

Trinn 1: ESP32 -kort, Arduino IDE -installasjon og VGA -bibliotekskonfigurasjon

ESP32 -kort, Arduino IDE -installasjon og VGA -bibliotekskonfigurasjon
ESP32 -kort, Arduino IDE -installasjon og VGA -bibliotekskonfigurasjon
ESP32 -kort, Arduino IDE -installasjon og VGA -bibliotekskonfigurasjon
ESP32 -kort, Arduino IDE -installasjon og VGA -bibliotekskonfigurasjon

Først må du kjøpe en ESP32 revisjon 1 eller nyere. Det er mange versjoner tilgjengelig, men jeg anbefaler å velge en med mange pinner. Jeg bruker denne versjonen, men jeg tror mange andre er fine også. I beskrivelsen av denne videoen kan du for eksempel finne tre andre modeller som er under 5 dollar.

Når du har fått brettet, må du fortsette med følgende tre deltrinn:

  1. Installer den siste Arduino IDE
  2. Konfigurer ESP32 i IDE og
  3. Installer VGA -biblioteket

Deltrinn 1.

Det er forskjellige metoder for å programmere ESP32, men her må du bruke den nyeste Arduino IDE (jeg bruker versjon 1.8.9). For å installere det, kan du gå til Arduino IDE -siden og følge instruksjonene.

Deltrinn 2

Når den forrige operasjonen er utført, må du konfigurere ESP32 i Arduino IDE. Dette er ikke trivielt, siden ESP32 ikke er (ennå?) Hjemmehørende i det. Du kan følge denne opplæringen eller trinnene nedenfor.

1) åpne Arduino IDE

2) åpne innstillingsvinduet, Fil/Preferanse, eller trykk "Ctrl+komma"

3) gå til "Ekstra Board Manager -nettadresser", kopier og lim inn følgende tekst:

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

og klikk på OK -knappen.

4) Leder for åpne styrer. Gå til Tools/Board/Boards Manager …

5) Søk etter ESP32 og trykk på installasjonsknappen for "ESP32 by Espressif Systems":

6) Når du kobler til ESP32 for første gang, bør du velge riktig modell i den lange listen over tilgjengelige ESP32 -kort (se bildet i dette trinnet). Hvis du er i tvil om modellen, er det bare å velge den generiske, dvs. den første. Det funker for meg.

7) Systemet bør også velge riktig USB -port og opplastingshastighet (normalt 921600). På dette tidspunktet bør forbindelsen mellom PC -en og ESP32 -kortet opprettes.

Deltrinn 3

Til slutt må du installere FabGL VGA -biblioteket. [oppdater juli 2019] Du trenger og en gammel versjon av denne biblioteket: du kan laste ned zip -filen src.old.zip nederst i dette trinnet, pakke ut og gi nytt navn til mappen som "src" i

"… / Arduino-1.8.9 / libraries" -mappen.

Når du har utført disse operasjonene, kan du gå til neste trinn og laste opp den endrede TinyBasic etter neste trinn.

Trinn 2: Last opp Tiny Basic Code til ESP32

Laster opp Tiny Basic Code til ESP32
Laster opp Tiny Basic Code til ESP32
Laster opp Tiny Basic Code til ESP32
Laster opp Tiny Basic Code til ESP32

Last ned ESP32_TinyBasicPlus_PS2_FabLab_beta.ino nederst i dette trinnet.

Åpne den med Arduino IDE og last den opp til din rå ESP32.

Hvis du ikke har noen feilmeldinger, skal koden allerede kjøre.

Fakultativt trinn: Hvis du vil teste TinyBasic før du kobler til VGA- og PS2 -tastaturet, kan du allerede gjøre det med en SSH- og telnet -klient. Jeg bruker PuTTY.

Du kan se hvordan det ser ut på bildene i dette trinnet.

Trinn 3: Koble til VGA -porten

Koble til VGA -porten
Koble til VGA -porten

Du trenger følgende deler:

  • en DSUB15 -kontakt, dvs. en VGA -hunkontakt eller en VGA -kabel som skal kuttes.
  • tre 270 Ohm motstander.

Koble ESP32 GPIO -pinne 2, 15 og 21 til henholdsvis VGA rød, grønn og blå gjennom 270 Ohm -motstandene.

Koble VGA Hsync og Vsync til ESP32 GPIO -pinnene 17 og 4.

Koble DSUB15 -kontaktpinnene 5, 6, 7, 8 og 10 til ESP32 GND.

For definisjon av VGA DSUB15 -kontaktstift, se bildet i dette trinnet. NB, dette er loddesiden av hunkontakten.

Trinn 4: Koble til PS2 -porten

Koble til PS2 -porten
Koble til PS2 -porten

Du trenger en kvinnelig PS2 -tastaturkontakt.

Du kan få et fra et gammelt PC -hovedkort, ganske enkelt usolgt det med en varmepistol. På bildet som vises i dette trinnet, kan du finne funksjonen til de nødvendige pinnene på PS2 -kontakten.

Tilkoblingen er:

  • Tastaturdata til ESP32 GPIO pin 32
  • Tastatur IRQ (klokke) til ESP32 GPIO pin 33
  • Du må også koble 5V -pinnen og GND -pinnen.

Trinn 5: Programmering med Tiny Basic

Programmering med Tiny Basic
Programmering med Tiny Basic
Programmering med Tiny Basic
Programmering med Tiny Basic

På dette tidspunktet, hvis du kan koble VGA -skjermen og PS2 -tastaturet og ESP32 til strømforsyningen.

Bildet som vises her skal vises på skjermen. Nå kan du spille litt med Tiny Basic -kommandoer.

Prøv for eksempel det obligatoriske Hello, Word! uendelig sløyfe:

10 trykk "Hei, verden!"

20 gå til 10

løpe

Du kan endre i fire forskjellige farger ved å trykke på esc -knappen, og stoppe sløyfen med ctrl+c

Vær oppmerksom på at hvis du skriver feil, kan du ikke avbryte den! Eller bedre, du kan avbryte, men da blir ikke skrivefeilkorrigeringen gjenkjent. Du må skrive om hele kommandolinjen.

Nå kan du prøve noe mer komplekst, for eksempel å kjøre blinkende en LED med et grunnleggende program. Koble for eksempel LED -anoden (det lange benet) til ESP32 GPIO pin 13, og katoden til GND.

Så skriv:

ny

10 i = 1000

20 trykk i

30 forsinkelse i

40 dwrite 13, høy

50 forsinkelse i

60 dwrite 13, lav

70 i = i*9/10

80 hvis jeg> 0 går til 20

90 ende

løpe

Du kan se resultatet i videoen som er innebygd i denne instruksjonsboken.

Trinn 6: Koble til et SD -minnekort

Koble til et SD -minnekort
Koble til et SD -minnekort
Koble til et SD -minnekort
Koble til et SD -minnekort

En vintage PC, uansett hvor liten og svak, kan ikke være komplett hvis du ikke kan lagre programmene dine permanent.

I dette trinnet vil jeg vise hvordan du kobler til et SD -minnekort, men dessverre, for øyeblikket (jeg håper bare for øyeblikket), fungerer ikke lagringen av programmer!

BTW, jeg brukte en microSD til SD-kortadapter, og jeg loddet 8 L-formede pinner som vist på bildet i dette trinnet.

Jeg koblet deretter SD -adapterpinnene til ESP32 i henhold til det andre bildet, dvs. jeg koblet ESP32 GPIO -pinnene 5, 18, 19, 23 til henholdsvis SC, klokke, MISO, MOSO, pluss 3,3V og to GND.

Jeg fulgte også instruksjonene og eksemplene som er funnet her, og med eksempelkoden SD_test.ino kan jeg skrive på mitt 2 GBytes microSD -kort.

Så hvis noen finner en løsning, vennligst informer meg så raskt som mulig til e -posten min [email protected], så fullfører jeg denne instruksen.

Trinn 7: Bekreftelser

Anerkjennelser
Anerkjennelser

Jeg ønsker å uttrykke tankene mine til Fabrizio Di Vittorio for hans fantastiske ESP32 VGA -bibliotek. For flere detaljer, eksempler og… Space Invaders, besøk hans nettsted her.

Tusen takk også til forfatterne av Tiny Basic:

  • Mike Field
  • Scott Lawrence
  • Brian O'Dell

Til slutt, hvis du liker dette prosjektet, kan du skrive en kommentar eller dele et bilde av enheten du bygger … og fremfor alt stemme på det i Arduino -konkurransen!

Anbefalt: