Table des matières:
- Étape 1: Comment ça marche
- Étape 2: Matériaux et outils
- Étape 3: Schémas
- Étape 4: Assembler sur une planche prototype
- Étape 5: programmer le circuit
- Étape 6: Souder
Vidéo: LED programmable : 6 étapes (avec photos)
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:10
Inspiré par divers LED Throwies, LED clignotantes et instructables similaires, je voulais faire ma version d'une LED contrôlée par un microcontrôleur. L'idée est de rendre la séquence de clignotement de LED reprogrammable. Cette reprogrammation peut être effectuée avec la lumière et l'ombre, par ex. vous pouvez utiliser votre lampe de poche. Il s'agit de mon premier instructable, tous les commentaires ou corrections sont les bienvenus. Mise à jour 2008-08-12: Il existe maintenant un kit disponible au Tinker Store. Désolé pour la qualité.
Étape 1: Comment ça marche
Une LED est utilisée comme sortie. En entrée, j'ai utilisé un LDR, une résistance dépendante de la lumière. Ce LDR change de résistance au fur et à mesure qu'il reçoit plus ou moins de lumière. La résistance sert alors d'entrée analogique aux microprocesseurs ADC (convertisseur analogique numérique).
Le contrôleur dispose de deux modes de fonctionnement, l'un pour enregistrer une séquence, l'autre pour reproduire la séquence enregistrée. Une fois que le contrôleur remarque deux changements de luminosité en une demi-seconde (sombre, clair, sombre ou inversement), il passe en mode enregistrement. En mode d'enregistrement, l'entrée du LDR est mesurée plusieurs fois par seconde et stockée sur la puce. Si la mémoire est épuisée, le contrôleur revient en mode lecture et commence à lire la séquence enregistrée. Comme la mémoire de ce minuscule contrôleur est très limitée, 64 octets (oui, des octets !), le contrôleur est capable d'enregistrer 400 bits. C'est assez d'espace pour 10 secondes avec 40 échantillons par seconde.
Étape 2: Matériaux et outils
Matériaux - 2 x résistance 1K - 1 x LDR (Light Dependent Resistor), par ex. M9960- 1 x LED à faible courant, 1.7V, 2ma- 1 x Atmel ATtiny13v, 1 Ko de RAM flash, 64 octets de RAM, 64 octets d'EEPROM, [email protected] 1 x CR2032, 3V, 220mAhOutils- fer à souder - fil à souder- planche à pain- programmateur AVR- alimentation 5V- multimètreLogiciel- Eclipse- plugin CDT- WinAVRLes coûts globaux devraient être inférieurs à 5 $ sans les outils. J'ai utilisé l'ATtiny13v car cette version de cette famille de contrôleurs est capable de fonctionner à 1,8 V. Cela permet de faire fonctionner le circuit avec une très petite batterie. Pour le faire fonctionner très longtemps, j'ai décidé d'utiliser une LED à faible courant qui atteint déjà la pleine luminosité à 2ma.
Étape 3: Schémas
Quelques commentaires sur le schéma. L'entrée reset n'est pas connectée. Ce n'est pas la meilleure pratique. Le mieux serait d'utiliser une résistance de 10K comme pull up. Mais cela fonctionne bien pour moi sans et cela économise une résistance. Pour garder le circuit aussi simple que possible, j'ai utilisé l'oscillateur interne. Cela signifie que nous économisons un cristal et deux petits condensateurs. L'oscillateur interne permet au contrôleur de fonctionner à 1,2 MHz, ce qui est plus que suffisant pour notre objectif. Si vous décidez d'utiliser une autre alimentation que 5 V ou d'utiliser une autre LED, vous devez calculer la résistance R1. La formule est: R = (Alimentation V - LED V) / 0,002A = 1650 Ohm (Alimentation = 5V, LED V = 1,7V). En utilisant deux LED à faible courant au lieu d'une, la formule ressemble à ceci: R = (Alimentation V - 2 * LED V) / 0,002A = 800 Ohm. Attention, vous devez ajuster le calcul si vous choisissez un autre type de LED. La valeur de la résistance R2 dépend du LDR utilisé. 1KOhm fonctionne pour moi. Vous pouvez utiliser un potentiomètre pour trouver la meilleure valeur. Le circuit doit être capable de détecter les changements de lumière à la lumière du jour normale. Pour économiser de l'énergie, PB3 n'est réglé sur haut que si une mesure est effectuée. Mise à jour: le schéma était trompeur. Vous trouverez ci-dessous une version correcte. Merci, dave_chat.
Étape 4: Assembler sur une planche prototype
Si vous aimez tester votre circuit, une maquette est très pratique. Vous pouvez assembler toutes les pièces sans avoir à souder quoi que ce soit.
Étape 5: programmer le circuit
Le contrôleur peut être programmé dans différentes langues. Les plus utilisés sont Assembler, Basic et C. J'ai utilisé C car il correspond le mieux à mes besoins. J'étais habitué au C il y a dix ans et j'ai pu faire revivre une partie des connaissances (enfin, seulement certaines…). Pour écrire votre programme, je vous recommande Eclipse avec le plugin CDT. Obtenez eclipse ici https://www.eclipse.org/ et le plugin ici https://www.eclipse.org/cdt/. Pour compiler le langage C sur des microcontrôleurs AVR, vous aurez besoin d'un compilateur croisé. Heureusement que nous sommes, il existe un port du célèbre GCC. Il s'appelle WinAVR et peut être trouvé ici https://winavr.sourceforge.net/. Un très bon tutoriel sur la façon de programmer des contrôleurs AVR avec WinAVR est ici https://www.mikrocontroller.net/articles/AVR-GCC- Didacticiel. Désolé, c'est en allemand mais vous pouvez trouver des milliers de pages de tutoriel sur ce sujet dans votre langue, si vous les recherchez. Après avoir compilé votre source, vous devez transférer le fichier hexadécimal au contrôleur. Cela peut être fait en connectant votre PC au circuit en utilisant ISP (dans le programmeur système) ou en utilisant des programmeurs dédiés. J'ai utilisé un programmeur dédié car il facilite légèrement le circuit en économisant quelques fils et une prise. L'inconvénient est que vous devez échanger le contrôleur entre le circuit et le programmeur chaque fois que vous souhaitez mettre à jour votre logiciel. Mon programmeur vient de https://www.myavr.de/ et utilise l'USB pour se connecter à mon ordinateur portable. Il y en a beaucoup d'autres et vous pouvez même le construire vous-même. Pour le transfert lui-même, j'ai utilisé un programme nommé avrdude qui fait partie de la distribution WinAVR. Un exemple de ligne de commande peut ressembler à ceci:
avrdude -F -p t13 -c avr910 -P com4 -U flash:w:flickled.hex:iEn pièce jointe, vous pouvez obtenir la source et le fichier hexadécimal compilé.
Étape 6: Souder
Si votre circuit fonctionne sur la maquette, vous pouvez le souder.
Cela peut se faire sur un PCB (printed circuit board), sur un prototype de carte ou même sans carte. J'ai décidé de m'en passer car le circuit ne se compose que de quelques composants. Si vous n'êtes pas familier avec la soudure, je vous recommande de rechercher d'abord un tutoriel de soudure. Mes compétences en soudure sont un peu rouillées mais je pense que vous voyez l'idée. J'espère que vous avez aimé. Alexis
Conseillé:
Renegade-i (testeur de circuits intégrés programmable qui ressemble à la vraie chose): 3 étapes (avec photos)
Renegade-i (testeur de circuits intégrés programmable qui ressemble à la réalité) : LE RÊVE D'UN MILLION DE DOLLARS. Avez-vous déjà rêvé d'avoir votre propre testeur de circuits intégrés à la maison ? Pas seulement un gadget qui peut tester les circuits intégrés, mais une machine «programmable» qui ressemble à l'un des produits phares des plus grands acteurs de l'industrie des tests semi-con
Totalement allumé - Panneau acrylique LED RVB programmable : 3 étapes (avec photos)
Totalement éclairé - Panneau acrylique LED RVB programmable : J'ai joué avec le découpeur/graveur laser et je suis vraiment tombé amoureux de la gravure pour effacer l'acrylique et faire briller une source de lumière depuis le bord. L'épaisseur de l'acrylique utilisé est de 0,25" feuille, qui coupe vraiment proprement par le l
Montre programmable avec affichage à quatre caractères : 5 étapes (avec photos)
Montre programmable avec affichage à quatre caractères : vous serez la vedette de la ville lorsque vous porterez cette montre-bracelet odieuse, surdimensionnée et totalement peu pratique. Affichez votre langage grossier préféré, les paroles de chansons, les nombres premiers, etc. Inspiré par le kit Microreader, j'ai décidé de faire une montre géante en utilisant
Buggy - une créature LED programmable et astucieuse : 12 étapes (avec photos)
Buggy - une créature LED programmable artisanale: Buggy est un projet d'artisanat LED programmable utilisant une carte PCB simple face et un microcontrôleur AVR Attiny44v programmable. Buggy a deux yeux LED bicolores et peut détecter la lumière visible et infrarouge et émettre des sons à l'aide d'un haut-parleur piézo. Pas
Ventilateur LED programmable "A Light Breeze": 5 étapes (avec photos)
Ventilateur LED programmable "A Light Breeze": Il s'agit d'un projet assez simple pour fabriquer un ventilateur LED programmable à l'aide de bandes LED programmables et d'un ventilateur de friperie. Dans l'ensemble, il m'a fallu environ 2 heures pour tout attacher, souder et tester. Mais je fais un peu ce genre de chose, donc ça peut