Paso 5: programación
El código:
Todo el código se separa hacia fuera en las funciones individuales que manejan diferentes animaciones. Hay cosas que van desde PacMan y Space Invaders a desplazarse continuamente a través de "Jaja". Entonces esas animaciones son controlados a través de funciones en el archivo principal de C++ basado en pulsar un botón el usuario. Esta es la idea básica de cómo funciona el código, sigue leyendo para una más profunda dentro de a partir de nivel en el SPI.
Así que para la salida a los registros de cambio solía construido en función de la viruta del Atmeg328 comunicarse a través de líneas serie.
SPI.transfer(byte); cambiará de puesto hacia fuera el byte que sería de la misma manera shiftOut(byte) pero SPI lo hace mucho más rápido.
Se leen los datos de una serie larga de datos hexadecimales. Si no sabes las operaciones bit a bit básicas que no tiene mucho sentido, pero en esencia es la lectura dataToDisplay() la los bytes y ponerlos en algo que puede ser cambiado de puesto hacia fuera a los registros.
tiempo hexadecimales números son introducidos en la primera columna de la pantalla y luego se cambian de puesto dirigido hacia la derecha por shiftClockwise(). Esto puede hacerse ya sea poco a poco, si quieres salida y desplazamiento a continuación en el sombrero o muy rápido para mostrar una imagen entera en un momento.
Los datos se pueden crear a mano dibujando una imagen de la animación en píxeles y luego convertir en binario y luego convertir en hexadecimal. Puedes ver mi ejemplo junto con una página en blanco para imprimir hacia fuera si usted quiere hacer su propia, me encantaría ver qué cool animaciones se pueden hacer. Es difícil hacer que las cosas se vean bien esta baja de resolución.
Estas cadenas de datos se llevan a cabo en el archivo animation.h en las variables de largo sin signo. Algunas frases son demasiado grandes para esto para que obtener una matriz más grande con propiedades multidimensionales. Y las funciones también son diferentes para tener en cuenta esto.