Tartalomjegyzék:

DIY otthoni számítógép: 4 lépés
DIY otthoni számítógép: 4 lépés

Videó: DIY otthoni számítógép: 4 lépés

Videó: DIY otthoni számítógép: 4 lépés
Videó: FREE INTERNET. HOW TO MAKE A HOMEMADE STARLINK #Shorts 2024, November
Anonim
DIY otthoni számítógép
DIY otthoni számítógép

Nemrégiben közzétettem egy Instructable-t egy Espruino Pico segítségével otthoni számítógép készítéséhez:

Ehhez szükség volt egy VGA-monitor csatlakoztatására egy VGA-kábel elvágásával, de ehhez az Instructable-hez a Pixl.js nevű táblát használom, amely beépített LCD-képernyővel rendelkezik. Ez azt jelenti, hogy mindössze néhány vezetéket kell csatlakoztatnia, és van egy megfelelően használható, apró, alacsony fogyasztású számítógépe.

Tehát mire van szüksége?

  • Egy Espruino Pixl.js
  • Egy darab műanyag vagy fa, amely alapként szolgál
  • Egy kenyeretábla
  • 4x 4x4 billentyűzet
  • Sok matrica a kulcsokhoz
  • 6 készlet 8x Férfi-> Férfi Dupont-stílusú Jumper vezetékek (összesen 48 vezeték)-az egymáshoz illő sokszínű csíkok jelentősen megkönnyítik az életet

1. lépés: A billentyűzet elkészítése

A billentyűzet elkészítése
A billentyűzet elkészítése
A billentyűzet elkészítése
A billentyűzet elkészítése
A billentyűzet elkészítése
A billentyűzet elkészítése
  • Ragassza a 4 billentyűzetét egymás mellé az alapra (ragadós hátúak). Lehet, hogy le szeretné vágni a széleiket, de ügyeljen arra, hogy ne vágja túl messzire, különben levághatja néhány érintkezőt.
  • Ragassza le a kenyeretáblát középen - ez is ragacsos hátú!
  • Ossza fel az áthidaló vezetéket 4 darab 8 -as hosszúságra - próbálja meg mindegyik színét azonosnak tartani.
  • Ragassza a vezetékeket a billentyűzetbe, ügyelve arra, hogy a színek mindenben megegyezzenek. Hajtsa vissza a vezetékeket, és ragasztja őket a bázis hátsó részéhez. Érdemes néhány ragadós lábat hozzáadni, hogy elkerülje a vezetékek túlzott szögben való meghajlását.
  • Most adjon hozzá matricát a billentyűzet minden gombjához, és címkézze azokat a kívánt billentyűzet szerint. Használja a képet példaként, de amikor feltölti a kódot, megváltoztathatja a "KEYMAP" változót a meglévőre.

2. lépés: Kábelezés

Vezeték
Vezeték

Most be kell kötni a billentyűzetet. Minden 4x4 -es billentyűzet rácsként van elrendezve, és úgy kapcsoljuk be őket, mintha maguk lennének egy 2x2 -es rácsban - így nagy 8x8 -as gombrácsot készítenek.

Huzalozzon a képen látható módon 4 db 4 vezetékből álló csoportba a kenyértáblán (ellenőrizze a vezetékek színét a képeken), balról jobbra:

  • KeyPad 1 Az első 4 vezeték -> az első 4 -es csoport a kenyértáblán -> D0, D1, D2, D3
  • KeyPad 1 Második 4 vezeték -> harmadik 4 -es csoport a kenyértáblán -> D8, D9, D10, D11
  • KeyPad 2 Első 4 vezeték -> első 4 fős csoport a kenyérsütő táblán -> D0, D1, D2, D3
  • KeyPad 2 Második 4 vezeték -> negyedik 4 -es csoport a kenyértáblán -> D12, D13, SDA, SCL
  • KeyPad 3 Első 4 vezeték -> második 4 -es csoport a kenyértáblán -> D4, D5, D6, D7
  • KeyPad 3 Második 4 vezeték -> harmadik 4 -es csoport a kenyértáblán -> D8, D9, D10, D11
  • KeyPad 4 Első 4 vezeték -> második 4 -es csoport a kenyértáblán -> D4, D5, D6, D7
  • KeyPad 4 Második 4 vezeték -> negyedik 4 -es csoport a kenyértáblán -> D12, D13, SDA, SCL

A képen 6 darab 8 vezeték található. Az első 2 az 1 -es és 2 -es billentyűzetről származik, a második 2 a Pixl.js -re, a harmadik pedig a 4 -es és 3 -as billentyűzetre.

3. lépés: Szoftver

Most győződjön meg arról, hogy Pixl firmware -je naprakész, csatlakozzon hozzá az Espruino IDE -vel, és töltse fel az alábbi kódot. Válassza le az IDE -t, és kész!

// Billentyűzet huzalozásavar KEYROW = [D7, D6, D5, D4, D3, D2, D1, D0]; var KEYCOL = [A5, A4, D13, D12, D11, D10, D9, D8];

// Key Maps for Keyboard

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 ",];

/* Ha a billentyűzetben egy karakter> = 128, vonja le a 128-at, és keressen ebben a tömbben több karakterből álló kulcskódokat*/ var KEYEXTRA = [String.fromCharCode (27, 91, 68), // 0x80 left String.fromCharCode (27, 91, 67), // 0x81 right String.fromCharCode (27, 91, 65), // 0x82 up String.fromCharCode (27, 91, 66), // 0x83 down String.fromCharCode (27, 91, 53, 126), // 0x84 oldal fel String.fromCharCode (27, 91, 54, 126), // 0x85 oldal lefelé]; // Shift állapot var hasShift = false; függvény setShift (s) {hasShift = s; // rajzoljon eltolásjelzőt a képernyőn, ha (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 (); }

// Egy tényleges kulcs átalakítása karaktersorozatba

// És küldje el a Loopback -nek (ahol a konzol található) function handleKeyPress (e) {var kx = e >> 3; var ky = e & 7; if (ky> 3) {// hosszú sorba fordul kx+= 8; ky- = 4; } var key = hasShift? BILLENTYŰZET [ky] [kx]: KEYMAPLOWER [ky] [kx]; if (kulcs == "\ x01") {setShift (! hasShift); } else {setShift (false); if (key && key.length) {if (key.charCodeAt (0)> 127) key = KEYEXTRA [key.charCodeAt (0) -128]; Terminal.inject (kulcs); }}}

// a billentyűzet beállítása

need ("KeyPad"). connect (KEYROW, KEYCOL, handleKeyPress);

4. lépés: Használja

Használni azt!
Használni azt!

Most működik:

  • A billentyűzet egyszerre csak egy gombnyomást képes észlelni, ezért a Shift nagybetűket vált (a jobb felső sarokban lévő jelzővel), és a betű beírása kisbetűs lesz. A Shift és egy másik billentyű lenyomása nem működik.
  • A gépelés meglehetősen fájdalmas lehet, ezért a szavak automatikus kitöltéséhez használja a Tab billentyűt (bal oldalon), amennyire csak lehetséges!
  • A képernyő grafikája a g változó módszerein keresztül érhető el - pl. G.fillRect (20, 20, 40, 40) vagy g.clear ().
  • A billentyűzethez sok IO -t használnak, de még mindig vannak A0, A1, A2 és A3 érintkezők, amelyekkel külső hardvereket csatlakoztathat.
  • reset () visszaállít mindent - beleértve a billentyűzet kezeléséhez szükséges kódot is. Ennek elkerülése érdekében kapcsolja be a mentést küldéskor, még a Web IDE kommunikációs beállításainak visszaállítása után is, majd töltse fel újra.
  • Számítógépe meglepően energiatakarékos - nagyjából 20 napos akkumulátor -élettartamra számíthat - mindig be- és kikapcsolva egyetlen CR2032 elemmel!

Ajánlott: