3.3 Joystick
El Joystick está conectado a los pines A0 y A1 y su valor varía desde 100 hasta 1024.
El pin A0 controla el eje X El pin A1 controla el eje Y
3.3.1 MONTAJE 7 Telesketch
RETO Vamos a realizar el mismo ejemplo que este vídeo de Jorge Lobo pero en vez de realizado en Snap4Arduino lo vamos a hacer en mBlock.
Simplemente vamos a comentar las condicionales principales:
Si A0 es menor que 300 es que estás inclinando el Joystick hacia la izquierda, luego el Sprite tiene que modificar su variable x hacia la derecha, es decir decrementando su valor
Si A0 es mayor que 700 es seguro que estás inclinando el Joystick hacia la derecha luego hay que incrementar el valor de la ordenada X
Para los valores del eje Y es igual, cambiando A0 por A1
SOLUCIÓN
Primero pondremo un objeto lápiz y añadiremos la extensión LAPIZ esto se entiende mejor con un vídeo
Pero no hagas la programación de hacer el cuadrado. Sino este
Donde BAJAR, SUBIR Y BORRAR SON MENSAJES y X e Y son variables globales a todos los objetos. En el arduino el programa será
El programa te lo puedes descargar aqui https://planet.mblock.cc/project/3228849
VA MUY LENTO El resultado lo puedes ver en este vídeo:
Por curiosidad puedes ver el mismo programa en Snap4Arduino en este vídeo:
Puedes ver que es mucho más rápido que mBlock.
3.3.2 MONTAJE 8 Comebichos
No podemos dejar el Joystick sin hacer un videojuego !!
El siguiente RETO es: Mover un Sprite “Bat” con el Joystick para atrapar un Beetle
- Bat se tiene que mover con el joystick por toda la pantalla.
- Beetle se mueve horizontalmente desde el borde derecho hasta el borde izquierdo, y cuando llega al izquierdo, vuelve a aparecer en el derecho (y aleatoriamente desde cualquier altura)
Solución
El programa te lo puedes descargar aquí
El bicho lo haremos mover bastante rápido y al azar en el eje Y para que lo tenga difícil Bat:
Y bat tiene que moverse con el joystick
Los valores de m y n lo hemos calculado con la HOJA DE CÁLCULO que comentamos anteriormente, los valores límites que hemos puesto son:
Para el eje X e Y :0-715
Para el eje Y:
Además hemos añadido la puntuación y el cambio de disfraz para que parezca que aletea:
El resultado es:
Lo sé …. soy bastante malo !!