Sadržaj:

Arduino osnovni računar sa VGA izlazom: 5 koraka (sa slikama)
Arduino osnovni računar sa VGA izlazom: 5 koraka (sa slikama)

Video: Arduino osnovni računar sa VGA izlazom: 5 koraka (sa slikama)

Video: Arduino osnovni računar sa VGA izlazom: 5 koraka (sa slikama)
Video: Kako radi računar 2024, Juli
Anonim
Image
Image
Arduino osnovni računar sa VGA izlazom
Arduino osnovni računar sa VGA izlazom
Arduino osnovni računar sa VGA izlazom
Arduino osnovni računar sa VGA izlazom

U svom prethodnom Instructable-u sam pokazao kako izgraditi retro 8-bitni računar sa BASIC-om, pomoću dva Arduina, i sa izlaznim signalom u BIOS-u za TV ekran.

Sada ću pokazati kako se pravi isti računar, ali sa izlaznim signalom u boji za VGA monitor!

Varijable i BASIC program možete unijeti pomoću PS2 tastature, a on generira izlaz za VGA monitor s rezolucijom teksta od 24 kolone x 10 redova znakova 5x6 piksela, u četiri boje. Možete ga vidjeti na djelu u gornjem videu. Program se tada može spremiti na Arduino EEPROM, a i dalje možete kontrolirati I/O pinove putem osnovnih namjenskih naredbi.

Ovaj projekat se takođe može koristiti za štampanje jednostavnih tekstualnih poruka na monitoru, kao što je prikazano na trećoj slici na ovoj stranici.

Jedan Arduino je "master" i pokreće Tiny Basic Plus, C implementaciju Tiny Basic -a, s naglaskom na podršci za Arduino. Takođe kontroliše PS2 tastaturu. Izlaz se zatim šalje preko serijskog porta na drugi Arduino koji generira VGA izlaz zahvaljujući VGAx biblioteci.

Ideja da se koristi jedan ili više Arduina za stvaranje računara starog stila na dijalektu Basic nije nova, ali koliko ja znam, nijedan od njih nema izlaz u boji. U nekim projektima koji su dostupni na internetu, ljudi su koristili LCD ekrane, dok su u drugima, kako bi se omogućilo korištenje monitora, korištena TVout biblioteka, koja je B&W. Nadalje, u mnogim od ovih projekata potrebno je izgraditi posebne štitove ili hardver. Ovdje su vam potrebna samo dva Arduina, nekoliko otpornika i konektor za PS2 tastaturu i monitor, kao što je prikazano na gornjim slikama.

Korak 1: Izgradite Arduino Master pomoću TinyBasic i PS2 tastature

TinyBasic Plus i VGAx biblioteka rade za Arduino IDE 1.6.4.

Prvo ga preuzmite sa službene web stranice Arduino. Ako na računaru imate novije verzije, najbolje je da ga preuzmete u.zip formatu i raspakujete na svom računaru. Kliknite na ovu vezu za preuzimanje verzije operativnog sistema Windows.

Tada vam je potrebna biblioteka tastature PS2. Možete ga pronaći pri dnu ove stranice. Raspakujte ga i kopirajte fasciklu PS2keyboard u: arduino-1.6.4 / libraries

Na kraju, na ovoj stranici preuzmite datoteku: TinyBasicPlus_PS2_VGAx.ino, raspakirajte je i postavite na svoj Arduino.

Ovo je varijacija standardnog TinyBasic Plus -a gdje sam dodao PS2 biblioteku i izmijenio kôd kako bih prihvatio varijable iz nje.

Više detalja o TiniBasic Plus i vodiče možete pronaći na ovoj poveznici.

Ako nema problema i problema s kompatibilnošću, Tiny Basic je već pokrenut. Možete ga testirati putem serijskog monitora na računaru. U tu svrhu koristim PuTTY, ali dostupni su i mnogi drugi programi.

Morate postaviti ispravan COM port (isti je koji se nalazi u Arduino IDE -u) i brzina prijenosa = 4800

Ovdje već možete isprobati neki program u Basic -u jednostavnim upisivanjem pomoću računarske tipkovnice (napomena kasnije ću vam pokazati kako spojiti PS2 tastaturu izravno na Arduino).

Pokušajte na primjer:

10 ŠTAMPAJ "Hello, World!"

20 IDITE 10

RUN

Beskonačnu petlju tada možete zaustaviti samo upisivanjem ctrl+c.

Imajte na umu da ova kombinacija neće funkcionirati za PS2 tipkovnicu.

U sljedećem koraku pokazat ću kako spojiti PS2 tipkovnicu na Arduino.

Korak 2: Povežite PS2 tastaturu s glavnim Arduinom

Spojite PS2 tipkovnicu na Master Arduino
Spojite PS2 tipkovnicu na Master Arduino

Dobio sam sve informacije i biblioteku iz ovog instruktora.

U osnovi morate spojiti sljedeća četiri pina:

  • tipkovnica Podaci na Arduino pin 8,
  • tastatura IRQ (sat) na Arduino pin 3;
  • morate spojiti i GND i +5V.

Dobio sam stari ženski PS2 konektor sa pokvarene matične ploče računara. Možete ga jednostavno rasprodati toplinskim pištoljem.

Na slici prikazanoj u ovom koraku možete pronaći funkciju potrebnih pinova PS2 konektora.

Korak 3: Postavite VGAx biblioteku i kôd na drugi Arduino i spojite sve zajedno

Prenesite VGAx biblioteku i kod na drugi Arduino i sastavite sve zajedno
Prenesite VGAx biblioteku i kod na drugi Arduino i sastavite sve zajedno

Prvo preuzmite VGAx-PC.ino kôd na dnu ove stranice i kopirajte ga na svoj računar u direktorijum sa istim imenom.

Preuzmite VGAx biblioteku sa ove veze na GitHubu. Najlakši način je da ga kopirate u podmapu softvera Arduino pod nazivom "biblioteke", kako biste je odmah prepoznali.

VAŽNO: ova biblioteka radi za Arduno IDE 1.6.4, ali nije u potpunosti kompatibilna sa starijim ili novijim verzijama.

Postavite VGAx-PC.ino na svoju drugu Arduino ploču (testirao sam je za Nano verziju, ali bi i Uno trebao raditi).

Upozorenje o nedostatku memorije je normalno. Ako nemate drugih grešaka, sve je u redu i možete odmah početi s izgradnjom vlastitog 8-bitnog računala.

Za ovo vam je potrebno:

  • dva Arduino Uno Rev. 3 ili dva Arduino Nano 3.x (ATmega328)
  • konektor DSUB15, odnosno VGA ženski konektor ili VGA kabel za rezanje.
  • otpornici: 2 x 68 Ohma i 2 x 470 Ohma
  • ženski konektor PS2
  • žice
  • fakultativno: matična ploča ili ploča

Shema je prikazana na vrhu ovog koraka. Primjer gotove „konzole“prikazan je u uvodnom koraku.

Ista shema, s većom rezolucijom, prikazana je u komprimiranoj datoteci na dnu ovog koraka.

Korak 4: Opcionalno: Korištenje PCB -a

Opcionalno: Korištenje PCB -a
Opcionalno: Korištenje PCB -a
Opcionalno: Korištenje PCB -a
Opcionalno: Korištenje PCB -a
Opcionalno: Korištenje PCB -a
Opcionalno: Korištenje PCB -a
Opcionalno: Korištenje PCB -a
Opcionalno: Korištenje PCB -a

Ovaj osnovni VGA računar možete izgraditi i pomoću male PCB -a. Možete uzeti inspiraciju iz slika u ovom koraku ili čak možete ispisati vlastitu ploču.

Koristio sam dvije ženske zaglavlje sa 15 rupa za video izlaz Arduino, dok sam za majstora koristio dvije trake sa doble rupama. Na ovaj način mogu upotrijebiti vanjske za umetanje kontakata drugih komponenti projekata, koji se mogu upravljati izravno s osnovnim kodom. Dodao sam i u sredini preostale trake, jednu spojenu na 5 V, a drugu za GND.

Korak 5: Završni komentari i priznanja

Moje glavno priznanje je Sandro Maffiodo zvani Smaffer, tvorac sjajne VGAx biblioteke.

Veliko hvala i autorima TinyBasic Plus:

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

Hvala i "djsadeepa", autoru Instructablea za povezivanje PS2 tastature.

Svim ljudima koje zanima ovaj projekt: ako imate problema, ne ustručavajte se pitati prijedloge u komentarima.

Ako uspijete, napišite komentar ili podijelite sliku uređaja koji gradite.

Preporučuje se: