Cuprins:
- Pasul 1: Construiți Arduino Master cu tastatura TinyBasic și PS2
- Pasul 2: Conectați tastatura PS2 la Master Arduino
- Pasul 3: Încărcați biblioteca MRETV pe al doilea Arduino și puneți totul împreună
- Pasul 4: Opțional: utilizarea unui PCB
- Pasul 5: Comentarii finale și mulțumiri
Video: PC de bază Arduino cu ieșire TV: 5 pași (cu imagini)
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:45
În acest Instructables voi arăta cum să construiți un computer retro pe 8 biți care rulează BASIC, prin intermediul a două Arduino și a altor câteva componente.
Puteți introduce variabilele și programul BASIC cu o tastatură PS2, iar ieșirea este afișată pe un monitor cu un text 47 coloane x 29 rânduri de caractere 8x8 pixeli (alb-negru), o rezoluție similară sau mai bună decât Commodore 64, egală cu 40 x 25 de caractere.
Îl puteți vedea în acțiune în videoclipul superior.
Programul poate fi apoi salvat pe Arduino EEPROM și puteți controla în continuare pinii I / O direct prin intermediul comenzilor dedicate de bază.
Un Arduino este „master” și rulează Tiny Basic Plus, o implementare C a Tiny Basic, cu accent pe suport pentru Arduino. De asemenea, controlează o tastatură PS2. Ieșirea este apoi trimisă prin portul serial la cel de-al doilea Arduino, care generează ieșirea video datorită nemaipomenitei biblioteci MRETV.
Ideea de a utiliza unul sau mai multe Arduino pentru a crea un PC de stil vechi care rulează un dialect de bază nu este nouă, dar până acum există unele limitări puternice în rezoluția de ieșire. În unele proiecte disponibile pe net, oamenii au folosit afișaje LCD, în timp ce în altele, pentru a permite utilizarea monitoarelor, a fost utilizată biblioteca TVout, care are o rezoluție mult mai mică. Mai mult, în multe dintre aceste proiecte trebuie să fie construite scuturi speciale sau hardware.
Aici aveți nevoie doar de două Arduino, câteva diode, câteva rezistențe și conectorul pentru tastatura PS2 și monitor, așa cum se arată în imaginea de mai sus.
Pasul 1: Construiți Arduino Master cu tastatura TinyBasic și PS2
TinyBasic Plus și MRETV funcționează pentru vârstnici - și diferiți - Arduino IDE.
Prima descărcare IDE 1.6.4 de pe pagina web oficială Arduino. Dacă aveți versiuni mai noi pe computer, cel mai bine este să îl descărcați în format.zip și să le decomprimați pe computer. Faceți clic pe acest link pentru a descărca versiunea Windows.
Aveți nevoie apoi de biblioteca de tastatură PS2. O puteți găsi în partea de jos a acestei pagini. Decomprimați-l și copiați folderul PS2keyboard în: arduino-1.6.4 / libraries
În cele din urmă, în această pagină, descărcați fișierul: TinyBasicPlus_PS2.ino, decomprimați-l și încărcați-l pe Arduino.
Aceasta este o variantă a standardului TinyBasic Plus, unde am adăugat biblioteca PS2 și am modificat codul pentru a accepta versiunea din aceasta.
Mai multe detalii despre TiniBasic Plus și tutoriale pot fi găsite la acest link.
Dacă nu există probleme și probleme de compatibilitate, Tiny Basic rulează deja. Puteți să-l testați printr-un monitor serial pe computer. În acest scop folosesc PuTTY, dar sunt disponibile multe alte programe.
Trebuie să setați portul COM corect (este același lucru pe care îl găsiți în IDE-ul Arduino) și rata de transmisie = 2400
Aici puteți testa deja un program în Basic, doar tastându-le cu tastatura PC-ului (NB mai târziu voi arăta cum să conectați tastatura PS2 direct la Arduino).
Încercați, de exemplu:
10 PRINT "Bună ziua, lume!"
20 GOTO 10
ALERGA
Puteți opri apoi bucla infinită doar tastând ctrl + c. Rețineți că această combinație nu va funcționa pentru tastatura PS2.
În pasul următor voi arăta cum să conectați tastatura PS2 la Arduino.
Pasul 2: Conectați tastatura PS2 la Master Arduino
Am primit toate informațiile și biblioteca de la acest instructabil.
În esență, trebuie să conectați următoarele patru pini:
- tastatură Date către Arduino pin 8,
- tastatură IRQ (ceas) la pinul 3 Arduino;
- desigur, trebuie să conectați și GND și + 5V.
Am primit un conector PS2 de sex feminin de pe o placă de bază pentru computer rupt. Puteți pur și simplu să îl vindeți cu un pistol termic.
În imaginea prezentată în acest pas, puteți găsi funcția pinilor necesari ai conectorului PS2.
Pasul 3: Încărcați biblioteca MRETV pe al doilea Arduino și puneți totul împreună
Punctul cheie al acestui proiect este existența minunatei biblioteci MRETV. Există un Instructable dedicat, unde este descris în detalii.
Folosește doar două rezistențe și două diode pentru a genera video pe ecran complet, cu o rezoluție text de 47 x 29 din 8x8 caractere. Așa cum se spune în introducere, "generarea de videoclipuri a fost făcută înainte, dar nu așa. Seria FULL DUPLEX este încă disponibilă în timpul generării videoclipului". Acest lucru permite obținerea datelor de la „master” Arduino și afișarea lor pe monitor. În practică, acest al doilea „sclav” Arduino este folosit ca o interfață grafică!
Deoarece MRETV funcționează pentru IDE 1.6.6, descărcați-l de pe pagina web oficială Arduino. Din nou, cel mai bun este să-l descărcați în format.zip și să-l decomprimați de pe computer. Faceți clic pe acest link pentru a descărca versiunea Windows.
Descărcați apoi biblioteca MRETV de pe acest link.
Decomprimați-l și salvați folderul „MRETV” în: arduino-1.6.6 / libraries
În cele din urmă, descărcați TVtext_slave.rar în partea de jos a acestei pagini, decomprimați-l și încărcați-l în Arduino slave.
Dacă nu există un mesaj de eroare, puteți conecta conectorul RCA. Aveți nevoie de cele două diode și rezistențele de 1 kOhm și 300 Ohm, așa cum se arată în schema din această pagină.
În acest moment puteți conecta totul împreună.
Lista completă a materialelor este:
- două Arduino Uno Rev. 3 sau două Arduino Nano 3.x (ATmega328)
- două rezistențe 1 kOhm
- un rezistor 300 Ohm
- două diode 1n4148 (x2) sau diodă de comutare similară cu siliciu
- două mufe RCA de sex feminin (una pentru video, una - facultativă - pentru audio)
- un conector de sex feminin PS2
- o placă de prindere și fire
Master Arduino trimite datele către sclav prin cablul portocaliu, adică pinul principal 1 (Tx) la pinul slave 2 (Rx). Dacă trebuie să reîncărcați un cod, ar trebui să deconectați mai întâi acest cablu.
Conectați apoi arduino-ul slave la o sursă de alimentare de 5V, cablul RCA la televizor și tastatura la PS2, iar acum ar trebui să vedeți codul la televizor!
Funcțiile acestui dialect de bază sunt descrise în detalii în pagina sa de pornire (vezi linkul din pasul 2). Cu comenzile „esave” și „eload” puteți salva un program de bază în EEPROM. Acest program este rulat implicit de fiecare dată când resetați Arduino master. Pentru ao șterge, puteți utiliza comanda „eformat”.
Una dintre cele mai importante caracteristici ale acestui program este că puteți conduce în continuare master Arduino I / O cu comenzi de bază dedicate, cum ar fi
- Pin DWRITE, valoare - pin setat cu o valoare (HIGH, HI, LOW, LO)
- PIN AWRITE, pin setat cu valoare cu valoare analogică (pwm) 0..255
- DREAD (pin) - obțineți valoarea pinului
- AREAD (analogPin) - obțineți valoarea pinului analogic
Astfel, puteți scrie un program în Basic care conduce unele hardware, îl puteți salva în EEPROM și apoi îl puteți rula automat doar resetând Arduino.
Pasul 4: Opțional: utilizarea unui PCB
De asemenea, puteți construi acest PC de bază folosind un PCB mic. Vă puteți inspira din imaginile din acest pas sau chiar vă puteți imprima tabla.
Puteți utiliza două benzi antet feminin cu 15 găuri pentru ieșirea video Arduino, în timp ce pentru master vă sugerez să utilizați patru benzi. În acest fel, puteți utiliza cele externe pentru a insera contactele componentelor proiectului.
Am adăugat, de asemenea, în centru la benzile rămase, una conectată la 5 V și cealaltă pentru GND.
În cele din urmă, în fișierul.rar, puteți găsi măștile pentru gravarea unei plăci cuprate.
Pasul 5: Comentarii finale și mulțumiri
Acest proiect nu s-ar fi putut realiza fără biblioteca MRETV. Astfel, principala mea recunoaștere revine autorului său, care folosește acronimul dl E.
Mulțumesc și autorilor TinyBasic Plus:
- Tiny Basic 68k - Gordon Brandly
- Arduino Basic / Tiny Basic C - Michael Field
- Tiny Basic Plus - Scott Lawrence
Mulțumim și lui "djsadeepa", autorul Instructable pentru conectarea tastaturii PS2.
Pentru toți oamenii interesați de acest proiect: este mai ușor de construit, încât să pară la prima vedere. Principalele mele probleme au fost cu compatibilitățile Arduino IDE. Dacă aveți probleme, nu ezitați să cereți sugestii în comentarii.
Dacă aveți succes, vă rugăm să scrieți și un comentariu sau să partajați o imagine a dispozitivului pe care îl construiți.
Recomandat:
Sursă de alimentare liniară cu ieșire dublă reglabilă: 10 pași (cu imagini)
Sursă de alimentare liniară cu ieșire dublă reglabilă: Caracteristici: Conversie AC - DC Tensiuni de ieșire duble (pozitive - la sol - negative) Șine pozitive și negative reglabile Doar un transformator AC cu o singură ieșire Zgomot de ieșire (20MHz-BWL, fără sarcină): Aproximativ 1,12mVpp Scăzut zgomot și ieșiri stabile (ideal
PC de bază Arduino cu ieșire VGA: 5 pași (cu imagini)
PC de bază Arduino cu ieșire VGA: În Instructable-ul meu anterior am arătat cum să construiesc un computer retro pe 8 biți care rulează BASIC, prin intermediul a două Arduino și cu un semnal de ieșire în B & W pentru un ecran TV. Acum voi arăta cum să construiți același computer, dar cu semnalul de ieșire în
PC de bază ESP32 cu ieșire VGA: 7 pași
PC de bază ESP32 cu ieșire VGA: În acest instructable voi arăta cum să construiesc un PC simplu în stil retro realizat cu un singur ESP32 și câteva alte componente. Acest computer rulează Tiny Basic, un dialect simplificat al BASIC și generează ieșirea pentru un monitor VGA. Rezoluția este 640
PropVario, un variometru / altimetru DIY cu ieșire vocală pentru avioane RC: 7 pași (cu imagini)
PropVario, un variometru / altimetru DIY cu ieșire vocală pentru avioane RC: Acest instructable vă va arăta cum să construiți un Vario ieftin, care să poată vorbi altitudinea și, desigur, să trimită diferite tonuri atunci când schimbați înălțimea hidroavionului. Unele caracteristici: - voce și ton - utilizați propriile probe (de undă) în
Tutorial de bază foarte de bază: 6 pași
Tutorial Batch foarte de bază: dacă știți deja elementele esențiale ale lotului, NU este necesar să citiți acest instructable, continuați cu Tutorialul de bază nu atât de simplu. NOTĂ! ghilimele (dacă vedeți t