Cov txheej txheem:

Gamepaduino (Mando Para Videjuegos Hecho Con Arduino): 10 Kauj Ruam
Gamepaduino (Mando Para Videjuegos Hecho Con Arduino): 10 Kauj Ruam

Video: Gamepaduino (Mando Para Videjuegos Hecho Con Arduino): 10 Kauj Ruam

Video: Gamepaduino (Mando Para Videjuegos Hecho Con Arduino): 10 Kauj Ruam
Video: Gamepad con arduino 2024, Hlis ntuj nqeg
Anonim
Gamepaduino (Mando Para Videjuegos Hecho Con Arduino)
Gamepaduino (Mando Para Videjuegos Hecho Con Arduino)

En este pequeño proyecto crearemos un gamepad (tswj de videojuegos), siv rau ntawm CircuitPlayground, aunque se prodría utilizar cualquier placa que cuente con un procesador atmega32u4. Lo que hacemos es programar nuestra placa como un periférico de entrada de datos (teclado). Esto se puede realizar con otras placas como la arduino UNO, pero hay que realizar otra serie de pasos nws instalar programas externos.

Al realizarlo con una placa con el procesador atmega32u4, estamos reduciendo en gran media los pasos y por ende el tiempo de elaboración.

Kauj Ruam 1: Video Paso thiab Paso Del Proyecto

Kauj ruam 2: ⛏Materiales⚒

Cov ntaub ntawv
Cov ntaub ntawv
Cov ntaub ntawv
Cov ntaub ntawv
Cov ntaub ntawv
Cov ntaub ntawv
Cov ntaub ntawv
Cov ntaub ntawv

Los ntawm kev ua kom pom tseeb ntawm cov khoom siv se siv tau:

1 Circuit Court chaw. Aunque este proyecto se puede realizar con cualquier placa arduino que posea un procesador atmega32u4 como por ejemplo: Arduino Micro, Arduino Yun, Arduino Robot, Lilypad USB, Arduino Leonardo.

1 Protoboard

6 Pulsadores (laub khawm).

6 Resistencia ntawm 220 ohm.

14 trocitos de cable de liab.

Kauj Ruam 3: Montaje En Fritzing

Montaje En Fritzing
Montaje En Fritzing

Les comparto la imagen del proyecto montado en fritzing donde muestro como

realicé las conexiones de todos los componente

Kauj ruam 4: Kev tsim kho

Kev tsim kho
Kev tsim kho

Paso 1

Empezaremos fijando la tarjeta a la protoboard para evitar que la tarjeta se mueva. Txhawm rau siv cov podemos siv ib leeg bandas elasticas.

Kauj Ruam 5: Tsim: Pulsadores Y Resistencias

Tsim: Pulsadores Y Resistencias
Tsim: Pulsadores Y Resistencias
Tsim: Pulsadores Y Resistencias
Tsim: Pulsadores Y Resistencias
Tsim: Pulsadores Y Resistencias
Tsim: Pulsadores Y Resistencias
Tsim: Pulsadores Y Resistencias
Tsim: Pulsadores Y Resistencias

Paso 2. Conectamos los pulsadores a la protoboard como se muestra en las imágenes. Tres pulsadores del lado derecho thiab tres del lado izquierdo.

Cada pulsador vamos a conectar una resistencia de 220 ohm a su pata derecha de la parte de abajo, como se muestra en las imágenes, estas resistencias irán conectadas a la fila de xim azul.

Kauj Ruam 6: Tsim: Pulsadores Y 5V

Kev tsim tawm: Pulsadores Y 5V
Kev tsim tawm: Pulsadores Y 5V
Kev tsim tawm: Pulsadores Y 5V
Kev tsim tawm: Pulsadores Y 5V
Kev tsim tawm: Pulsadores Y 5V
Kev tsim tawm: Pulsadores Y 5V

Paso 3

Conectaremos ahora la pata izquierda del lado de abajo de los pulsadores a la fila de xim rojo, donde posteriormente conectaremos los 5v de nuestra placa.

Al kawg las conexiones nos deben quedar como se muestra en las imágenes☝☝

