
Pour mon bureau d'électronique, j'avais besoin d'une lampe d'écran pour mieux y voir quand je travaille. Au lieu d'en acheter une toute faite, j'ai décidé de la concevoir moi-même. C'était l'occasion parfaite de faire un petit projet perso.
Le fonctionnement devait rester simple :
Pour ce projet, je voulais sortir des sentiers battus (au revoir Arduino) et progresser en C "bare-metal". J'ai choisi un microcontrôleur de chez WCH : le CH32V003. Il est super connu pour son prix dérisoire (environ 15 centimes l'unité !). Je l'ai pris en boîtier SOP-16 pour que ce soit soudable facilement.
Un point critique : on ne peut pas brancher le ruban LED directement sur les sorties du microcontrôleur. Elles ne peuvent fournir que 20 mA, alors que mon ruban consomme environ 1,7 A à pleine puissance (c'est 85 fois trop !).J'ai donc utilisé un transistor MOSFET canal N (IRLZ44N). Il sert d'interrupteur de puissance : le microcontrôleur commande le transistor, et le transistor laisse passer le courant pour les LED.

Pour coder, j'ai utilisé l'IDE du fabricant : MounRiver Studio. Il permet de tout faire : coder, compiler et débugger.
Pour la programmation en C, j'ai configuré les registres directement pour utiliser :
Lors de l'implantation du prototype, j'ai fait face à un problème majeur : le microcontrôleur redémarrait en boucle.
L'appel de courant du ruban LED au démarrage était si fort qu'il provoquait une chute de tension trop importante sur l'alimentation 5 V commune. Le CH32V003 passait sous son seuil de tension minimale et rebootait instantanément.
Comme je ne voulais pas utiliser deux alimentations séparées, j'ai mis en place une solution de filtrage et d'isolation :
Ainsi, lors d'un appel de courant des LED, la diode empêche le condensateur du microcontrôleur de se vider dans le ruban, offrant à la puce sa propre réserve d'énergie pour rester stable.
Pour le montage, j'ai tout soudé sur une plaque perforée. C'est rapide, pas besoin de faire fabriquer un PCB, et c'est suffisant pour un prototype qui reste à la maison.
Durant ce projet, j'ai mis en pratique deux des quatres compétences critiques en deuxième année de BUT GEII :