Obsah:

DIY domáci počítač: 4 kroky
DIY domáci počítač: 4 kroky

Video: DIY domáci počítač: 4 kroky

Video: DIY domáci počítač: 4 kroky
Video: Adel ukazala prso 2024, November
Anonim
DIY domáci počítač
DIY domáci počítač

Pred nejakým časom som vydal pokyn pomocou programu Espruino Pico na výrobu domáceho počítača:

Ten vyžadoval, aby ste pripojili VGA monitor prerušením VGA kábla, ale pre tento Instructable používam dosku s názvom Pixl.js, ktorá má vstavanú obrazovku LCD. Znamená to, že stačí pripojiť niekoľko káblov a máte správne použiteľný malý počítač s nízkym výkonom.

Čo teda potrebujete?

  • Espruino Pixl.js
  • Kus plastu alebo dreva, ktorý bude slúžiť ako základ
  • Breadboard
  • Klávesnice 4x4 x 4
  • Veľa nálepiek na kľúče
  • 6 sád 8x prepojovacích káblov typu Male-> Male Dupont (celkom 48 vodičov)-zodpovedajúce viacfarebné prúžky výrazne uľahčujú život

Krok 1: Výroba klávesnice

Výroba klávesnice
Výroba klávesnice
Výroba klávesnice
Výroba klávesnice
Výroba klávesnice
Výroba klávesnice
  • Prilepte 4 podložky pod seba vedľa seba na základňu (lepia sa na seba). Možno budete chcieť orezať ich okraje nadol, ale dávajte pozor, aby ste ich nestrihali príliš ďaleko, inak by ste mohli orezať niektoré kontakty.
  • Prilepte dosku do stredu - bude sa tiež lepiť!
  • Rozdeľte prepojovací kábel na 4 dĺžky po 8 - snažte sa, aby farby boli na každej rovnaké.
  • Prilepte vodiče do klávesníc KeyPads a uistite sa, že sa všetky farby zhodujú. Zložte drôty a prilepte ich k zadnej časti základne. Možno budete chcieť pridať nejaké lepkavé nožičky, aby sa drôty neohli v príliš veľkom uhle.
  • Teraz na každé tlačidlo na klávesnici pridajte nálepku a označte ich tak, ako chcete na klávesnici. Ako príklad použite obrázok, ale keď nahráte kód, môžete premennú „KEYMAP“zmeniť na to, čo máte.

Krok 2: Zapojenie

Elektrické vedenie
Elektrické vedenie

Teraz musíte klávesnicu prepojiť. Každá klávesnica 4x4 je usporiadaná ako mriežka a my ich zapojíme tak, ako keby boli sami v mriežke 2x2 - čím vznikla veľká mriežka 8x8 tlačidiel.

Pripojte kábel, ako je znázornené na obrázku, do 4 skupín po 4 drôtoch cez nepájivú dosku (skontrolujte farby vodičov na obrázkoch) zľava doprava:

  • KeyPad 1 Prvé 4 vodiče -> prvá skupina 4 na doske -> D0, D1, D2, D3
  • KeyPad 1 Second 4 drôty -> tretia skupina 4 na doske -> D8, D9, D10, D11
  • KeyPad 2 Prvé 4 vodiče -> prvá skupina 4 na doske -> D0, D1, D2, D3
  • KeyPad 2 druhé 4 vodiče -> štvrtá skupina 4 na doske -> D12, D13, SDA, SCL
  • KeyPad 3 Prvé 4 vodiče -> druhá skupina 4 na doske -> D4, D5, D6, D7
  • KeyPad 3 Second 4 drôty -> tretia skupina 4 na doske -> D8, D9, D10, D11
  • KeyPad 4 prvé 4 vodiče -> druhá skupina 4 na doske -> D4, D5, D6, D7
  • KeyPad 4 Second 4 drôty -> štvrtá skupina 4 na doske -> D12, D13, SDA, SCL

Na obrázku máme 6 sád 8 vodičov. Prvé 2 sú z klávesníc 1 a 2, druhé 2 smerujú na Pixl.js a tretie 2 sú z klávesnice 4 a 3.

