Stap 46: Software: hoe the LED Grid is bijgewerkt
De beste manier te verklaren het bijwerken van het raster is het gebruik van een klein voorbeeld. Als we wilden oplichten aller de LEDs in ROW7 en al de rest van de LEDs af, zouden we een functie zoals dit schrijven.
VOID Turn_On_ROW7(void)
{
int i;
Schakel elke LED in alle 32 rijen
voor (ik = 0; ik < 32; i ++)
LED_data [i] = 0x000;
Inschakelen van alle 12 van de LED's in ROW7
LED_data [7] = 0xFFFF;
De update vlag instellen zodat de grid zal worden bijgewerkt op de volgende Timer3-interrupt
HT1632_UPDATE = 1;
}
Zodra Timer3 onderbreekt, zal het zien dat HT1632_UPDATE is ingesteld en bel LED_Refresh_Grid(&LED_data) om te werken van het raster met de nieuwe gegevens die we hebben zomaar in de array LED_data [x]. U kunt het raster LED direct (door te roepen LED_Refresh_Screen(x) rechtstreeks vanuit de functie) bijwerken en overschrijven de interrupt, maar voor het grootste deel het is niet nodig.