Innholdsfortegnelse:
- Trinn 1: Bygg Arduino Master med TinyBasic og PS2 -tastatur
- Trinn 2: Koble PS2 -tastaturet til Master Arduino
- Trinn 3: Last opp VGAx -biblioteket og koden på den andre Arduinoen og sett alt sammen
- Trinn 4: Valgfritt: Bruke en PCB
- Trinn 5: Sluttkommentarer og anerkjennelser
Video: Arduino Basic PC med VGA -utgang: 5 trinn (med bilder)
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:22
I min forrige Instructable har jeg vist hvordan jeg bygger en retro 8-biters datamaskin som kjører BASIC, ved hjelp av to Arduino, og med et utgangssignal i B&W for en TV-skjerm.
Nå skal jeg vise hvordan du bygger den samme datamaskinen, men med utgangssignalet i farger for en VGA -skjerm!
Du kan legge inn variablene og BASIC -programmet med et PS2 -tastatur, og det genererer utdata for en VGA -skjerm med en tekstoppløsning på 24 kolonner x 10 rader med 5x6 piksler tegn, i fire farger. Du kan se det i aksjon i den øvre videoen. Programmet kan deretter lagres på Arduino EEPROM, og du kan fortsatt styre I/O -pinnene direkte via grunnleggende dedikerte kommandoer.
Dette prosjektet kan også brukes til å skrive ut enkle tekstmeldinger på skjermen, som vist på det tredje bildet på denne siden.
En Arduino er "mesteren", og den kjører Tiny Basic Plus, en C -implementering av Tiny Basic, med fokus på støtte for Arduino. Det styrer også et PS2 -tastatur. Utgangen sendes deretter via den serielle porten til den andre Arduino som genererer VGA -utgangen takket være VGAx -biblioteket.
Ideen om å bruke en eller flere Arduino til å lage en gammel PC med en dialekt med Basic er ikke ny, men så vidt jeg vet har ingen av dem fargeutgang. I noen prosjekter som var tilgjengelige på nettet, brukte folk LCD -skjermer, mens i andre, for å tillate bruk av skjermer, har det blitt brukt TVout -biblioteket, som er S / H. Videre må det i mange av disse prosjektene bygges spesielle skjold eller maskinvare. Her trenger du bare to Arduino, få motstander og kontakten for PS2 -tastaturet og skjermen, som vist på bildene ovenfor.
Trinn 1: Bygg Arduino Master med TinyBasic og PS2 -tastatur
TinyBasic Plus og VGAx -biblioteket fungerer for Arduino IDE 1.6.4.
Last den først ned fra Arduino offisielle nettside. Hvis du har en nyere versjon på PC -en, er det best å laste den ned i.zip -format og pakke dem ut på PCen. Klikk på denne lenken for å laste ned Windows -versjonen.
Du trenger da PS2 -tastaturbiblioteket. Du finner den nederst på denne siden. Bare pakk den ut og kopier PS2-tastaturmappen i: arduino-1.6.4 / libraries
Til slutt, på denne siden, last ned filen: TinyBasicPlus_PS2_VGAx.ino, pakk ut og last den opp på Arduino.
Dette er en variant av standard TinyBasic Plus hvor jeg har lagt til PS2 -biblioteket og endret koden for å godta variablene fra den.
Flere detaljer om TiniBasic Plus og opplæringsprogrammer finner du på denne lenken.
Hvis det ikke er problemer og kompatibilitetsproblemer, kjører Tiny Basic allerede. Du kan teste den gjennom en seriell skjerm på PCen. Til dette formålet bruker jeg PuTTY, men mange andre programmer er tilgjengelige.
Du må angi riktig COM -port (den er den samme som du finner i Arduino IDE) og baud rate = 4800
Her kan du allerede teste noen programmer i Basic bare ved å skrive dem med PC -tastaturet (NB senere viser jeg hvordan du kobler PS2 -tastaturet direkte til Arduino).
Prøv for eksempel:
10 SKRIV UT "Hei, verden!"
20 GOTO 10
LØPE
Du kan deretter stoppe den uendelige løkken bare ved å skrive ctrl+c.
Vær oppmerksom på at denne kombinasjonen ikke fungerer for PS2 -tastaturet.
I neste trinn vil jeg vise hvordan du kobler PS2 -tastaturet til Arduino.
Trinn 2: Koble PS2 -tastaturet til Master Arduino
Jeg fikk all informasjon og bibliotek fra denne instruksjonsboken.
I hovedsak må du koble til følgende fire pinner:
- tastaturdata til Arduino pin 8,
- tastatur IRQ (klokke) til Arduino pin 3;
- du må også koble til GND og +5V.
Jeg fikk en gammel PS2 hunkontakt fra et ødelagt PC -hovedkort. Du kan ganske enkelt selge den med en varmepistol.
På bildet som vises i dette trinnet, kan du finne funksjonen til de nødvendige pinnene på PS2 -kontakten.
Trinn 3: Last opp VGAx -biblioteket og koden på den andre Arduinoen og sett alt sammen
Last ned først VGAx-PC.ino-koden nederst på denne siden, og kopier den på PCen i en katalog med samme navn.
Last ned VGAx -biblioteket fra denne lenken på GitHub. Den enkleste måten er å kopiere den i Arduino -undermappen som heter "biblioteker", for å bli gjenkjent umiddelbart.
VIKTIG: dette biblioteket fungerer for Arduno IDE 1.6.4, men det er ikke fullt kompatibelt med eldre eller nyere versjoner.
Last opp VGAx-PC.ino i ditt andre Arduino-kort (jeg testet den for Nano-versjonen, men Uno burde også fungere).
En advarsel for lite tilgjengelig minne er normalt. Hvis du ikke har andre feil, er alt ok, og du kan umiddelbart begynne å bygge din egen 8-biters PC.
For dette trenger du:
- to Arduino Uno Rev. 3 eller to Arduino Nano 3.x (ATmega328)
- en DSUB15 -kontakt, dvs. en VGA -hunkontakt eller en VGA -kabel som skal kuttes.
- motstander: 2 x 68 Ohm og 2 x 470 Ohm
- en PS2 hunkontakt
- ledninger
- fakultativ: et brødbrett eller et stripebrett
Skjematikken er rapportert øverst i dette trinnet. Et eksempel på en ferdig “konsoll” vises i det innledende trinnet.
Det samme skjemaet, med en høyere oppløsning, er rapportert i en komprimert fil nederst i dette trinnet.
Trinn 4: Valgfritt: Bruke en PCB
Du kan også bygge denne grunnleggende VGA -PC -en ved hjelp av en liten PCB. Du kan hente inspirasjon fra bildene i dette trinnet, eller du kan til og med skrive ut ditt eget brett.
Jeg brukte to hunnhodestrimler med 15 hull for videoutgangen Arduino, mens for masteren brukte jeg to strimler med doble hull. På denne måten kan jeg bruke de eksterne til å sette inn kontaktene til andre prosjektkomponenter, som kan drives direkte med grunnleggende kode. Jeg la også i midten til rester av strimler, den ene koblet til 5 V og den andre for GND.
Trinn 5: Sluttkommentarer og anerkjennelser
Min viktigste kunnskap går til Sandro Maffiodo alias Smaffer, skaperen av det fantastiske VGAx -biblioteket.
Tusen takk også til forfatterne av TinyBasic Plus:
- Tiny Basic 68k - Gordon Brandly
- Arduino Basic / Tiny Basic C - Michael Field
- Tiny Basic Plus - Scott Lawrence
Takk også til "djsadeepa", forfatteren av Instructable for tilkoblingen av PS2 -tastaturet.
Til alle som er interessert i dette prosjektet: Hvis du har problemer, ikke nøl med å be om forslag i kommentarene.
Hvis du lykkes, kan du også skrive en kommentar eller dele et bilde av enheten du bygger.
Anbefalt:
Ekstern VGA / GPU for bærbare datamaskiner som bruker EXP GDC Beast: 15 trinn (med bilder)
Ekstern VGA / GPU for bærbare datamaskiner som bruker EXP GDC Beast: Hei gutter .. Dette er min første opplæring om instrukser. Engelsk er ikke mitt morsmål, så tilgi mine grammatiske feil. Jeg lagde dette basert på min erfaring med å oppgradere min bærbare. Og jeg kommer ikke til å kjede deg med lang introduksjon siden jeg vet nei
Arduino Bluetooth Basic Tutorial: 6 trinn (med bilder)
Arduino Bluetooth grunnleggende opplæring: OPPDATERING: OPPDATERT VERSJON AV DENNE ARTIKKELEN KAN FINNES HER Har du noen gang tenkt på å kontrollere elektroniske enheter med smarttelefonen din? Å kontrollere roboten eller andre enheter med smarttelefonen din vil være veldig kult. Her er en enkel og grunnleggende
ESP32 VGA arkadespill og joystick: 6 trinn (med bilder)
ESP32 VGA Arcade Games og Joystick: I denne instruksjonsfilen vil jeg vise hvordan du reproduserer fire arkade som spill - Tetris - Snake - Breakout - Bomber - ved hjelp av en ESP32, med utgang for en VGA -skjerm. Oppløsningen er 320 x 200 piksler, i 8 farger. Jeg har tidligere gjort en versjon med
Slik kontrollerer du ESP8266 -baserte Sonoff Basic Smart Switch med en smarttelefon: 4 trinn (med bilder)
Slik kontrollerer du ESP8266 -baserte Sonoff Basic Smart Switch med en smarttelefon: Sonoff er en enhetslinje for Smart Home utviklet av ITEAD. En av de mest fleksible og rimelige enhetene fra den linjen er Sonoff Basic. Det er en Wi-Fi-aktivert bryter basert på en flott chip, ESP8266. Denne artikkelen beskriver hvordan du konfigurerer Cl
ESP8266 robotbil programmert med ESP8266 Basic: 18 trinn (med bilder)
ESP8266 Robotbil programmert med ESP8266 Basic: Jeg er naturfaglærer på ungdomsskolen og også rådgiver i Robotic Club. Jeg har lett etter mer kostnadseffektive måter å få roboter i hendene på studentene mine. Med de lave prisene på ESP8266 -plater har jeg klart å lage en autonom