Indholdsfortegnelse:

Arduino Basic PC med VGA -output: 5 trin (med billeder)
Arduino Basic PC med VGA -output: 5 trin (med billeder)

Video: Arduino Basic PC med VGA -output: 5 trin (med billeder)

Video: Arduino Basic PC med VGA -output: 5 trin (med billeder)
Video: Как установить драйвера на Windows 11 2024, Juli
Anonim
Image
Image
Arduino Basic PC med VGA -output
Arduino Basic PC med VGA -output
Arduino Basic PC med VGA -output
Arduino Basic PC med VGA -output

I min tidligere Instructable har jeg vist, hvordan man bygger en retro 8-bit computer, der kører BASIC, ved hjælp af to Arduino og med et udgangssignal i B&W til en tv-skærm.

Nu vil jeg vise, hvordan man bygger den samme computer, men med udgangssignalet i farve til en VGA -skærm!

Du kan indtaste variablerne og BASIC -programmet med et PS2 -tastatur, og det genererer output til en VGA -skærm med en tekstopløsning på 24 kolonner x 10 rækker med 5x6 pixels tegn i fire farver. Du kan se det i aktion i den øverste video. Programmet kan derefter gemmes på Arduino EEPROM, og du kan stadig styre I/O -benene direkte via Basic dedikerede kommandoer.

Dette projekt kan også bruges til at udskrive enkle tekstbeskeder på skærmen, som vist på det tredje billede på denne side.

Den ene Arduino er "mesteren", og den kører Tiny Basic Plus, en C -implementering af Tiny Basic, med fokus på understøttelse af Arduino. Det styrer også et PS2 -tastatur. Outputtet sendes derefter via den serielle port til den anden Arduino, som genererer VGA -output takket være VGAx -biblioteket.

Ideen om at bruge en eller flere Arduino til at oprette en gammel pc med en dialekt med Basic er ikke ny, men så vidt jeg ved, har ingen af dem et farveoutput. I nogle projekter, der var tilgængelige på nettet, brugte folk LCD -skærme, mens i andre, for at tillade brug af skærme, har det været brugt TVout -biblioteket, som er S / H. Desuden skal der i mange af disse projekter bygges særlige skjolde eller hardware. Her mangler du kun to Arduino, få modstande og stikket til PS2 -tastaturet og skærmen, som vist på ovenstående billeder.

Trin 1: Byg Arduino Master med TinyBasic og PS2 -tastatur

TinyBasic Plus og VGAx -biblioteket fungerer til Arduino IDE 1.6.4.

Download den først fra Arduino officielle webside. Hvis du har en nyere version på din pc, er det bedst at downloade den i.zip -format og pakke dem ud på din pc. Klik på dette link for at downloade Windows -versionen.

Du skal derefter bruge PS2 -tastaturbiblioteket. Du kan finde den nederst på denne side. Bare tryk den ud og kopier PS2-tastaturmappen i: arduino-1.6.4 / libraries

Endelig på denne side skal du downloade filen: TinyBasicPlus_PS2_VGAx.ino, komprimere og uploade den på din Arduino.

Dette er en variation af standard TinyBasic Plus, hvor jeg har tilføjet PS2 -biblioteket og ændret koden for at acceptere variablerne fra den.

Flere detaljer om TiniBasic Plus og selvstudier kan findes på dette link.

Hvis der ikke er problemer og kompatibilitetsproblemer, kører Tiny Basic allerede. Du kan teste det gennem en seriel skærm i din pc. Til dette formål bruger jeg PuTTY, men mange andre programmer er tilgængelige.

Du skal indstille den korrekte COM -port (den er den samme, du finder i Arduino IDE) og baudrate = 4800

Her kan du allerede teste et eller andet program i Basic bare ved at skrive dem med dit pc -tastatur (NB senere viser jeg, hvordan du forbinder PS2 -tastaturet direkte til Arduino).

Prøv for eksempel:

10 UDSKRIFT "Hej, verden!"

20 GOTO 10

LØB

Du kan derefter stoppe den uendelige loop bare ved at skrive ctrl+c.

Bemærk, at denne kombination ikke fungerer for PS2 -tastaturet.

