Taula de continguts:

Ordinador casolà de bricolatge: 4 passos
Ordinador casolà de bricolatge: 4 passos

Vídeo: Ordinador casolà de bricolatge: 4 passos

Vídeo: Ordinador casolà de bricolatge: 4 passos
Vídeo: Беслан. Помни / Beslan. Remember (english & español subs) 2024, De novembre
Anonim
Ordinador casolà de bricolatge
Ordinador casolà de bricolatge

Fa poc vaig publicar un Instructable amb un Espruino Pico per fer un ordinador domèstic:

Aquell requeria que connectés un monitor VGA tallant un cable VGA, però per a aquest instructiu estic fent servir una placa anomenada Pixl.js, que té la pantalla LCD incorporada. Significa que tot el que heu de connectar són uns quants cables i teniu un ordinador petit i de baixa potència que es pot utilitzar correctament.

Què necessiteu, doncs?

  • Un Espruino Pixl.js
  • Un tros de plàstic o fusta per fer de base
  • Una taula de pa
  • Keypads 4x 4x4
  • Molts adhesius per a les claus
  • 6 jocs de cables de pont 8x masculí-> masculí tipus Dupont (48 cables en total): les tires multicolors que coincideixen faciliten la vida

Pas 1: fabricació del teclat

Fent el teclat
Fent el teclat
Fent el teclat
Fent el teclat
Fent el teclat
Fent el teclat
  • Poseu els vostres 4 teclats al costat de la base (estan enganxats). És possible que vulgueu retallar les seves vores cap avall, però tingueu cura de no retallar-les massa o potser tallareu alguns contactes.
  • Poseu la tauleta de suport cap avall al centre: també queda enganxosa.
  • Dividiu el cable de pont en 4 llargs de 8: intenteu mantenir els colors iguals a cadascun.
  • Introduïu els cables als KeyPads i assegureu-vos que tots els colors coincideixin. Doblegueu els cables cap enrere i enganxeu-los a la part posterior de la base. És possible que vulgueu afegir uns peus enganxosos per evitar que els cables es doblegin en un angle massa gran.
  • Ara afegiu un adhesiu a cada botó del teclat i etiqueteu-los com vulgueu amb el teclat. Utilitzeu la imatge com a exemple, però quan pengeu el codi podeu canviar la variable "KEYMAP" a la que tingueu.

Pas 2: cablejat

Cablejat
Cablejat

Ara cal connectar el teclat. Cada teclat 4x4 està disposat com una quadrícula i els connectem com si estiguessin ells mateixos en una quadrícula de 2x2, formant una gran quadrícula de botons de 8x8.

Connecteu el fil com es mostra a la imatge en 4 grups de 4 cables a través de la taula de visualització (comproveu els colors dels cables de les imatges), d’esquerra a dreta:

  • KeyPad 1 Primers 4 cables -> primer grup de 4 a taulers -> D0, D1, D2, D3
  • KeyPad 1 Second 4 cables -> tercer grup de 4 a taulers -> D8, D9, D10, D11
  • KeyPad 2 Primers 4 cables -> primer grup de 4 a la taula de treball -> D0, D1, D2, D3
  • KeyPad 2 Second 4 cables -> quart grup de 4 a taulers de suport -> D12, D13, SDA, SCL
  • KeyPad 3 Primers 4 cables -> segon grup de 4 a taulers -> D4, D5, D6, D7
  • KeyPad 3 Second 4 cables -> tercer grup de 4 a taulers -> D8, D9, D10, D11
  • KeyPad 4 Primers 4 cables -> segon grup de 4 a taulers -> D4, D5, D6, D7
  • KeyPad 4 Second 4 cables -> quart grup de 4 a taulers -> D12, D13, SDA, SCL

A la imatge tenim 6 jocs de 8 cables. Els primers 2 provenen dels teclats 1 i 2, els segons 2 van a Pixl.js i els tercers 2 són als teclats 4 i 3.

Pas 3: programari

Ara assegureu-vos que el microprogramari del Pixl estigui actualitzat, connecteu-vos-hi amb l’IDE d’Espruino i pengeu el codi següent. Desconnecteu l'IDE i ja heu acabat.

// Cablatge del teclat KEYROW = [D7, D6, D5, D4, D3, D2, D1, D0]; var KEYCOL = [A5, A4, D13, D12, D11, D10, D9, D8];

// Mapes de tecles per al teclat

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

/ * Si un caràcter al mapa de tecles és> = 128, resteu 128 i busqueu en aquesta matriu codis de claus de diversos caràcters * / var KEYEXTRA = [String.fromCharCode (27, 91, 68), // 0x80 left String.fromCharCode (27, 91, 67), // 0x81 right String.fromCharCode (27, 91, 65), // 0x82 amunt String.fromCharCode (27, 91, 66), // 0x83 avall String.fromCharCode (27, 91, 53, 126), // 0x84 pàgina String.fromCharCode (27, 91, 54, 126), // 0x85 pàgina avall]; // Estat del canvi var hasShift = false; funció setShift (s) {hasShift = s; // dibuixeu un indicador de desplaçament a la pantalla si (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 (); }

// Converteix una clau real en una seqüència de caràcters

// I enviar a Loopback (on hi ha la consola) funció handleKeyPress (e) {var kx = e >> 3; var ky = e & 7; if (ky> 3) {// converteix-se en fila llarga 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 (clau); }}}

// configureu el teclat

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

Pas 4: utilitzeu-lo

Usant-lo!
Usant-lo!

Ara funciona:

  • El teclat només pot detectar una sola pulsació cada vegada, de manera que Maj canvia les lletres majúscules (amb un indicador a la part superior dreta) i escrivint una lletra es torna a minúscula. Mantenir premuda la tecla Maj i una altra tecla no funcionarà.
  • Escriure pot ser molt dolorós, així que utilitzeu la tecla Tabulador (a l’esquerra) tant com sigui possible per omplir automàticament les paraules.
  • Els gràfics de la pantalla estan disponibles mitjançant mètodes de la variable g, per exemple, g.fillRect (20, 20, 40, 40) o g.clear ().
  • Es fa servir molta E / S per al teclat, però encara teniu els pins A0, A1, A2 i A3 que podeu utilitzar per connectar maquinari extern.
  • reset () restablirà tot, inclòs el vostre codi per al maneig del teclat. Per evitar-ho, activeu l'opció Desa l'enviament, fins i tot després de restablir-les a les opcions de comunicació de l'IDE web i torneu a carregar-la.
  • El vostre equip és sorprenentment eficient en termes de consum energètic (encara podríeu esperar una durada aproximada de 20 dies de la bateria), sempre encès i apagat amb una sola bateria CR2032.

Recomanat: