Tabla de contenido:

Computadora casera de bricolaje: 4 pasos
Computadora casera de bricolaje: 4 pasos

Video: Computadora casera de bricolaje: 4 pasos

Video: Computadora casera de bricolaje: 4 pasos
Video: Escritorio de Madera para PC Muy Bonito y Fácil de hacer - Tutorial de Carpintería 2024, Mes de julio
Anonim
Computadora casera de bricolaje
Computadora casera de bricolaje

Publiqué un Instructable hace un tiempo usando un Espruino Pico para hacer una computadora en casa:

Ese requería que conectaras un monitor VGA cortando un cable VGA, pero para este Instructable estoy usando una placa llamada Pixl.js, que tiene la pantalla LCD incorporada. Significa que todo lo que tiene que conectar son unos pocos cables y tiene una computadora pequeña y de bajo consumo que se puede usar correctamente.

entonces ¿qué necesitas?

  • Un Espruino Pixl.js
  • Un trozo de plástico o madera para que sirva de base.
  • Una placa de pruebas
  • Teclados 4x 4x4
  • Muchas pegatinas para las llaves.
  • 6 juegos de 8 cables de puente estilo Dupont macho-> macho (48 cables en total): las tiras multicolores a juego hacen la vida mucho más fácil

Paso 1: hacer el teclado

Haciendo el teclado
Haciendo el teclado
Haciendo el teclado
Haciendo el teclado
Haciendo el teclado
Haciendo el teclado
  • Pegue sus 4 teclados uno al lado del otro en su base (son adhesivos). Es posible que desee recortar sus bordes, pero tenga cuidado de no recortar demasiado o podría cortar algunos contactos.
  • Pegue su tablero en el medio, ¡también está pegajoso!
  • Divida el cable de puente en 4 longitudes de 8: intente mantener los colores iguales en cada uno.
  • Pegue los cables en los teclados, asegurándose de que todos los colores coincidan. Dobla los cables hacia atrás y pégalos con cinta adhesiva a la parte posterior de la base. Es posible que desee agregar algunos pies pegajosos para evitar que los cables se doblen en un ángulo demasiado grande.
  • Ahora agregue una etiqueta a cada botón en el teclado y etiquételos como desee para su teclado. Use la imagen como ejemplo, pero cuando cargue su código, puede cambiar la variable 'KEYMAP' a lo que tiene.

Paso 2: cableado

Alambrado
Alambrado

Ahora necesitas conectar el teclado. Cada teclado 4x4 está organizado como una cuadrícula, y los conectamos como si fueran ellos mismos en una cuadrícula de 2x2, formando una gran cuadrícula de botones de 8x8.

Conecte como se muestra en la imagen en 4 grupos de 4 cables a través de la placa de pruebas (verifique los colores de los cables en las imágenes), de izquierda a derecha:

  • Teclado 1 Primeros 4 cables -> primer grupo de 4 en la placa de pruebas -> D0, D1, D2, D3
  • Teclado 1 Segundo 4 cables -> tercer grupo de 4 en la placa de pruebas -> D8, D9, D10, D11
  • Teclado 2 Primeros 4 cables -> primer grupo de 4 en la placa de pruebas -> D0, D1, D2, D3
  • Teclado 2 Segundos 4 cables -> cuarto grupo de 4 en la placa de pruebas -> D12, D13, SDA, SCL
  • Teclado 3 Primeros 4 cables -> segundo grupo de 4 en la placa de pruebas -> D4, D5, D6, D7
  • Teclado 3 Segundos 4 cables -> tercer grupo de 4 en la placa de pruebas -> D8, D9, D10, D11
  • Teclado 4 Primeros 4 cables -> segundo grupo de 4 en la placa de pruebas -> D4, D5, D6, D7
  • Teclado 4 Segundos 4 cables -> cuarto grupo de 4 en la placa de pruebas -> D12, D13, SDA, SCL

En la imagen tenemos 6 juegos de 8 cables. Los primeros 2 son de los teclados 1 y 2, los segundos 2 van a Pixl.js y los terceros 2 son a los teclados 4 y 3.

Paso 3: ¡Software

Ahora asegúrese de que el firmware de su Pixl esté actualizado, conéctese con el IDE de Espruino y cargue el código a continuación. ¡Desconecte el IDE y listo!

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

// Mapas de teclas para el teclado

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 en el mapa de teclas es> = 128, reste 128 y busque en esta matriz códigos clave de varios caracteres * / var KEYEXTRA = [String.fromCharCode (27, 91, 68), // 0x80 left String.fromCharCode (27, 91, 67), // 0x81 right String.fromCharCode (27, 91, 65), // 0x82 arriba String.fromCharCode (27, 91, 66), // 0x83 abajo String.fromCharCode (27, 91, 53, 126), // 0x84 página arriba String.fromCharCode (27, 91, 54, 126), // 0x85 página abajo]; // Estado de cambio var hasShift = false; función setShift (s) {hasShift = s; // dibuja el indicador de cambio en la pantalla if (hasShift) {g.setColor (1); g.fillRect (105, 0, 128, 6); g.setColor (0); g.drawString ("MAYÚS", 107, 1); g.setColor (1); } else {g.setColor (0); g.fillRect (105, 0, 128, 6); g.setColor (1); } g.flip (); }

// Convertir una clave real en una secuencia de caracteres

// Y enviar a Loopback (donde está la consola) function handleKeyPress (e) {var kx = e >> 3; var ky = e & 7; if (ky> 3) {// se convierte en una fila larga kx + = 8; ky- = 4; } var key = hasShift? KEYMAPUPPER [ky] [kx]: KEYMAPLOWER [ky] [kx]; if (clave == "\ x01") {setShift (! hasShift); } else {setShift (falso); if (key && key.length) {if (key.charCodeAt (0)> 127) key = KEYEXTRA [key.charCodeAt (0) -128]; Terminal.inject (clave); }}}

// configurar el teclado

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

Paso 4: ¡Usándolo

¡Usándolo!
¡Usándolo!

Ahora funciona:

  • El teclado solo puede detectar una pulsación a la vez, por lo que Shift alterna las letras mayúsculas (con un indicador en la parte superior derecha) y escribir una letra vuelve a minúsculas. Mantener presionada la tecla Mayús y otra tecla no funcionará.
  • Escribir puede ser bastante doloroso, así que use la tecla Tab (a la izquierda) tanto como sea posible para completar automáticamente las palabras.
  • Los gráficos para la pantalla están disponibles a través de métodos en la variable g, por ejemplo, g.fillRect (20, 20, 40, 40) o g.clear ().
  • Se usa una gran cantidad de E / S para el teclado, pero aún tiene los pines A0, A1, A2 y A3 que puede usar para conectar hardware externo.
  • reset () restablecerá todo, incluido su código para el manejo del teclado. Para evitar esto, active guardar al enviar, incluso después de restablecer en las opciones de comunicación de Web IDE y vuelva a cargar.
  • Su computadora es sorprendentemente eficiente en el consumo de energía; aún podría esperar una duración de la batería de aproximadamente 20 días, ¡siempre encendida y apagada con una sola batería CR2032!

Recomendado: