Paso 5: Sensor en acción
Ahora que ya tenemos nuestra pelota, podemos utilizar el sensor para hacerla mover.
En la sección de loop del programa, hacemos una referencia al controlador que estamos usando otra vez. Luego leemos los datos de pernos x e y y asignar los valores a las variables x1 y y1 respectivamente. La tabla anterior muestra el valor de cada pin dependiendo de la inclinación del dispositivo.
Comparando los valores con los valores "en reposo" podemos determinar si el aparato es ser inclinado a la derecha, izquierda, etc.. Como ejemplo tomemos el primer caso en nuestro programa.
Sabemos que si el aparato es ser inclinado a la derecha, disminuye el valor de "en reposo". Cuando esto sucede, el programa llama a la función "move_right." Esta función borra la pantalla y luego agrega el valor 10 a la variable "varx" (que en este caso es cero). Esto representa el número de píxeles que queremos mover el origen de la bola en el eje x. Entonces nos guarde el nuevo valor de "varx" en la primera ubicación de la matriz. Por último, llamamos a las funciones "FillCircle" y "Flush" para mostrar un nuevo círculo en nuestras pantalla 10 pixeles del círculo anterior en el eje x. El proceso mantiene repitiendo como el valor del pin X es menos de 510, borrando el anterior círculo y dibujando un nuevo 10 pixeles de cada iteración. Esto da la ilusión de que la bola se está moviendo a la derecha.
Sin embargo, si la bola llega al final de la pantalla, se llama a la función "stop_right". Esta función borra la pantalla, establece igual a 126 varx y almacena este valor en la primera ubicación de la matriz. Entonces se llaman las funciones "FillCircle" y "Flush" para dibujar y mostrar una bola con su origen en (126,xy[1]). En otras palabras, el programa detiene los píxeles bola 10 a derecha, y en su lugar se mantenga dibujo el mismo círculo en el borde de la derecha de la pantalla en cualquier lugar y reside.
La misma idea se utiliza cuando el dispositivo está inclinado a la izquierda, hacia arriba o hacia abajo.