Bonjour,
En réalisant un TCO pour commander les itinéraires dans une zone d'aiguilles, j'ai eu besoin de gérer l'allumage et l’extinction de plusieurs LEDs en parallèle, fixe ou clignotant, temporisé ou pas.
Si la plupart des exemples de programmes Arduino utilisent la fonction delay(), vous savez sûrement tous que cette fonction est bloquante et qu'il faut utiliser autre chose pour gérer plusieurs LEDs en parallèle. Il y a plein d'exemples sur la toile qui expliquent ce qu'il faut faire (
par exemple ici).
Comme ce TCO était ma première réalisation concrète en Arduino, j'ai décidé de réaliser par moi-même une librairie de gestion de multiples LEDs, pour me faire la main. Je n'ai pas fait une recherche très approfondie, mais je n'ai pas trouvé de librairie toute faite qui fasse la même chose ou similaire. Étonnant !
Peut-être trop simple ?
Vous trouverez cette librairie
sur mon compte GitHub.
Par déformation (professionnelle) je travaille plutôt en anglais, mais la description des méthodes est
bilingue anglais-français dans le Wiki.
Cela fonctionne parfaitement sur le TCO avec une vingtaine de LEDs.
Je compte étendre la librairie avec d'autres effets, comme gyrophare, flicker, fade-in, fade-out, soudure à l'arc, etc. En bref tout ce que l'on retrouve couramment dans les décodeurs de loco ou d'accessoires.
En espérant que ça puisse être utile à vos projets.
Les contributions pour de nouveaux effets ou améliorations sont les bienvenues.
Et si je n'ai fait que réinventer l'eau chaude
, tant pis, ça m'a permis de me dérouiller en programmation C++.