Étape 8: À l’aide d’un tableau pour stocker et définir les États d’une matrice de LED
Dans la dernière étape, nous avons vu comment utiliser octets simplifié le processus d’établissement des États de chaque ligne dans la matrice de LED. Maintenant, nous allons prendre un coup d’oeil à une stratégie pour stocker ces informations dans un tableau. Un tableau est un endroit où nous pouvons stocker une collection d’associés variables, dans ce cas, je vais utiliser un tableau pour stocker les États de chaque ligne dans la matrice. Puisque nous sommes les représentants des États de chaque ligne de la matrice à l’aide d’un octet, et il y a 8 rangées, j’aurai besoin d’un tableau de 8 octets pour stocker les États de toutes les 64 LED dans la matrice de LED. Voici comment le tableau est créé
ledStates Byte [8] = {0, 15, 0, 0, 0, 84, 0, 0} ;
J’ai initialisé le tableau avec un ensemble d’octets, j’ai jeté en quelques octets non nulle de voir comment ils apparaissent sur la matrice de LED. Voici comment le tableau est utilisé :
Afin d’obtenir une variable stockée dans un tableau, vous utilisez la syntaxe suivante :
arrayName [variableIndex]
où variableIndex est l’emplacement de la variable dans le tableau. Par exemple :
ledStates [0] est égal à 0
ledStates [1] est égal à 15
parce que le premier (index = 0) élément du tableau est 0 et le second (indice = 1) est de l’élément dans le tableau 15.
Étant donné que je ne suis plus itération sur la pinNums dans ma boucle for, j’ai créé une fonction d’assistance qui convertit entre ma variable itérateur « i » et la broche de l’Arduino connectée à la ligne d’intérêt :
int getPinNumForLEDIndex (int index) {}
indice de rendement + 6 ;
}
Essayez de changer les octets dans le tableau de ledStates pour voir comment elles affectent la sortie de la matrice. Également essayer de changer les variables stockées dans ledStates comme les courses de croquis, utilisez la syntaxe suivante :
ledStates [indexNum] = newValue
Vous pouvez également définir les États des voyants utilisant des octets qui sont rédigés comme suit :
B11011011
Le B permet d’Arduino sait qu’il doit s’attendre à un nombre binaire, alors les prochain 8 numéros sont les 8 chiffres en binaire que vous souhaitez afficher. Cela le rend un peu plus facile à concevoir un modèle 2D sur la matrice de LED. Essayez d’utiliser ce tableau :
ledStates Byte [8] = {B0111100, B01000010, B10110101, B10000101, B10000101, B10110101, B01000010, B0111100} ;