Cree sus propios botones de acceso directo personalizados con un Arduino

Cree sus propios botones de acceso directo personalizados con un Arduino

El humilde Arduino puede hacer muchas cosas, pero ¿sabías que puede emular un teclado USB? Puede combinar esos atajos de teclado largos difíciles de recordar en una sola tecla de atajo personalizada, con este circuito simple. Aquí está el resultado final:





¿Nunca has usado un Arduino antes? Echa un vistazo a nuestro guía de inicio primero.





Que necesitas

Esto es lo que necesita para hacer este proyecto:





  • 1 x Arduino Pro Micro.
  • Botones momentáneos o botones del teclado.
  • Resistencias de 10K ohmios.
  • Cables de conexión surtidos.
  • 1 x resistencias de 220 ohmios.
  • LED de 1 x 5 mm (0,197 pulgadas).
  • 1 soporte LED de 5 mm.

Necesitará un Arduino muy específico para este proyecto. Estoy usando un Pro Micro , como son tan pequeños y baratos, necesita un Arduino que tenga USB-Serial integrado en el procesador (Atmega32u4). Es posible construir este proyecto con otros Arduinos, como UNO o Nano, sin embargo, requiere mucho trabajo volver a flashear la BIOS y manipular el violín para que las cosas funcionen. Los clones de otros modelos de Arduino no suelen funcionar en absoluto, pero un clon Pro Micro también está bien.

Placa de módulo OSOYOO Pro Micro ATmega32U4 5V / 16MHz con encabezado de pin de 2 filas Reemplazar con ATmega328 Pro Mini para Arduino COMPRE AHORA EN AMAZON

Necesitará un botón momentáneo, una resistencia de 10K ohmios y un cable de conexión apropiado para cada botón que desee utilizar. Estoy usando interruptores de teclado mecánicos Cherry MX para los botones de acceso directo reales, aunque alguna El interruptor funcionará, siempre que sea momentáneo y no se enganche.



Es posible que necesite algunos otros elementos dependiendo de cómo lo construya. Si desea crear un prototipo, necesitará un tablero sin soldadura . Vale la pena gastar el dinero en uno bueno; a veces pueden ser muy poco confiables. Si desea empaquetar esto, querrá comprar un tablero de striptease.

Plan de construcción

Así es como funcionará esto. El Arduino estará programado para actuar como un teclado USB, en lo que respecta a su computadora, lo es. Varios botones conectados al Arduino enviarán comandos de teclado a su computadora. Solo presionará un botón, pero su computadora pensará que ha presionado Todo > F4 , por ejemplo.





Seleccionar un interruptor

Hay varias variaciones de los interruptores de la serie MX. Este sitio web proporciona una excelente introducción, sin embargo, esencialmente se reducen al ruido y la presión. Algunos modelos requieren más fuerza para presionar, y algunos modelos hacen un sonido mecánico de 'clic' cuando se presionan. He usado Cherry MX Browns, que no hacen ruido cuando se presionan. Todos tienen las mismas dimensiones, así que elija el modelo que desee (o mezcle y combine) sin preocupaciones.

También necesitará comprar algunas tapas clave, por supuesto, y hay un mundo de diseños personalizados para elegir: compramos en KeyboardCo en el Reino Unido





El caso

Imprimí en 3D este estuche y puedes descargar el .STL archivos de Thingiverse . No se preocupe si no posee una impresora 3D, aún puede construirla. Muchos sitios web ofrecen servicios de impresión 3D, como Hubs 3D o Shapeways . Alternativamente, este es un caso muy simple, puede hacer el suyo con plasticard, metacrilato, madera o incluso cartón. Si quieres ser realmente ahorrativo, Cherry MX vende un probador / muestreador de interruptores en Amazonas ( Reino Unido ). Necesitará 4 pernos M5 x 35 mm y 4 tuercas M5. Por supuesto, puede sustituirlos por una alternativa adecuada que tenga.

Max Keyboard Keycap, interruptor Cherry MX, kit de tester (kit de tester Pro Sampler de 9 interruptores) COMPRE AHORA EN AMAZON

Si está haciendo su propia carcasa, hay un detalle importante que debe saber: los interruptores Cherry MX se ajustan a presión en sus orificios de montaje. Requieren un orificio de montaje cuadrado de 14 x 14 mm (0,551 pulgadas), y la placa no debe tener un grosor superior a 1,5 mm (0,059 pulgadas). Si se aleja demasiado de estas dimensiones, es posible que los interruptores ya no se monten correctamente.

La carcasa impresa en 3D consta de dos partes, la parte superior y la inferior. Empuje los interruptores Cherry MX en los orificios cuadrados:

Asegúrese de montar los interruptores en la forma correcta. La parte superior tiene las palabras 'CHERRY' y la parte inferior tiene una pequeña muesca. Inserte un LED de 3 mm en esta pequeña ranura:

Puede encontrar que los LED se ven mejor montados 'al revés'. Este fue el caso de las teclas que utilicé, y no afecta en absoluto a los interruptores.

