Table des matières:
- Fournitures
- Étape 1: Étape 1: Création d'une matrice LED
- Étape 2: Étape 2: Câblage des boutons-poussoirs et des registres à décalage
- Étape 3: Étape 3: Téléchargement du code
- Étape 4: Informations/ressources supplémentaires
Vidéo: Matrice LED de bouton-poussoir : 4 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:07
Ce projet peut être considéré comme un autre projet d'introduction Arduino qui est légèrement plus avancé que votre projet typique de « clignotement d'une LED ». Ce projet intègre une matrice de LED, des boutons-poussoirs, des registres à décalage (qui peuvent enregistrer des broches sur votre carte Arduino) et un concept clé appelé multiplexage. J'espère que vous trouverez le tutoriel instructif et que vous vous mettrez au défi de l'améliorer !
Fournitures
(1x) Arduino Uno
(5x) Boutons-poussoirs tactiles
(2x) condensateurs 0,1 uF
(2x) 1 uF Condensateurs
(8x) 1k Résistances
(5x) 10k Résistances
(2x) 74HC595 registres à décalage
Fils de cavalier
Fil noir
Cable rouge
Étape 1: Étape 1: Création d'une matrice LED
Le tutoriel que j'ai utilisé pour fabriquer la matrice LED 8x8 dans ce projet peut être trouvé ici. Il existe des configurations courantes pour une matrice LED:
a) Anode de rangée commune
b) Cathode à rangée commune
Puisque j'ai utilisé l'arrangement Common Row Cathode de la matrice, je vais principalement en discuter ici et vous pouvez étendre la même logique à l'arrangement Common Row Anode. Dans l'arrangement de cathode à rangée commune, les cathodes des LED (ou les bornes négatives qui sont la branche la plus courte d'une LED) sont connectées ensemble en rangées tandis que les anodes (ou les bornes positives qui sont la branche la plus longue d'une LED) sont connectées ensemble en colonnes. Pour adresser une LED particulière, tirez la rangée de cathodes où la cathode LED est basse et tirez la colonne d'anode que l'anode LED est haute.
Remarque: lors de la création de la matrice de LED illustrée dans le lien ci-dessus, assurez-vous de connecter les colonnes d'anode aux résistances de 1 k ohm avant d'appliquer une quelconque tension aux LED.
Étape 2: Étape 2: Câblage des boutons-poussoirs et des registres à décalage
Le câblage des boutons-poussoirs et des registres à décalage est illustré ci-dessus. Je voudrais noter que les registres à décalage dans le schéma de circuit n'affichent pas les broches de masse (broche 8 du CI) et Vcc ou d'alimentation (broche 16 du CI) pour les puces; la broche de masse est connectée à la broche GND de la carte Arduino et Vcc est connectée à la broche 5V de la carte Arduino. La broche Vcc de chaque registre à décalage est également connectée à un condensateur de 0,1 uF connecté à la masse.
Remarque: les sorties de chaque registre à décalage sont répertoriées comme QA à QH (ignorer QH*). Ils sont répertoriés du bit le moins significatif (LSB) (pour QA) au bit le plus significatif (MSB) (pour QH), c'est-à-dire que QA contrôlerait la 0ème ligne ou colonne, etc.
Étape 3: Étape 3: Téléchargement du code
Le code pour contrôler la matrice LED est joint à ce tutoriel. J'ai essayé de commenter autant de code que possible afin que le fonctionnement du programme soit très clair. La base principale du programme est qu'il y a une matrice qui garde une trace des LED qui doivent être allumées ou éteintes. Pour que les différentes LED s'affichent correctement sans allumer accidentellement des diodes indésirables, il faut utiliser un concept appelé multiplexage. Le multiplexage allume essentiellement des LED individuelles dans une rangée particulière tandis que toutes les autres LED dans d'autres rangées, puis font de même pour les rangées restantes. L'astuce est que si les LED parcourent les rangées assez rapidement, vos yeux peuvent dire que les rangées individuelles sont allumées une à la fois. Si vous souhaitez explorer d'autres façons de tromper vos yeux avec des LED, vous voudrez peut-être vous pencher sur le concept de persistance de la vision (facilement consultable sur Google ou Instructables).
La façon dont les colonnes d'anodes et les rangées de cathodes sont mises à jour se fait via une fonction définie par l'utilisateur appelée « UpdateShiftRegisters ». Cette fonction active d'abord la broche de verrouillage, qui contrôle si un nouvel octet (8 bits) est envoyé à la sortie, à un niveau bas, de sorte qu'aucune modification des sorties n'est possible pendant que de nouveaux bits sont écrits sur la puce. Ensuite, en utilisant une fonction Arduino intégrée appelée « ShiftOut », qui gère spécifiquement l'envoi de données aux registres à décalage, le programme écrit la ligne (cathode) qui serait basse et les colonnes (anodes) qui devraient être hautes. Enfin, la goupille de verrouillage est tirée vers le haut afin de mettre à jour la sortie (les LED).
Étape 4: Informations/ressources supplémentaires
Voici quelques liens vers des sites Web ou des livres qui peuvent donner des informations supplémentaires concernant ce projet:
learn.adafruit.com/adafruit-arduino-lesson-4-eight-leds/arduino-code
www.arduino.cc/en/tutorial/ShiftOut
www.ti.com/lit/ds/symlink/sn74hc595.pdf
www.youtube.com/watch?v=7VYxcgqPe9A
www.youtube.com/watch?v=VxMV6wGS3NY
Premiers pas avec Arduino, 2e édition par Massimo Banzi
Conseillé:
Flexlight : une lampe de poche LED à pile bouton sans soudure : 3 étapes (avec photos)
Flexlight : une lampe de poche LED à pile bouton sans soudure : Mon objectif pour ce projet était de créer une simple lampe de poche LED alimentée par batterie avec un minimum de pièces et aucune soudure nécessaire. Vous pouvez imprimer les pièces en quelques heures et les assembler en 10 minutes environ, ce qui le rend idéal pour un arrière (supervisé par un adulte)
Interrupteur LED à bouton simple (en utilisant le poids): 8 étapes
Commutateur LED à bouton de pièce de monnaie simple (en utilisant le poids): Il s'agit d'un commutateur de bouton de pièce de monnaie relativement simple à exécuter. Lorsqu'un poids est appliqué sur les conducteurs de pince, la force vers le bas allume les LED
LED clignotante {Contrôlé par bouton} : 5 étapes
LED clignotante {Contrôlé par bouton} : je suis un étudiant à Kang Chiao. Ceci est mon projet, j'utilise Arduino et j'ai fait une lumière clignotante avec un bouton qui peut la faire clignoter. Vous pouvez le mettre sur votre chiffon et lorsque certaines personnes sont trop près de vous, vous pouvez appuyer sur le bouton et l'ampoule wi
Utilisation de la matrice de points de l'horloge intelligente IoT Wemos ESP8266 - Matrice ESP : 12 étapes (avec images)
Matrice de points d'horloge intelligente IoT Utilisez Wemos ESP8266 - Matrice ESP: Créez votre propre horloge intelligente IoT qui peut: Afficher une horloge avec une belle icône d'animation Afficher Rappel-1 à Rappel-5 Afficher le calendrier Afficher les heures de prière musulmanes Afficher les informations météorologiques Afficher les informations Afficher les informations Afficher les conseils Taux Bitcoin Affichage
Visuino Comment utiliser un bouton comme entrée pour contrôler des choses comme la LED : 6 étapes
Visuino Comment utiliser un bouton comme entrée pour contrôler des choses comme la LED : Dans ce didacticiel, nous apprendrons comment allumer et éteindre la LED à l'aide d'un simple bouton et Visuino.Regardez une vidéo de démonstration