Kauj Ruam 7: Tsim: Pulsadores Y Puertos Digitales De La CircuitPlayground

Tsim: Pulsadores Y Puertos Digitales De La CircuitPlayground
Tsim: Pulsadores Y Puertos Digitales De La CircuitPlayground
Tsim: Pulsadores Y Puertos Digitales De La CircuitPlayground
Tsim: Pulsadores Y Puertos Digitales De La CircuitPlayground
Tsim: Pulsadores Y Puertos Digitales De La CircuitPlayground
Tsim: Pulsadores Y Puertos Digitales De La CircuitPlayground

Pasos 4

Ahora que ya tenemos conectados los pulsadores GND a través de las resistencias de 220 ohm a la fila de colour azul y a VCC a través de los trocitos de cable de red a la fila de xim rojo de nuestra protoboard.

Continuamos ahora conectando nuestra placa (Circuitplayground):

Del Lado derecho de nuestra tarjeta tenemos los botones A, B, C.

1- Conectamos el puerto digital #10 al botón C.

2- Conectamos el puerto digital #9 al botón B.

3- Conectamos el puerto digital #6 al botón A.

Ahora del lado izquierdo de nuestra CircuitPlayground tenemos las flechas izquierda, arriba, derecha

4- Conectamos el puerto digital # 3 al botón que representa la flecha izquierda

4- Conectamos el puerto digital # 2 al botón que sawv cev rau la flecha arriba

4- Conectamos el puerto digital # 0 al botón que sawv cev rau la flecha derecha

Kauj Ruam 8: Programación: Librerias Y Variables

Programación: Librerias Y Variables
Programación: Librerias Y Variables

Realizaremos la programación en el IDE de Arduino

Incluimos las siguientes librerías

#suav nrog

#suav nrog

// si se usa otra placa arduino, esta librería no es necesaria // Definimos los botones del lado derecho int btna = 6; btnb = 9; btnc = 10; // Definimos los botones del lado izquierdo int fiz = 3; int cov = 2; int fder = 0; // Definimos las variables que se cargaran con los datos que nos den los pulsadores (botones del lado izquierdo y derecho) int arriba; koj derecha; koj izquierda; koj tus kheej; koj botonb; koj botonc;

Kauj Ruam 9: Txoj Haujlwm: Void Setup

Qhov Kev Kawm: Void Setup
Qhov Kev Kawm: Void Setup

CircuitPlayground.begin (); // si usamos otra placa arduino esta parte no es necesaria

Keyboard.begin (); // inicializamos el Keyboard // a continuación definimos los puertos de nuestra placa, todos como entradas como se muestra pinMode (farriba, INPUT); pinMode (fder, INPUT); pinMode (fiz, INPUT); pinMode (btna, INPUT); pinMode (btnb, INPUT); pinMode (btnc, INPUT);

Kauj ruam 10: ‍? Programación? ‍? Void Loop

// cargamos los valores de los 6 botones en las variablesarriba = digitalRead (farriba); izquierda = digitalRead (fiz); derecha = digitalRead (fder); botonc = digitalRead (btnc); botonb = digitalRead (btnb); botona = digitalRead (btna);

// Indicamos que teclas queremos que se activen cada vez que presionamos un boton

// flecha izquierda

yog (izquierda == HIGH) {Keyboard.press (KEY_LEFT_ARROW); }

// flecha arriba yog (arriba == HIGH) {Keyboard.press (KEY_UP_ARROW); }

// flecha derecha yog (derecha == HIGH) {Keyboard.press (KEY_RIGHT_ARROW); }

// boton c yog (botonc == HIGH) {Keyboard.press (KEY_UP_ARROW); }

// boton b yog (botonb == HIGH) {Keyboard.press (88); // EL 88 en código ASCII sawv cev rau la tecla X}

// boton yog tias (botona == HIGH) {Keyboard.press (32); // EL 32 en código ASCII sawv cev rau la tecla Espacio

}

} ncua (90);

// esta parte de la programación es para indicarte la PC

// que tiene que liberar las teclas, porque si no las teclas quedarían presionadas

Keyboard.releaseAll ();

Pom zoo: