Table des matières:
2025 Auteur: John Day | [email protected]. Dernière modifié: 2025-01-13 06:57
Juste à temps pour la Saint-Valentin, un petit gadget à offrir à votre chérie: un cœur qui boucle à travers de multiples animations. Il s'intègre parfaitement sur un bureau ou une table pour que votre bien-aimé se souvienne de vous !
Ce cœur animé est très compact et simple: il suffit de l'allumer et les 12 LED qui forment un cœur parcourent une boucle d'animations que vous pouvez entièrement personnaliser.
Il fonctionne avec une pile bouton et est basé sur un microcontrôleur très courant et bon marché, le ATTINY13 à 8 broches, qui peut être facilement programmé avec un Arduino Uno. Grâce à la technique spéciale du charlieplexing, 12 LED peuvent être contrôlées individuellement avec seulement 4 broches de sortie.
Étape 1: Matériaux et outils:
Matériaux:
- 12 LED rouges de 5 mm
- Une planche prototype 3x7cm (10x24 trous, le vert épais double face est le meilleur)
- Un microcontrôleur Attiny13A
- Une prise DIP 8 broches
- Un mini-interrupteur
- Un porte-pile bouton
- Une pile bouton CR2032
- 20 cm de fil de raccordement multibrin coloré
- 15 cm de fil solide épais
Outils:
- Un Arduino Uno pour programmer l'ATTINY
- Un fer à souder
- Un coupe-fil
Étape 2: Construire le cœur
Les 12 LED sont insérées dans une carte prototype en forme de cœur, comme indiqué sur le schéma. Faites attention à la polarité: 6 LED ont l'anode à droite et la cathode à gauche, 6 LED sont insérées dans le sens inverse. Recouvrez les LED de ruban adhésif pour éviter qu'elles ne tombent pendant que nous travaillons à l'arrière.
Les fils des LED doivent être connectés selon un motif complexe. Pliez les épingles et coupez-les en suivant le schéma. Attention, le diagramme montre le recto, alors que nous travaillons sur le verso, il devrait donc ressembler à l'image miroir du diagramme, comme indiqué sur l'image. Les fils peuvent maintenant être soudés ensemble et le ruban adhésif retiré.
Testez que cela fonctionne: le cœur a quatre connexions électriques indiquées en bleu, vert, jaune et blanc sur le schéma. Connectez la terre à une connexion et +5V en série avec une résistance de 1kOhm à une autre. 1 LED doit s'allumer et les 12 LED doivent pouvoir s'allumer de cette façon.
Étape 3: Exécutez le cœur à partir d'un Arduino
Téléchargez le croquis ci-joint sur un Arduino UNO ou Nano et attachez les broches D8-D11 aux 4 connexions électriques du cœur: D8 au bleu, D9 au vert, D10 au jaune et D11 au blanc. Le cœur doit afficher une animation qui dure environ 1 minute.
Le code peut être personnalisé pour changer la vitesse ou changer l'animation. Le tableau 'patt' contient le motif d'animation. Deux octets de chaque étape indiquent quels voyants LED sont allumés à chaque étape. Les LED sont numérotées de 0 à 11 en partant du bas et dans le sens inverse des aiguilles d'une montre tout autour. LED0 correspond au bit 0, LED1 au bit 1, etc.
Le tableau de motifs est stocké dans la mémoire du programme, ce qui permet une animation beaucoup plus riche que s'ils étaient stockés dans la RAM. Le présent croquis a 168 étapes. Pour l'Arduino, il y a de la place pour des milliers d'autres, et même pour l'ATTINY13, qui n'a que 1 Ko de mémoire de programme, il y a de la place pour environ 400 étapes.
La vitesse de l'animation est déterminée par le "steptime" défini à la ligne 196. Pour accélérer l'animation, réduisez ce nombre. Attention, sur l'ATTINY, l'animation sera un peu plus lente car nous l'exécuterons à une vitesse d'horloge inférieure.
Étape 4: Passer à l'ATTINY
Le code est suffisamment petit pour tenir sur un petit microcontrôleur à 8 broches très pratique, l'ATTINY13A. Le croquis de l'étape précédente fonctionnera sans aucune modification sur l'ATTINY.
- Il existe des instructables dédiés https://www.instructables.com/id/Programming-an-A… comment programmer l'ATTINY13A. Un bref résumé est ci-dessous:
- Démarrage de l'IDE Arduino, ouvrez « Préférences », puis ajoutez https://mcudude.github.io/MicroCore/package_MCUdude_MicroCore_index.json pour des gestionnaires de cartes supplémentaires.
- Sous 'Tools/Board', sélectionnez 'Board Manager' et en bas de la liste, installez 'MicroCore by MCUdude'
- Connectez l'Arduino Uno et téléchargez 'ArduinoISP'. Il est disponible sous 'Fichier/exemples'
- Connectez l'Arduino à l'ATtiny, le plus simple est de mettre l'ATtiny sur un prototype de blindage: broche Arduino 13 - broche ATtiny 7 broche Arduino 12 - broche ATtiny 6 broche Arduino 11 - broche ATtiny 5 broche Arduino 10 - broche ATtiny 1 Arduino +5v - ATtiny broche 8 Arduino GND - ATtiny broche 4
- Choisissez 'Board ATtiny13', 'B. O. D 2.7V', 'Clock 1.2 MHz internal' et programmeur 'Arduino as ISP' (attention: pas 'ArduinoISP' mais 'Arduino as ISP')
- Faites "Burn Bootloader" - il n'y a pas de bootloader pour l'attiny, et cela peut donner une erreur, mais cette étape est nécessaire pour "régler les fusibles" sur le bon réglage d'horloge. Téléchargez le croquis.
Testez si cela fonctionne: connectez les connexions bleue, verte, jaune et blanche du cœur à PB0 (broche 5), PB1 (broche 6), PB2 (broche 7) et PB3 (broche 2), respectivement. Le cœur devrait s'animer de la même manière qu'avec l'Arduino, juste un peu plus lentement. Vérifiez également qu'il fonctionne lorsque l'ATTINY est alimenté par une pile bouton.
Étape 5: Finalisation du projet
Maintenant que vous avez le circuit cardiaque et un ATTINY programmé, le projet peut être terminé. Soudez la prise IC, le support de pile bouton et l'interrupteur marche/arrêt sur la carte prototype et complétez les connexions comme indiqué sur le schéma. Insérez l'ATTINY, la pile bouton et allumez pour vérifier qu'il fonctionne.
Enfin, j'y ai ajouté un support en fil électrique à âme pleine d'environ 15 cm. Retirez l'isolation de 2 cm des deux côtés et pliez-la en forme de support. La partie dénudée peut maintenant être soudée aux plots de la carte prototype.
Tout est prêt pour faire un superbe cadeau de Saint-Valentin !
Finaliste du concours de cœur