Ahora debería tener nueve interruptores con 9 LED. No es necesario pegar ninguna de estas partes. La soldadura sujetará los LED y la fricción sujetará los interruptores.

A continuación, atornille el soporte del LED (deje el LED retirado por ahora). Terminarás de ensamblar la carcasa más adelante, una vez que el circuito esté construido.

El circuito

Este circuito está construido sobre stripboard. Esto es excelente para construir circuitos semipermanentes, sin el costo de una placa de circuito de impresión (PCB). Es simplemente una pieza de fibra de vidrio con pistas de cobre que corren paralelas en una dirección. Estas pistas se pueden soldar y cortar. El corte de una pista se puede hacer con una herramienta especial o una broca pequeña.

¿No tienes mucha confianza en la soldadura? Primero, eche un vistazo a estos proyectos sencillos.

Aquí está el diseño del stripboard (excluye los clientes potenciales finales):

Asegúrese de cortar los rastros debajo de las resistencias y el Arduino. Como puede ser muy difícil leer un circuito de placa, aquí hay una versión de placa:

Es un ajuste perfecto para apretar todos los componentes en un espacio tan pequeño. Corta las esquinas de tu stripboard de la siguiente manera:

Esto debería encajar perfectamente en la parte inferior de la carcasa:

Asegúrese de que las pistas se ejecuten verticalmente.

Conecte el ánodo ( pierna larga, positivo ) del LED a la resistencia de 200 ohmios y luego a +5 V.Conecte el cátodo ( pierna corta, negativa ) al suelo. Cubra las piernas con una funda termorretráctil y luego empújela en el soporte del LED. No es necesario ningún pegamento, sin embargo, es posible que su soporte de LED no se ajuste a presión, por lo que es posible que deba adaptar estas instrucciones.

Es posible que desee utilizar un LED bicolor aquí en su lugar; esto le permitirá configurar dos o más bancos de interruptores, con un LED de estado de color diferente para cada banco.

Ahora es el momento de soldar todos los LED de las teclas. Estos se utilizan únicamente para hacer que las teclas brillen, por lo que puede omitirlas si lo desea, y no tienen que estar conectadas a un pin digital, solo a la alimentación. Conecte todos los ánodos juntos y todos los cátodos juntos. Aprenda de mi error: ¡es mucho más fácil hacer esto antes de conectar los interruptores! Conecte los ánodos a +5 V a través de una resistencia de 220 ohmios y los cátodos a tierra. Estos LED están conectados en paralelo. Aquí está el circuito solo para estos LED:

Use un pequeño trozo de tubo termorretráctil para cubrir la conexión entre los LED y el Arduino:

Encienda el Arduino para probar que todos los LED funcionan. No es necesario cargar ningún código. Si alguno de los LED no funciona, revise el cableado.

Ahora conecte los interruptores. Estos deben estar conectados a través de una resistencia de 10k, de lo contrario el Arduino morirá. Esto se llama un cortocircuito: +5 V va directamente al suelo, y todo lo que queda de su Arduino será una bocanada de humo (créame, ya maté a uno para que usted no tenga que hacerlo). Aquí está el circuito para un interruptor:

Este circuito es el mismo para los nueve interruptores. Conecte los interruptores a los pines digitales del dos al diez, cada uno con su propia resistencia de 10K a tierra. Tenga cuidado al soldar los interruptores Cherry MX, pueden ser un poco frágiles, se me rompieron varios pines. Es posible que desee soldarlos directamente a un poco más de stripboard, sin embargo, los cables finales siguen siendo adecuados.

Eso es todo por el cableado. Es posible que desee montar un conector hembra USB tipo B, sin embargo, las pequeñas clavijas en ellas a menudo pueden ser bastante difíciles de soldar. Si no desea hacer esto, no se preocupe. El conector Micro USB del Arduino encaja perfectamente en el orificio del chasis. Si está un poco confundido acerca de los diferentes tipos de USB, asegúrese de entender las diferencias .

Finalmente, verifique que su circuito sea correcto. Un corto puede destruir fácilmente un Arduino, y puede ser fácil de hacer usando stripboard.

El código

Ahora prueba que el circuito sea correcto. Es una buena idea hacer esto antes de continuar, para que pueda solucionar cualquier problema ahora mientras pueda. Cargue este código de prueba (no olvide seleccionar la placa y el puerto correctos del Instrumentos > Tablero y Instrumentos > Puerto menús):

|_+_|

Es posible que deba cambiar los pines si ha modificado el circuito.

Una vez cargado, abra el monitor en serie ( parte superior derecha > Monitor en serie ). Uno por uno, presione cada botón. Debería ver que el monitor serial muestra el número del botón que presionó. Al igual que con el LED, si su computadora se queja de consumir demasiada corriente o los LED se apagan cuando presiona un botón, ¡desconéctelo inmediatamente! Tiene un corto en algún lugar del circuito, verifique que el circuito sea correcto y que no haya cortocircuitos entre las conexiones.