Krok 3: Softvér

Teraz skontrolujte, či je firmvér Pixl aktuálny, pripojte sa k nemu pomocou rozhrania Espruino IDE a nahrajte nižšie uvedený kód. Odpojte IDE a máte hotovo!

// Zapojenie klávesnicevar KEYROW = [D7, D6, D5, D4, D3, D2, D1, D0]; var KEYCOL = [A5, A4, D13, D12, D11, D10, D9, D8];

// Mapy kľúčov pre klávesnicu

var KEYMAPLOWER = ["" 1234567890-= / x08 "," / tqwertyuiop n "," / 0asdfghjkl; '#\ x84 / x82 / x85 "," / x01 / zxcvbnm,./ / x80 / x83 / x81 ",]; var KEYMAPUPPER = ["¬! \" £ $%^&*() _+\ x08 "," / tQWERTYUIOP {} n "," / 0ASDFGHJKL:@~ / x84 / x82 / x85 "," / x01 | ZXCVBNM? / x80 / x83 / x81 ",];

/* Ak je znak na mape kľúčov> = 128, odčítajte 128 a v tomto poli vyhľadajte viacznakové kódy kľúčov*/ var KEYEXTRA = [String.fromCharCode (27, 91, 68), // 0x80 left String.fromCharCode (27, 91, 67), // 0x81 right String.fromCharCode (27, 91, 65), // 0x82 hore String.fromCharCode (27, 91, 66), // 0x83 dole String.fromCharCode (27, 91, 53, 126), // 0x84 stránky hore String.fromCharCode (27, 91, 54, 126), // 0x85 strana nadol]; // Stav posunu var hasShift = false; sada funkciíShift (s) {hasShift = s; // nakreslenie indikátora posunu na obrazovku if (hasShift) {g.setColor (1); g.fillRect (105, 0, 128, 6); g.setColor (0); g.drawString ("SHIFT", 107, 1); g.setColor (1); } else {g.setColor (0); g.fillRect (105, 0, 128, 6); g.setColor (1); } g.flip (); }

// Previesť skutočný kľúč na postupnosť znakov

// A odoslať do Loopback (kde je konzola) funkcia handleKeyPress (e) {var kx = e >> 3; var ky = e & 7; if (ky> 3) {// premeniť na dlhý rad kx+= 8; ky- = 4; } var key = hasShift? KEYMAPUPPER [ky] [kx]: KEYMAPLOWER [ky] [kx]; if (key == "\ x01") {setShift (! hasShift); } else {setShift (false); if (key && key.length) {if (key.charCodeAt (0)> 127) key = KEYEXTRA [key.charCodeAt (0) -128]; Terminal.inject (kľúč); }}}

// nastavenie klávesnice

vyžadujú („KeyPad“). connect (KEYROW, KEYCOL, handleKeyPress);

Krok 4: Používanie

Použitie!
Použitie!

Teraz to funguje:

  • Klávesnica dokáže rozpoznať iba jedno stlačenie naraz, takže Shift prepína veľké písmená (s indikátorom vpravo hore) a pri písaní písmena sa vrátia na malé písmená. Podržanie klávesu Shift a ďalšieho klávesu nebude fungovať.
  • Písanie môže byť dosť bolestivé, takže na automatické dopĺňanie slov používajte čo najviac kláves Tab (vľavo)!
  • Grafika obrazovky je k dispozícii pomocou metód v premennej g - napr. G.fillRect (20, 20, 40, 40) alebo g.clear ().
  • Na klávesnicu sa používa veľa IO, ale stále máte kolíky A0, A1, A2 a A3, ktoré môžete použiť na pripojenie externého hardvéru.
  • reset () vynuluje všetko - vrátane kódu na ovládanie klávesnice. Aby ste tomu zabránili, zapnite ukladanie pri odoslaní, a to aj po resetovaní v komunikačných možnostiach Web IDE, a znova nahrajte.
  • Váš počítač je prekvapivo energeticky úsporný - stále môžete očakávať zhruba 20 -dennú výdrž batérie - vždy zapnuté - vypnuté z jednej batérie CR2032!

Odporúča: