Cuprins:
Video: DIY Home Computer: 4 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:45
Am publicat un Instructable cu ceva timp în urmă folosind un Espruino Pico pentru a face un computer de acasă:
Acela ți-a cerut să conectezi un monitor VGA tăind un cablu VGA, dar pentru acest instructabil folosesc o placă numită Pixl.js, care are ecranul LCD încorporat. Înseamnă că tot ce trebuie să vă conectați sunt câteva fire și aveți un computer mic, de mică putere, care poate fi utilizat în mod corespunzător.
Deci, de ce ai nevoie?
- Un Espruino Pixl.js
- O bucată de plastic sau lemn pentru a acționa ca bază
- Un panou
- Tastaturi 4x 4x4
- O mulțime de autocolante pentru chei
- 6 seturi de 8 fire de tip jumper masculin> masculin dupont (48 fire în total) - benzi multicolore potrivite fac viața mult mai ușoară
Pasul 1: realizarea tastaturii
- Așezați-vă cele 4 KeyPad-uri una lângă cealaltă pe bază (sunt lipite în spate). Poate doriți să le tăiați marginile în jos, dar aveți grijă să nu tăiați prea mult sau s-ar putea să tăiați unele contacte.
- Îndepărtați-vă panoul în mijloc - este și lipicios!
- Împărțiți firul jumperului în 4 lungimi de 8 - încercați să păstrați culorile la fel pe fiecare.
- Introduceți firele în tastatură, asigurându-vă că toate culorile se potrivesc. Îndoiți firele înapoi și fixați-le pe partea din spate a bazei. S-ar putea să doriți să adăugați niște picioare lipicioase pentru a salva firele de a nu se îndoaie într-un unghi prea mare.
- Acum adăugați un autocolant la fiecare buton din tastatura și etichetați-le după cum doriți tastatura. Utilizați imaginea ca exemplu, dar atunci când încărcați codul, puteți schimba variabila „KEYMAP” la ceea ce aveți.
Pasul 2: Cablare
Acum trebuie să conectați tastatura. Fiecare tastatură 4x4 este aranjată ca o rețea și le conectăm ca și cum ar fi ele însele într-o rețea 2x2 - făcând o rețea mare de butoane de 8x8.
Sârmă așa cum se arată în imagine în 4 grupuri de 4 fire pe panoul de verificare (verificați culorile firelor din imagini), cu stânga la dreapta:
- KeyPad 1 Primele 4 fire -> primul grup de 4 pe panou -> D0, D1, D2, D3
- KeyPad 1 Second 4 fire -> al treilea grup de 4 pe panou -> D8, D9, D10, D11
- KeyPad 2 Primele 4 fire -> primul grup de 4 pe panou -> D0, D1, D2, D3
- KeyPad 2 Second 4 fire -> al patrulea grup de 4 pe breadboard -> D12, D13, SDA, SCL
- KeyPad 3 Primele 4 fire -> al doilea grup de 4 pe panou -> D4, D5, D6, D7
- KeyPad 3 Second 4 fire -> al treilea grup de 4 pe panou -> D8, D9, D10, D11
- KeyPad 4 Primele 4 fire -> al doilea grup de 4 pe panou -> D4, D5, D6, D7
- KeyPad 4 Second 4 fire -> al patrulea grup de 4 pe panou -> D12, D13, SDA, SCL
În imagine avem 6 seturi de 8 fire. Primele 2 sunt de la tastaturile 1 și 2, al doilea 2 se îndreaptă către Pixl.js, iar al treilea 2 este de la tastaturile 4 și 3.
Pasul 3: Software
Acum asigurați-vă că firmware-ul Pixl este actualizat, conectați-vă la acesta cu IDE-ul Espruino și încărcați codul de mai jos. Deconectați IDE și ați terminat!
// Cablare tastaturăvar KEYROW = [D7, D6, D5, D4, D3, D2, D1, D0]; var KEYCOL = [A5, A4, D13, D12, D11, D10, D9, D8];
// Hărți cheie pentru tastatură
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 ",];
/ * Dacă un caracter din harta tastelor este> = 128, scădeți 128 și căutați în această matrice coduri de chei cu mai multe caractere * / 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 page up String.fromCharCode (27, 91, 54, 126), // 0x85 pagină în jos]; // Shift status var hasShift = false; function setShift (s) {hasShift = s; // desenați indicatorul de schimbare pe ecran dacă (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 (); }
// Conversia unei chei reale într-o secvență de caractere
// Și trimite la Loopback (unde este consola) funcția handleKeyPress (e) {var kx = e >> 3; var ky = e & 7; if (ky> 3) {// transformați-vă în rândul lung kx + = 8; ky- = 4; } cheie var = hasShift? KEYMAPUPPER [ky] [kx]: KEYMAPLOWER [ky] [kx]; if (cheie == "\ x01") {setShift (! hasShift); } else {setShift (false); if (key && key.length) {if (key.charCodeAt (0)> 127) key = KEYEXTRA [key.charCodeAt (0) -128]; Terminal.inject (cheie); }}}
// configurați tastatura
require ("KeyPad"). conectare (KEYROW, KEYCOL, handleKeyPress);
Pasul 4: Folosind-o
Acum funcționează:
- Tastatura poate detecta o singură apăsare pe rând, astfel încât Shift comută literele mari (cu un indicator în dreapta sus) și tastarea unei litere revine la minuscule. Ținând apăsată tasta Shift și o altă tastă nu va funcționa.
- Tastarea poate fi destul de dureroasă, așa că folosiți tasta Tab (din stânga) cât mai mult posibil pentru completarea automată a cuvintelor!
- Grafica pentru ecran este disponibilă prin metode pe variabila g - de exemplu, g.fillRect (20, 20, 40, 40) sau g.clear ().
- O mulțime de IO este utilizată pentru tastatură, dar aveți în continuare pinii A0, A1, A2 și A3 pe care îi puteți utiliza pentru conectarea hardware-ului extern.
- reset () va reseta totul - inclusiv codul dvs. pentru manipularea tastaturii. Pentru a evita acest lucru, activați Salvare la trimitere, chiar și după resetare în opțiunile de comunicare ale IDE Web și încărcați din nou.
- Calculatorul dvs. este surprinzător de eficient din punct de vedere al consumului de energie - vă puteți aștepta în continuare la o durată de viață a bateriei de aproximativ 20 de zile - întotdeauna pornit - oprit cu o singură baterie CR2032!
Recomandat:
Cum să trimiteți fișiere mari de la computer la computer: 6 pași
Cum să trimiteți fișiere mari de la computer la computer: dimensiunile fișierelor continuă să crească în dimensiune pe măsură ce tehnologia avansează. Dacă vă aflați într-o meserie creativă, cum ar fi proiectarea sau modelarea, sau doar un pasionat, transferul de fișiere mari poate fi o problemă. Majoritatea serviciilor de e-mail limitează dimensiunile maxime ale atașamentelor la aproximativ 25
Circuitul senzorului de distanță cu ultrasunete TinkerCAD (computer computer final): 4 pași
TinkerCAD Ultrasonic Distance Sensor Circuit (Computer Eng Final): Vom crea un alt circuit tinkerCAD distractiv de făcut în timpul carantinei! Astăzi există o adăugare a unei componente interesante, poți ghici? Ei bine, vom folosi un senzor de distanță cu ultrasunete! Mai mult, vom codifica 3 LED-uri
Sonoff B1 Firmware Home Automation Openhab Google Home: 3 pași
Sonoff B1 Firmware Home Automation Openhab Google Home: Îmi place foarte mult firmware-ul Tasmota pentru comutatoarele mele Sonoff. Dar a nu a fost foarte fericit cu firmware-ul Tasmota de pe Sonoff-B1. Nu am reușit pe deplin să-l integrez în Openhab și să-l controlez prin Google Home. Prin urmare, am scris propria mea firmă
Cum să dezasamblați un computer cu pași și imagini ușoare: 13 pași (cu imagini)
Cum să dezasamblați un computer cu pași și imagini ușoare: Aceasta este o instrucțiune despre cum să dezasamblați un computer. Majoritatea componentelor de bază sunt modulare și ușor de îndepărtat. Cu toate acestea, este important să fiți organizat în acest sens. Acest lucru vă va ajuta să nu vă pierdeți piese și, de asemenea, să faceți reasamblarea
Utilizați SSH și XMing pentru a afișa programe X de pe un computer Linux pe un computer Windows: 6 pași
Utilizați SSH și XMing pentru a afișa programe X de pe un computer Linux pe un computer Windows: Dacă utilizați Linux la serviciu și Windows acasă sau invers, este posibil să fiți uneori necesar să vă conectați la computer în cealaltă locație , și rulați programe. Ei bine, puteți instala un server X și puteți activa tunelarea SSH cu clientul dvs. SSH și unul