Innholdsfortegnelse:
- Trinn 1: Bygg Arduino Master med TinyBasic og PS2 -tastatur
- Trinn 2: Koble PS2 -tastaturet til Master Arduino
- Trinn 3: Last opp MRETV -biblioteket på den andre Arduinoen og sett alt sammen
- Trinn 4: Valgfritt: Bruke en PCB
- Trinn 5: Sluttkommentarer og anerkjennelser
Video: Arduino Basic PC med TV -utgang: 5 trinn (med bilder)
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:24
I denne instruksen vil jeg vise hvordan du bygger en retro 8-biters datamaskin som kjører BASIC, ved hjelp av to Arduino og få andre komponenter.
Du kan legge inn variablene og BASIC -programmet med et PS2 -tastatur, og utgangen vises på en skjerm med en tekst på 47 kolonner x 29 rader med 8x8 piksler tegn (S / H), en oppløsning som er lik eller bedre enn Commodore 64, lik 40 x 25 tegn.
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.
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 videoutgangen takket være det fantastiske MRETV -biblioteket.
Ideen om å bruke en eller flere Arduino til å lage en gammel PC med en dialekt med Basic er ikke ny, men så langt er det noen sterke begrensninger i utgangsoppløsningen. 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 har en mye lavere oppløsning. Videre må det i mange av disse prosjektene bygges spesielle skjold eller maskinvare.
Her trenger du bare to Arduino, et par dioder, få motstander og kontakten til PS2 -tastaturet og skjermen, som vist på bildet ovenfor.
Trinn 1: Bygg Arduino Master med TinyBasic og PS2 -tastatur
TinyBasic Plus og MRETV fungerer for eldre - og forskjellige - Arduino IDE.
Last ned IDE 1.6.4 først fra den offisielle siden til Arduino. 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.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 den levedyktige 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 = 2400
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 vil fungere 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;
- selvfølgelig må du koble til GND og +5V også.
Jeg har en gammel PS2 hunkontakt fra et ødelagt PC -hovedkort. Du kan ganske enkelt selge det 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 MRETV -biblioteket på den andre Arduinoen og sett alt sammen
Hovedpoenget med dette prosjektet er eksistensen av det fantastiske MRETV -biblioteket. Det er en dedikert Instructable der den er beskrevet i detaljer.
Den bruker bare to motstander og to dioder for å generere fullskjermvideo, med en tekstoppløsning på 47 x 29 på 8 x 8 tegn. Som det står i innledningen, har "videogenerering blitt gjort før, men ikke slik. FULL DUPLEX -serien er fortsatt tilgjengelig mens du genererer video". Dette gjør det mulig å få dataene fra "master" Arduino og vise dem på skjermen. I praksis brukes denne andre "slaven" Arduino som et grafisk grensesnitt!
Siden MRETV fungerer for IDE 1.6.6, kan du laste den ned fra Arduino offisielle webside. Igjen, det beste er å laste det ned i.zip -format og pakke dem ut på PCen. Klikk på denne lenken for å laste ned Windows -versjonen.
Last ned deretter MRETV -biblioteket fra denne lenken.
Komprimer den og lagre mappen "MRETV" i: arduino-1.6.6 / libraries
Til slutt laster du ned TVtext_slave.rar nederst på denne siden, pakker den ut og laster opp i din Arduino -slave.
Hvis det ikke er noen feilmelding, kan du koble til RCA -kontakten. Du trenger de to dioder og motstandene på 1 kOhm og 300 Ohm, som vist i diagrammet på denne siden.
På dette tidspunktet kan du koble alt sammen.
Den komplette materialelisten er:
- to Arduino Uno Rev. 3 eller to Arduino Nano 3.x (ATmega328)
- to motstander 1 kOhm
- en motstand 300 Ohm
- to dioder 1n4148 (x2) eller lignende silisiumbryterdiode
- to RCA plugg hunn (en for video, en - fakultativ - for lyd)
- en PS2 hunkontakt
- et brødbrett og ledninger
Master Arduino sender dataene til slaven gjennom den oransje kabelen, dvs. master pin 1 (Tx) til slave pin 2 (Rx). Hvis du trenger å laste opp noen koder på nytt, bør du først koble fra denne kabelen.
Koble deretter slaven arduino til en 5V strømforsyning, RCA -kabelen til TV -en og tastaturet til PS2, og du bør nå se koden til TVen din!
Funksjonene til denne grunnleggende dialekten er beskrevet i detaljer på hjemmesiden (se lenke i trinn 2). Med kommandoene "esave" og "eload" kan du lagre ett Basic -program i EEPROM. Dette programmet kjøres som standard hver gang du nullstiller master Arduino. For å slette den kan du bruke kommandoen "eformat".
En av de viktigste funksjonene i dette programmet er at du fremdeles kan kjøre master Arduino I/O med dedikerte grunnleggende kommandoer, for eksempel
- DWRITE pin, verdi - sett pin med en verdi (HIGH, HI, LOW, LO)
- AWRITE pin, verdi - sett pin med analog verdi (pwm) 0..255
- DREAD (pin) - få verdien av pinnen
- AREAD (analogPin) - få verdien til den analoge pinnen
Dermed kan du skrive et program i Basic som driver litt maskinvare, lagre det i EEPROM og deretter kjøre det automatisk bare ved å tilbakestille Arduino.
Trinn 4: Valgfritt: Bruke en PCB
Du kan også bygge denne grunnleggende 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 brettet ditt.
Du kan bruke to hunnhodestrimler med 15 hull for videoutgangen Arduino, mens jeg for masteren foreslår at du bruker fire strimler. På denne måten kan du bruke de eksterne til å sette inn kontaktene til prosjektkomponentene dine.
Jeg la også i midten til rester av strimler, den ene koblet til 5 V og den andre for GND.
Til slutt kan du i.rar -filen finne masker for å etse et kobberbrett.
Trinn 5: Sluttkommentarer og anerkjennelser
Dette prosjektet kunne ikke ha blitt utført uten MRETV -biblioteket. Dermed går min viktigste erkjennelse til forfatteren hans, som bruker forkortelsen Mr E.
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: det er lettere å bygge som det kan virke ved første blikk. Mine hovedproblemer har vært med Arduino IDE -kompatibilitetene. Hvis du har problemer, ikke nøl med å stille forslag i kommentarene.
Hvis du lykkes, kan du også skrive en kommentar eller dele et bilde av enheten du bygger.
Anbefalt:
Håndholdt BASIC datamaskin: 6 trinn (med bilder)
Håndholdt BASIC datamaskin: Denne instruksjonsboken beskriver prosessen min med å bygge en liten håndholdt datamaskin som kjører BASIC. Datamaskinen er bygget rundt ATmega 1284P AVR -brikken, som også inspirerte det dumme navnet på datamaskinen (HAL 1284). Denne konstruksjonen er STORT inspirert av
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
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
D4E1: Reading-tool 2.0 (Basic Production Process): 9 trinn (med bilder)
D4E1: Reading-tool 2.0 (Basic Production Process): Info:-To studenter Industrial product design i Kortrijk (Belgia) kom med dette leseverktøyet. Vi startet basert på et eksisterende design og har utviklet det til et annet design. Leseverktøyet er opprinnelig utviklet for en klient
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