Añadir botones a tu Joystick X52-Pro con un Arduino Micro (4 / 12 paso)

Paso 4: Escriba su bosquejo de la prueba

Ahora debe escribir un bosquejo en el Arduino para probar los botones. Desea obtener el código para escribir resultados de depuración en el puerto serie para mostrar que cada botón está funcionando como se esperaba. En esencia, para cada clavija de entrada simplemente debe configurar el pin para aceptar la entrada y ver el pin para ver cuando va de alto (+ 5v/Vcc) a bajo (0v/Gnd). ¿Hacer esto 12 veces y eres oro, derecha? Desafortunadamente la vida no es así de simple.

En primer lugar usted necesita para asegurarse de que cuando no se presiona el botón, el pin obtiene un 5v constante, y cuando se pulsa se pone a 0v. Esto requiere el uso de una resistencia de pull-up. Si eres nuevo en electrónica esto puede sonar un poco raro pero tiene sentido cuando se piensa en él. Más información sobre las resistencias de pull-up aquí: https://learn.sparkfun.com/tutorials/pull-up-resistors. Afortunadamente el Arduino Micro tiene la capacidad de permitir resistencias pull-up internas para que no tenga que hacerlo usted mismo. Para cada perno de la entrada, sistema del perno como tal en la función setup() void:

 pinMode(2, INPUT_PULLUP); // The number represents the pin number 

