Étape 6: codage
Si vous êtes nouveau à la programmation, se concentrer sur faire votre code aussi intuitif que possible. L’efficacité vient qu’en seconde. Voici une façon simple de commencer en affichant une image statique. Essayez ceci sur le prototype :
-Ce système de codage suppose que toutes les lignes de la cathode sont câblées en séquence et anodes sont câblés dans une autre séquence. Les variables globales sont les suivantes :
int loop_delay = 1 ; La durée (en ms) chaque LED dans une boucle est mémorisé sur pour atteindre POV.
int cathode_start ; La première broche de cathode. La goupille de départ de la séquence de la cathode.
int anode_start ; La première broche d’anode. À partir de broche de la séquence de l’anode.
-Déclarer et initialiser avec une portée globale (c'est-à-dire, en dehors de void_loop() et void_setup()) un tableau de 4 x 4 pour afficher « J » comme ça. Nous allons écrire le contenu de ce tableau de notre prototype. Chaque 1 est une marche et 0 est éteint.
int disp [4] [4] = {}
{1,1,1,1},
{0,0,1,0},
{1,0,1,0}.
{0,1,0,0}} ;
-Initialiser les LEDs à tous hors void_setup(), c’est à dire, tous les anodes faible et tous les cathodes haute.
void setup() {}
pour (int i = 0; i < 4; i ++)
{
digitalWrite (i + cathode_start, HIGH) ;
digitalWrite (i + anode_start, faible) ;
}
}
-Écrire une fonction qui parcourt les voyants correspondants.
void lightup() {}
pour (int i = 0; i < 4; i ++)
pour (int j = 0; j < 4; j ++)
Si (disp [i] [j] == 1)
{
digitalWrite (i + anode_start, HIGH) ; Allumer la LED (i, j)
digitalWrite (j + cathode_start, faible) ;
retard (loop_delay) ; Conservez pour cette longueur pour atteindre le taux de rafraîchissement
digitalWrite (i + anode_start, faible) ;
digitalWrite (j + cathode_start, HIGH) ; Désactiver les LED (i, j)
}
}
-Appeler la fonction ci-dessus pour afficher le contenu de notre tableau à 2 Dimensions (disp) de void_loop() pour fonctionner en continu.
void_loop()
{
LightUp() ;
}
Votre prototype devrait maintenant afficher notre gamme de 4x4.
Si vous voulez faire des jeux sur l’écran, ce qui précède peut fonctionner comme votre « moteur de jeu ». Pensez à votre tableau en tant que votre écran de jeu et écrire des fonctions pour mettre à jour le tableau pour afficher votre jeu dans void_loop(). Appel de fonction lightup() à la fin sera ensuite imprimer contenu du tableau à l’écran.