Paso 3: Creación de un prototipo continuó
ShiftDatas.ino es básicamente la matriz que tiene los bytes para cada carácter/número que puede mostrarse.
También tiene el display() función que es básicamente cambia de puesto hacia fuera un octeto para un carácter de un dígito, lo apaga, cambia de puesto hacia fuera un octeto diferente y se apaga otro dígito. Esto es la multiplexación.
Esta es la matriz de caracteres. Usted puede llamar a un determinado byte n llamando dígitos [n].
Como dije antes, Q0, Q1, Q2, Q3, Q4, Q5, Q6 y Q7 cada control a, b, c, d, e, f, g y dp respectivamente.
Si quería mostrar el número '0', que necesito encender los segmentos a, b, c, d, e y f. Esto significa que las necesidades de registro de cambio para cambiar de puesto hacia fuera 0b11111100, que es un hexadecimal 0xFC.
Es lo hice.
¿Recuerda antes cómo escribí pantalla (dig1, dig2, dig3, dig4) en el código WATCHG?
Cada argumento se maneja en esta función.
Permite decir que quería mostrar 4:20. Esto significa dig1 es 0, dig2 es 4, dig3 es 2 y dig1 es 0.
Para mostrar todos los números, hacer esto:
- cambio de bits 0, encienda dig4
- Apague dig4, cambiar de puesto hacia fuera pedacitos 2, encender dig3.
- Apagar dig3, cambio de bits para 4, Active dig2.
Apagar dig2, cambio de bits 0, encender dig1.
Y luego para siempre. El microcontrolador lo hace tan rápido los números parecen mostrar al mismo tiempo, aunque cada uno es encendido y apagado muy rápido.