Si todo está funcionando, sigue adelante y coloca el circuito en la caja. Es posible que desee usar un poco de pegamento para mantener el circuito en su lugar (aunque los cables mantuvieron el mío bien). Atornille la tapa también.

Hacer que Arduino parezca un teclado es muy simple. Si está usando un Nano o UNO, va a reprogramar su Arduino usando Actualización de firmware del dispositivo (DFU). Esto generalmente se usa para actualizar el nuevo firmware al Arduino. Lo usará para actualizar el Arduino con un nuevo firmware que lo hará funcionar como un teclado. Esto no se tratará aquí, ya que es una tarea bastante compleja. los Sitio web de Arduino tiene un buen tutorial para esto.

Arduino Pro Micro facilita este paso. La lógica necesaria para emular un teclado USB ya está integrada en el procesador, por lo que es tan simple como escribir un código.

Primero, configure las claves:

|_+_|

Esta es una matriz que contiene todos los pines a los que están conectados los botones. Si ha utilizado más o menos botones o ha utilizado pines diferentes, cambie los valores aquí.

Una matriz es una colección de cosas afines. Las computadoras pueden optimizar su código para acceder a ellos rápidamente y aceleran el proceso de escritura del código.

Ahora inicialice todos los pines como entradas:

|_+_|

Esto le dice al Arduino que todos los pines de la matriz son entradas. Se usa un bucle para hacer esto, así que en lugar de escribir pinMode (2, ENTRADA) nueve veces, solo tienes que escribirlo una vez. Esto también llama Keyboard.begin . Esto configura una función integrada en la biblioteca Arduino, diseñada específicamente para emular un teclado.

Crea un método llamado readButton :

|_+_|

Esto toma un alfiler y verifica si ha sido presionado o no. Simplemente vuelve CIERTO o FALSO . También contiene algunos software de eliminación de rebotes - un simple retraso y luego volver a verificar el interruptor asegura que el botón realmente fue presionado.

Ahora se llama otro bucle for dentro bucle vacío () :

|_+_|

Nuevamente, esto revisa todos los elementos de la matriz y verifica si se ha presionado. Hace esto por llamado readButton método que creó anteriormente. Si se ha presionado un botón, pasa ese número de pin a otro método llamado doAction :

|_+_|

Esto verifica el número de pin usando un cambiar declaración. Cambiar declaraciones (a veces llamadas caso de interruptor ) son similares a un si declaración, sin embargo, son útiles para comprobar que una cosa (en este caso, el número de pin) es igual a uno de varios resultados diferentes. Esencialmente, son mucho más rápidos de calcular.

Los componentes principales están dentro de esta declaración de cambio. Keyboard.println escribe texto en la computadora como si hubiera escrito físicamente cada tecla. Keyboard.press presiona y sostiene una tecla. No olvides liberarlos usando Keyboard.releaseAll después de un breve retraso!

cómo saber si el teléfono celular está intervenido

Aquí está el código completo:

|_+_|

Además de todas las teclas numéricas y de letras, el Arduino puede presionar la mayoría de las teclas especiales llamadas Modificadores de teclado . Son particularmente útiles para presionar atajos de teclado. El sitio web de Arduino tiene una lista útil .

Ahora todo lo que queda es crear algunos atajos. Puede asignar esto a los accesos directos existentes, como Todo + F4 (cierre el programa en Windows) o Cmd + Q (salir del programa macOS). Alternativamente, asegúrese de leer nuestro guía definitiva de atajos de teclado , cómo crear accesos directos de Windows, y todos los atajos de Chromebook para comenzar a crear sus propios atajos.

¿Ha creado su propio cuadro de acceso directo? Házmelo saber en los comentarios, ¡me encantaría ver algunas fotos!

¡Esperamos que te gusten los artículos que recomendamos y comentamos! MUO tiene asociaciones afiliadas y patrocinadas, por lo que recibimos una parte de los ingresos de algunas de sus compras. Esto no afectará el precio que paga y nos ayuda a ofrecer las mejores recomendaciones de productos.

Cuota Cuota Pío Correo electrónico He aquí por qué el FBI emitió una advertencia sobre el ransomware Hive

El FBI emitió una advertencia sobre una variedad de ransomware particularmente desagradable. He aquí por qué debe tener especial cuidado con el ransomware Hive.

Leer siguiente
Temas relacionados
  • Bricolaje
  • Teclado
  • Atajos de teclado
  • Arduino
Sobre el Autor Joe Coburn(136 Artículos publicados)

Joe es licenciado en Ciencias de la Computación por la Universidad de Lincoln, Reino Unido. Es un desarrollador de software profesional, y cuando no está volando drones o escribiendo música, a menudo se le puede encontrar tomando fotos o produciendo videos.

Más de Joe Coburn

Suscríbete a nuestro boletín

¡Únase a nuestro boletín de noticias para obtener consejos técnicos, reseñas, libros electrónicos gratuitos y ofertas exclusivas!

Haga clic aquí para suscribirse