Obsah:

Základný počítač Arduino s TV výstupom: 5 krokov (s obrázkami)
Základný počítač Arduino s TV výstupom: 5 krokov (s obrázkami)

Video: Základný počítač Arduino s TV výstupom: 5 krokov (s obrázkami)

Video: Základný počítač Arduino s TV výstupom: 5 krokov (s obrázkami)
Video: Начало работы с QLC+ Управление цветомузыкой с компьютера. Как управлять светом. 2024, Jún
Anonim
Image
Image
Základný počítač Arduino s TV výstupom
Základný počítač Arduino s TV výstupom
Základný počítač Arduino s TV výstupom
Základný počítač Arduino s TV výstupom
Základný počítač Arduino s TV výstupom
Základný počítač Arduino s TV výstupom

V tomto návode vám ukážem, ako vytvoriť retro 8-bitový počítač so systémom BASIC pomocou dvoch Arduino a niekoľkých ďalších komponentov.

Premenné a program BASIC môžete zadávať pomocou klávesnice PS2 a výstup sa zobrazí na monitore s textom 47 stĺpcov x 29 riadkov, znakov 8x8 pixelov (čiernobielo), s rozlíšením podobným alebo lepším ako Commodore 64, ktoré sa rovná 40 x 25 znakov.

V akcii to môžete vidieť na hornom videu.

Program potom môžete uložiť na EEPROM Arduino a vstupno -výstupné piny môžete stále ovládať priamo pomocou špeciálnych vyhradených príkazov.

Jedno Arduino je „majster“a beží na ňom Tiny Basic Plus, implementácia Tiny Basic v jazyku C, so zameraním na podporu pre Arduino. Ovláda aj klávesnicu PS2. Výstup je potom odoslaný cez sériový port do druhého Arduina, ktoré generuje video výstup vďaka úžasnej knižnici MRETV.

Myšlienka použiť jedno alebo viac Arduino na vytvorenie starého štýlu počítača s dialektom jazyka Basic nie je nová, ale zatiaľ existuje niekoľko silných obmedzení výstupného rozlíšenia. V niektorých projektoch dostupných na internete ľudia používali LCD displeje, zatiaľ čo v iných, aby sa umožnilo používanie monitorov, sa použila knižnica TVout, ktorá má oveľa nižšie rozlíšenie. Navyše v mnohých z týchto projektov je potrebné postaviť špeciálne štíty alebo hardvér.

Tu potrebujete iba dve Arduino, pár diód, niekoľko rezistorov a konektor pre klávesnicu PS2 a monitor, ako je to znázornené na obrázku vyššie.

Krok 1: Zostavte si Arduino Master s klávesnicou TinyBasic a PS2

TinyBasic Plus a MRETV pracujú pre staršie - a iné - Arduino IDE.

Najprv si stiahnite IDE 1.6.4 z oficiálnej webovej stránky Arduino. Ak máte vo svojom počítači novšie verzie, je najlepšie stiahnuť ho vo formáte.zip a rozbaliť ho do počítača. Kliknutím na tento odkaz si stiahnete verziu systému Windows.

Potom potrebujete knižnicu PS2keyboard. Nájdete ho v spodnej časti tejto stránky. Stačí ho rozbaliť a skopírovať priečinok PS2keyboard do: arduino-1.6.4 / libraries

Nakoniec si na tejto stránke stiahnite súbor: TinyBasicPlus_PS2.ino, dekomprimujte ho a nahrajte do svojho Arduina.

Toto je variácia štandardného TinyBasic Plus, kde som pridal knižnicu PS2 a upravil kód tak, aby z neho akceptoval životaschopný.

Podrobnejšie informácie o TiniBasic Plus a návody nájdete na tomto odkaze.

Ak nie sú žiadne problémy a problémy s kompatibilitou, Tiny Basic je už spustený. Môžete si to vyskúšať prostredníctvom sériového monitora vo svojom počítači. Na tento účel používam PuTTY, ale je k dispozícii mnoho ďalších programov.

Musíte nastaviť správny port COM (je rovnaký ako v Arduino IDE) a prenosovú rýchlosť = 2400

Tu už môžete vyskúšať nejaký program v jazyku Basic len tak, že ich napíšete pomocou klávesnice počítača (NB neskôr ukážem, ako pripojiť klávesnicu PS2 priamo k Arduinu).

Skúste napríklad:

10 TLAČ "Ahoj, svet!"

20 GOTO 10

SPUSTIŤ

Potom môžete zastaviť nekonečnú slučku stlačením klávesu ctrl+c. Upozorňujeme, že táto kombinácia nebude fungovať pre klávesnicu PS2.

V nasledujúcom kroku ukážem, ako pripojiť klávesnicu PS2 k Arduinu.

Krok 2: Pripojte klávesnicu PS2 k Master Arduino

Pripojte klávesnicu PS2 k Master Arduino
Pripojte klávesnicu PS2 k Master Arduino

Z tohto Instructable som získal všetky informácie a knižnicu.

V zásade musíte spojiť nasledujúce štyri kolíky:

  • dáta klávesnice na Arduino pin 8,
  • klávesnica IRQ (hodiny) na Arduino pin 3;
  • samozrejme musíte pripojiť aj GND a +5V.

Z rozbitej základnej dosky počítača som dostal starý ženský konektor PS2. Môžete ho jednoducho predať pomocou tepelnej pištole.

Na obrázku v tomto kroku nájdete funkciu potrebných pinov konektora PS2.

Krok 3: Nahrajte knižnicu MRETV na druhé Arduino a dajte všetko dohromady

Nahrajte knižnicu MRETV na druhé Arduino a dajte všetko dohromady
Nahrajte knižnicu MRETV na druhé Arduino a dajte všetko dohromady

Kľúčovým bodom tohto projektu je existencia úžasnej knižnice MRETV. Existuje vyhradený návod, kde je podrobne popísaný.

Na generovanie videa na celú obrazovku používa iba dva odpory a dve diódy s textovým rozlíšením 47 x 29 z 8 x 8 znakov. Ako sa hovorí v úvode, „generovanie videa sa už robilo, ale nie takto. CELÝ DUPLEXový seriál je stále k dispozícii aj pri generovaní videa“. To umožňuje získať údaje z „hlavného“Arduina a zobraziť ich na monitore. V praxi sa tento druhý „otrok“Arduino používa ako grafické rozhranie!

Pretože MRETV funguje pre IDE 1.6.6, stiahnite si ho z oficiálnej webovej stránky Arduino. Opäť je najlepšie stiahnuť si ho vo formáte.zip a rozbaliť ho do počítača. Kliknutím na tento odkaz si stiahnete verziu systému Windows.

Potom si stiahnite knižnicu MRETV z tohto odkazu.

Rozbaľte ho a uložte priečinok „MRETV“do: arduino-1.6.6 / libraries

Nakoniec si stiahnite TVtext_slave.rar v spodnej časti tejto stránky, rozbaľte ho a nahrajte do svojho otroka Arduina.

Ak sa nezobrazí žiadne chybové hlásenie, môžete pripojiť konektor RCA. Potrebujete dve diódy a odpory 1 kOhm a 300 Ohm, ako je znázornené na schéme na tejto stránke.

V tomto okamihu môžete všetko prepojiť.

Kompletný zoznam materiálov je:

  • dva Arduino Uno Rev. 3 alebo dva Arduino Nano 3.x (ATmega328)
  • dva odpory 1 kOhm
  • jeden odpor 300 Ohm
  • dve diódy 1n4148 (x2) alebo podobnú silikónovú spínaciu diódu
  • dve zásuvky RCA (jedna pre video, jedna - voliteľná - pre zvuk)
  • zásuvkový konektor PS2
  • dosku a drôty

Master Arduino odosiela údaje do podriadeného zariadenia cez oranžový kábel, tj. Hlavný kolík 1 (Tx) do podradeného kolíka 2 (Rx). Ak potrebujete znova nahrať nejaký kód, mali by ste najskôr odpojiť tento kábel.

Potom pripojte slave arduino k 5V zdroju, RCA kábel k televízoru a klávesnicu k PS2, a teraz by ste mali vidieť kód k televízoru!

Funkcie tohto základného dialektu sú podrobne popísané na jeho domovskej stránke (pozri odkaz v kroku 2). Pomocou príkazov „esave“a „eload“môžete do EEPROM uložiť jeden základný program. Tento program sa predvolene spustí vždy, keď resetujete hlavné Arduino. Na jeho odstránenie môžete použiť príkaz „eformat“.

Jednou z najdôležitejších funkcií tohto programu je, že hlavný I/O Arduino môžete stále ovládať pomocou vyhradených základných príkazov, ako napr.

  • DWRITE pin, value - set pin with a value (HIGH, HI, LOW, LO)
  • AWRITE pin, hodnota - nastavený pin s analógovou hodnotou (pwm) 0..255
  • DREAD (pin) - získajte hodnotu pinu
  • AREAD (analogPin) - zistí hodnotu analógového pinu

Môžete teda napísať program v jazyku Basic, ktorý poháňa nejaký hardvér, uložiť ho do pamäte EEPROM a potom ho spustiť automaticky, iba resetovaním Arduina.

Krok 4: Voliteľné: Použitie PCB

Voliteľné: Použitie PCB
Voliteľné: Použitie PCB
Voliteľné: Použitie PCB
Voliteľné: Použitie PCB
Voliteľné: Použitie PCB
Voliteľné: Použitie PCB

Tento základný počítač môžete postaviť aj pomocou malej dosky plošných spojov. V tomto kroku sa môžete inšpirovať obrázkami alebo si dokonca môžete vytlačiť tabuľu.

Na video výstup Arduino môžete použiť dva pásiky záhlavia s 15 otvormi, zatiaľ čo pre master navrhujem použiť štyri pásy. Týmto spôsobom môžete pomocou externých vložiť kontakty svojich súčastí projektu.

V strede som tiež pridal zvyškové pásy, jeden pripojený na 5 V a druhý pre GND.

Nakoniec v súbore.rar nájdete masky na leptanie medenej dosky.

Krok 5: Záverečné komentáre a poďakovania

Tento projekt by sa nemohol uskutočniť bez knižnice MRETV. Moje hlavné uznanie teda patrí jeho autorovi, ktorý používa skratku pán E.

Veľká vďaka patrí aj autorom TinyBasic Plus:

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

Vďaka patrí aj „djsadeepa“, autorovi Instructable pre pripojenie klávesnice PS2.

Všetkým ľuďom, ktorí sa zaujímajú o tento projekt: Je jednoduchšie stavať, ako sa to môže zdať na prvý pohľad. Moje hlavné problémy boli s kompatibilitou Arduino IDE. Ak máte problémy, neváhajte sa opýtať na návrhy v komentároch.

Ak sa vám to podarí, napíšte tiež komentár alebo zdieľajte obrázok zariadenia, ktoré vyrobíte.

Odporúča: