Paso 46: Software: cómo la rejilla LED se actualiza
La mejor manera de explicar cómo actualizar la cuadrícula es con un pequeño ejemplo. Si queríamos encienden todos los LEDs en ROW7 y tienen todas el resto de los LED, escribimos una función como ésta.
void Turn_On_ROW7(void)
{
int i;
Claro cada LED en todas las filas de 32
para (i = 0; i < 32; i ++)
LED_data [i] = 0x000;
Activar todos los 12 de los LEDs en ROW7
LED_data [7] = 0xFFF;
Establece el indicador de actualización para que la red se actualizará en la siguiente interrupción del Timer3
HT1632_UPDATE = 1;
}
Tan pronto como se interrumpe el Timer3, verá que HT1632_UPDATE y llame a LED_Refresh_Grid(&LED_data) para actualizar la cuadrícula con los nuevos datos que hemos puesto sólo en la matriz LED_data [x]. Puede actualizar la red LED directamente (mediante una llamada a LED_Refresh_Screen(x) directamente de la función) y reemplazar la interrupción, pero en su mayor parte no es necesario.