Étape 6: La fonction de réglage
la fonction setup() :
avec ce cycle, nous avons mis tous le pin utilisé pour la matrice de LEDs à l’entrée. Ceci parce que la matrice Charlieplexing éteindre les LEDs en mettant ses épingles à l’entrée.
avec ces deux fonctions, nous permettons la résistance pullup pour les deux boutons. Ainsi, lorsque vous appuyez sur un bouton, son état devenir faible.
Nous désactivons interruptions globales pour définir toutes les interruptions dont nous avons besoin.
Avec ces fonctions, nous régler la minuterie, interruption de dépassement de capacité. Il est utilisé pour mettre à jour la matrice Charlieplexing.
J’ai écrit un post ici d’expliquer exactement comment il fonctionne.
Cette fonction activer l’interruption pinChange global utilisée pour l’interruption de B bouton.
Dans la fonction setup() nous n’activez pas les interruptions pour les boutons A et B. Nous permettons à ils dans la fonction goSleep() . Cela parce que nous utilisons les interruptions pour les boutons seulement pour réveiller les microcontrôleurs après qu’il s’endorme.
Ces fonctions désactiver tous les périphériques inutiles pour réduire la puissance consommer.
Maintenant, nous pouvons permettre l’interruption mondiale.
Ici, nous montrons le visage de KeyChainino en appelant la fonction showKeyChaininoFace() et ensuite nous clairement toutes les LEDs.
Après cela, nous avons mis la variable gameStarted sur true. De cette façon, nos fonctions sait que le jeu est démarré.