I det næste trin vil jeg vise, hvordan du forbinder PS2 -tastaturet til Arduino.

Trin 2: Tilslut PS2 -tastaturet til Master Arduino

Tilslut PS2 -tastaturet til Master Arduino
Tilslut PS2 -tastaturet til Master Arduino

Jeg fik alle informationer og bibliotek fra denne Instructable.

I det væsentlige skal du forbinde følgende fire stifter:

  • tastaturdata til Arduino pin 8,
  • tastatur IRQ (ur) til Arduino pin 3;
  • du skal også forbinde GND og +5V.

Jeg fik et gammelt PS2 hunstik fra et ødelagt pc -bundkort. Du kan simpelthen afsætte det med en varmepistol.

På billedet vist i dette trin kan du finde funktionen af de nødvendige ben på PS2 -stikket.

Trin 3: Upload VGAx -biblioteket og -koden på den anden Arduino og sæt alt sammen

Upload VGAx -biblioteket og -koden på den anden Arduino, og sæt alt sammen
Upload VGAx -biblioteket og -koden på den anden Arduino, og sæt alt sammen

Download først VGAx-PC.ino-kode nederst på denne side, og kopier den på din pc i et bibliotek med samme navn.

Download VGAx -biblioteket fra dette link på GitHub. Den nemmeste måde er at kopiere den i Arduino -undermappen med navnet "biblioteker", så den genkendes med det samme.

VIGTIGT: dette bibliotek fungerer til Arduno IDE 1.6.4, men det er ikke fuldt ud kompatibelt med ældre eller nyere versioner.

Upload VGAx-PC.ino i dit andet Arduino-kort (jeg testede det til Nano-versionen, men Uno burde også fungere).

En advarsel om lav tilgængelig hukommelse er normal. Hvis du ikke har andre fejl, er alt ok, og du kan straks begynde at bygge din egen 8-bit pc.

Til dette har du brug for:

  • to Arduino Uno Rev. 3 eller to Arduino Nano 3.x (ATmega328)
  • et DSUB15 -stik, dvs. et VGA -hunstik eller et VGA -kabel, der skal skæres.
  • modstande: 2 x 68 Ohm og 2 x 470 Ohm
  • et PS2 hunstik
  • ledninger
  • fakultativ: et brødbræt eller et stribebræt

Skematikken er rapporteret øverst i dette trin. Et eksempel på en færdig "konsol" vises i det indledende trin.

Det samme skema med en højere opløsning rapporteres i en komprimeret fil i bunden af dette trin.

Trin 4: Valgfrit: Brug af et printkort

Valgfrit: Brug af et printkort
Valgfrit: Brug af et printkort
Valgfrit: Brug af et printkort
Valgfrit: Brug af et printkort
Valgfrit: Brug af et printkort
Valgfrit: Brug af et printkort
Valgfrit: Brug af et printkort
Valgfrit: Brug af et printkort

Du kan også bygge denne grundlæggende VGA -pc ved hjælp af et lille printkort. Du kan hente inspiration fra billederne i dette trin, eller du kan endda printe dit eget bord.

Jeg brugte to kvindelige header strips med 15 huller til video output Arduino, mens jeg for master brugte to strips med doble huller. På denne måde kan jeg bruge de eksterne til at indsætte kontakterne til andre projektkomponenter, der kan drives direkte med Basic -kode. Jeg tilføjede også i midten til resterende strimler, den ene tilsluttet 5 V og den anden til GND.

Trin 5: Afsluttende kommentarer og anerkendelser

Min vigtigste viden går til Sandro Maffiodo aka Smaffer, skaberen af det fantastiske VGAx -bibliotek.

Mange tak også til forfatterne af TinyBasic Plus:

  • Tiny Basic 68k - Gordon Brandly
  • Arduino Basic / Tiny Basic C - Michael Field
  • Tiny Basic Plus - Scott Lawrence

Tak også til "djsadeepa", forfatteren af Instructable til tilslutning af PS2 -tastaturet.

Til alle de mennesker, der er interesseret i dette projekt: Hvis du har problemer, tøv ikke med at stille forslag i kommentarerne.

Hvis du lykkes, kan du også skrive en kommentar eller dele et billede af den enhed, du bygger.

Anbefalede: