ADF-LED-BACKPACK-7-Segments
Cette version du backpack LED est conçue pour pour pilote de grands afficheurs 7-segments (super-brillant). Ces afficheurs réclame normalement 13 broches/pins pour être pilotés correctement (5 'caractères' avec un total de 8 segments chacun). Ce backpack résout l'épineux problème d'utiliser 13 broches de votre microcontroleur et/ou une tonne de composants pour alimenter les segments de la matrice/afficheur en courant constant... le tout via une interface I2C.
Le contrôleur placé à l'arrière du backpack prend tout cela en charge, et pilote toutes les LEDs en tâche de fond. Tout ce que vous avez à faire est d'écrire les données en utilisant une interface I2C à 2 broches/pins.
Il y a également 3 cavaliers de sélection d'adresse. Vous pouvez donc sélectionner jusqu'à une des 8 adresses pour contrôler jusqu'à 8 afficheurs sur un somple bus I2C 2-broches/pins (tout comme n'importe quel autre composant ou senseur I2C de votre choix).
Le composant pilotant la matrice peut ajuster la brillance de l'afficheur entier depuis 1/16 à pleine luminosité (par incrément de 1/16). Il ne peut pas la brillance d'une LED individuelle, seule la brillance de l'afficheur entier peut être altéré.
Crédit: AdaFruit Industries www.adafruit.com
Toutes les images ci-dessous: crédit AdaFruit Industries
Voila, vous êtes maintenant prêt à utiliser le firmware!
Programmation du Backpack 7-Segments
AdaFruit à écrit une librairie pour vous aider à utiliser le backpack 7-segments. La librairie est écrite pour Arduino et fonctionnera avec n'importe quel Arduino puisqu'il n'utilise que le bus I2C. C'est un code portable qui devrait être facilement adapté pour d'autres micro-controleurs.'
Raccorder l'afficheur est vraiment simple
- Connectez CLK sur le signal d'horloge I2C - Sur un Arduino UNO c'est la broche Analogique #5, Sur Leonardo c'est la broche Digital #3, sur le Mega c'est la broche Digital #21
- Connectez DAT sur la connexion Data d'I2C - Sur un Arduino UNO c'est la broche Analogique #4, Sur Leonardo c'est la broche Digital #2, sur le Mega c'est la broche Digital #20
- Connectez GND à la masse commune (Gnd/Ground)
- Connectez VCC+ pour l'alimentation - 5V est préférable mais cela semble fonctionner en 3V (pour les microcontroleurs 3V).
Ensuite, téléchargez la libriarie Adafruit LED Backpack depui github . Pour télécharger, cliquez sur le bouton DOWNLOADS dans le coin supérieur droit, renommez le répertoire décompressé comme Adafruit_LEDBackpack.
Vérifiez que le répertoire Adafruit_LEDBackpack contiennent bien les fichiers Adafruit_LEDBackpack.cpp et Adafruit_LEDBackpack.h. Placez le répertoire de la librairie Adafruit_LEDBackpack dans votre répertoire Arduino arduinosketchfolder/libraries/.
Vous pourez avoir besoin de créer un sous répertoire "libraries" s'il s'agit de votre première librairie.
Vous aurez également besoin de télécharher la librairie Adafruit GFX - que vous renommerez et installerez également dans les librairies Arduino. Cette librairie n'est pas utilisée par l'afficheur 7-segments mais uniquement pour les affichages en matrice. Sont installation est cependant nécessaire.
Redémarrez votre Arduino IDE.
Une fois que vous avez redémarrez, vous devriez être capable de sélectionner le sketch d'exemple File > Examples > Adafruit_LEDBackpack > sevenseg. Chargez le sur votre Arduino comme vous le faite d'habitude. Vous devriez vois i, programme de test qui exécute toute une série de routine.
Crédit: AdaFruit Industries www.adafruit.com
Une fois que la matrice fonctionne (super!), vous pouvez écrire vos propres sketchs.
Méthodes d'affichage
Voici quelques méthodes pour afficher des informations. La plus simple c'est d'appeller print - comme vous le faites avec Serial
- print(variable,HEX) - Affiche un nombre hexadécimal de 0000 jusqu'à FFFF
- print(variable,DEC) ou print(variable) - Affiche un entier décimal, de 0000 à 9999
Si vous avez besoin de plus de contrôle, vous pouvez appeller writeDigitNum(position, nombre) - qui écrit un chiffre (de 0 à 9) sur une position de l'afficheur. La position #0 est sur la gauche, la position #2 correspond au deux point ":" (vous n'en aurez probablement pas besoin), la position #4 est tout à fait à droite.
Si vous désirez un point décimal, appelez writeDigitNum(position, nombre, true) qui affichera un point décimal. Pour afficher les deux points ":", utilisez la fonction drawColon(true ou false)
Si vous désirez encore plus de contrôle, vous pouvez utiliser writeDigitRaw(position,bitmask) pour activer les segments en fonction d'un masque 8 bits (8-bit mask en anglais) stocké dans un uint8_t (pour la position mentionnée).
Toutes les routines d'affichage effectuent des modifications dans la mémoire d'Arduino. N'oubliez pas d'appeler writeDisplay() pour "sauver" le contenu de la mémoire dans l'afficheur l'afficheur via le bus I2C.
Il y a également quelques routines qui sont propre au BackPack:
- setBrightness(luminosité)- vous permettra de modifier la luminosité de l'afficheur. 0 pour le moins lumineux, 15 pour le plus lumineux. 15 est la valeur utilisée par l'afficheur lorsqu'il démarre.
- blinkRate(vitesse) - permet de faire clignoter (bink en anglais) l'afficheur tout entier. 0 pour arrêter le clignotement. 1, 2 ou 3 pour les différentes vitesses de clignotement.
Source: Control small led matrice with ease créé par LadyAda pour AdaFruit Industries. Crédit AdaFruit Industries
Traduit avec l'autorisation d'AdaFruit Industries - Translated with the permission from Adafruit Industries - www.adafruit.com
Toute référence, mention ou extrait de cette traduction doit être explicitement accompagné du texte suivant : « Traduction par MCHobby (www.MCHobby.be) - Vente de kit et composants » avec un lien vers la source (donc cette page) et ce quelque soit le média utilisé.
L'utilisation commercial de la traduction (texte) et/ou réalisation, même partielle, pourrait être soumis à redevance. Dans tous les cas de figures, vous devez également obtenir l'accord du(des) détenteur initial des droits. Celui de MC Hobby s'arrêtant au travail de traduction proprement dit.