Así que en mi caso lazo a través de una amplia gama de pernos como sigue:

 const int switchCount = 12; void setup() { for (int i=0; i <= (switchCount -1); i++) { // Make the pushButton pin an input pinMode(i, INPUT_PULLUP); } } 

Ahora usted necesita leer el estado de los botones. En teoría este es un simple. Para leer el estado del pin 2 sólo usa la función digitalRead():

 switch2State = digitalRead(2); 

Sin embargo, cuando se pulsa un botón generalmente obtienes un poco de ruido por unas milisegundos y esto puede parecer como si se se presiona rápidamente el botón. Esto puede hacer la vida difícil decir lo menos. Lo que tienes que hacer es 'debounce' el botón. Esencialmente usted leer el estado del botón, si el estado ha cambiado entonces que espera un poco antes de leer otra vez. Este debe dar el estado actual del botón sin él agitando locamente. Consulte http://arduino.cc/en/Tutorial/Debounce para obtener más información.

Esto es un poco peludo para más que un par de botones así que hice uso de la Bounce2 biblioteca para simplificar las cosas. Ver http://playground.arduino.cc/Code/Bounce para más detalles. Todo lo que necesitas hacer es descargar el archivo Bounce2-master.zip desde el enlace anterior y colocar en la carpeta de Arduino bibliotecas antes de iniciar el IDE. Luego añadir esta línea al comienzo del boceto:

 #include <Bounce2.h> // http://playground.arduino.cc/Code/Bounce 

Entonces puede adjuntar un objeto de gorila a cada pin del lo debounce y obtener una lectura limpia cuando el botón es presionado o liberado.

 // create a bouncer objectBounce tempBouncer = Bounce(); tempBouncer.attach(2); // Attach pin 2 to the Bouncer object tempBouncer.interval(10); // Set the DeBounce timeout in milliseconds 

Ahora se puede leer nítidamente cada botón basta mantener una nota de su estado cada vez que lee el pin y hacer algo si los cambios de estado. El esbozo adjunto podrá leer 12 botones y es la salida de una línea de depuración cada vez que un botón es presionado o liberado. Sólo subir el boceto a la Junta y una vez que vea la prensa luz LED CMD + SHIFT + M (Mac) o CTRL + MAYÚS + M (Win) para abrir al Monitor serie. Hay un montón de comentarios en línea para hacerle saber lo que está sucediendo.

Artículos Relacionados

Programar Arduino Pro Mini usando Arduino Uno

Programar Arduino Pro Mini usando Arduino Uno

Hola a todos. Hoy voy a mostrar como programar arduino pro mini usando arduino uno.Si ya tenías un arduino uno y nuevamente comprar arduino pro mini entonces usted no necesita comprar el convertidor USB a serial para programar el arduino pro mini por
Subir sketch Arduino Pro Mini usando Arduino UNO

Subir sketch Arduino Pro Mini usando Arduino UNO

He comenzado mi camino con el arduino UNO, hacia el mini pro no comprar el adaptador USB, pero el Consejo UNO que sirve para subir mis dibujos.Paso 1: Quitar el Atmel ICMuy cerfuly quitar el IC Atmel de Arduino UNO, las clavijas son muy gentel así qu
Con un joystick con tu Arduino

Con un joystick con tu Arduino

Palancas de mando son una gran fuente de entrada para un proyecto. Especialmente para la robótica. Como los hackers de hardware la mayoría de nosotros siempre ha amado a este tipo de cosas. Excepto los chicos nuevos a esto podrían ser difícil de capt
Subir bocetos a Arduino Mini Pro uso de Arduino UNO (sin quitar el Atmel Chip)

Subir bocetos a Arduino Mini Pro uso de Arduino UNO (sin quitar el Atmel Chip)

Esto describe un procedimiento para hacer uso de USB incorporado de Arduino UNO a Serial(TTL) subir bocetos a tablero de Arduino Mini Pro sin necesidad de quitar la viruta de regulador micro Atmel de UNO. Esto es útil para aquellos empezando con plac
Añadir un pequeño joystick de pulgar de dos ejes analógicos a su palanca de mando existente.

Añadir un pequeño joystick de pulgar de dos ejes analógicos a su palanca de mando existente.

Después compré un Thrustmaster Hotas Flight Stick X para Elite peligroso, quería dos ejes analógicos adicionales para el empuje lateral/vertical.Después de algunos googleando, me encontré esta entrada de blog agradable: convertir un Arduino Leonardo
Añadir botones en el ratón

Añadir botones en el ratón

He estado jugando FPS juegos en mi PC por un tiempo ahora y me encontrado con frecuencia necesidad de más botones en mi ratón. Es al mismo tiempo compré un Logitech G9, pero en algunos juegos incluso que los botones que los extra 4 parecen ser pocos.
Pimp tu viejo Mac Pro con una unidad de fusión

Pimp tu viejo Mac Pro con una unidad de fusión

yo soy usuario de Mac mucho tiempo. En 2008 compraron un Mac Pro y he usado y amado durante mucho tiempo. Para citar a un buen amigo mío, se está haciendo bastante largo en el diente. Como apple no ha lanzado un nuevo en un tiempo y no hay diferencia
Ver instructivo como usuario pro con características adicionales (todas las medidas en una página + guardar).

Ver instructivo como usuario pro con características adicionales (todas las medidas en una página + guardar).

Este es mi primer instructable. Si tienes alguna sugerencia, por favor me avisan. Esperamos que disfrute de esto. Has pensado de ver todos los pasos de un instructivo en una sola página y guardarlo. Aquí es una técnica para conseguirlo con algunas ca
Añadir Bluetooth a una pantalla de LCD con entrada serial

Añadir Bluetooth a una pantalla de LCD con entrada serial

Pantallas de LCD con entrada serial pueden actualizarse a Bluetooth mediante un puerto de serie Bluetooth JY-MCU. Una buena razón para hacer esto es por lo que la pantalla se puede utilizar con un teléfono Android o tablet. Una sencilla aplicación An
Cómo hacer botones de capa de Jack Sparrow con la resina.

Cómo hacer botones de capa de Jack Sparrow con la resina.

Materiales utilizados:Piezas de madera y tacoLadrillos de LEGOSuper sculpeyResina de epoxy,vaselinaCaucho de silicónAlambre de cobre (2mm),Yeso de París,Escritores de oro tamaño,Polvo de broncePinturas de acrílicoAlambres finos (para colgar botones)E
Un mecanismo de liberación del paracaídas con un Arduino Mini Pro

Un mecanismo de liberación del paracaídas con un Arduino Mini Pro

este es un mecanismo de liberación del paracaídas para un cohete modelo, he construido para un cohete de agua pero trabajar otros tipos. Utiliza un Arduino mini pro (http://www.sparkfun.com/products/9218) que es realmente bueno para esto ya que pesa
Utilizando el teclado de botones de sparkfun 12, con el arduino

Utilizando el teclado de botones de sparkfun 12, con el arduino

Hola chicos, bien comprado este teclado y no estaba exactamente seguro de cómo cablear, porque los pernos no están en orden!bueno, le daré un esquema y que para arriba y en ningún momento...Paso 1: cableado La imagen lo dice todo...las resistencias p
Cómo configurar 2014 flashcart R4i Gold Pro con kernel V3.4b a trabajar con nintendo firmware V7.1.0 16u

Cómo configurar 2014 flashcart R4i Gold Pro con kernel V3.4b a trabajar con nintendo firmware V7.1.0 16u

recientemente, el núcleo de flashcart R4i Gold Pro 2014 han sido actualizados a V3.4b, por lo que este post pretende mostrar cómo configurar el flashcart R4i Gold Pro 2014 con kernel V3.4b a trabajar con nintendo firmware V7.1.0 16u.Antes de empezar,
Añadir un encendedor Bic a su llavero con un soporte de impresión 3d.

Añadir un encendedor Bic a su llavero con un soporte de impresión 3d.

Este es un truco fácil para su encendedor siempre contigo, en tu llavero.Con un 3d realmente pequeño impreso piezas.Si no cabe causa el titular es demasiado apretado, que usted puede cortar con una sierra de metal para darle un poco de elasticidad.Se