Avez-vous essayé de connecter une LED blanche à un µC alimenté sous 3 V. C’est décevant, la belle LED blanche, si elle s’allume, ne brille que faiblement... En revanche, avec des LED rouges ou vertes, ça marche bien. Pour comprendre, il suffit de jeter un coup d’œil à la fiche technique : la tension directe typique d’une LED blanche est de 3,2 V. Les 3 V à la sortie du µC sont insuffisants pour cette LED. On lit souvent dans les forums qu’un convertisseur élévateur (boost converter) permet d’obtenir cette tension plus élevée que l’on commute alors avec un transistor. C’est lourd juste pour alimenter une LED, non ?
Il y a plus simple, avec un seul composant bon marché de plus : une inductance, disponible pour quelques centimes. Installée au bon endroit et commandée comme il faut, elle permet à la LED de donner une vive lumière blanche, déjà à partir de 2,5 V de tension d’alimentation du µC. Ce n’est pas de la magie, mais de l’électronique !
 

Figure 1. Convertisseur élévateur de tension pour et à LED.

Principe de l’élévateur de tension

Une inductance L (bobine), à laquelle est appliquée la tension d’entrée UE, est mise à la masse par un interrupteur S à l’autre extrémité. Dès lors il circule un courant dans L, dont l’intensité augmente lentement en engendrant un champ magnétique (c’est le propre des bobines). Si après un certain temps on ouvre l’interrupteur S, le champ magnétique s’effondre et donne naissance dans la bobine à une tension dite d’induction (fig. 2). C’est le principe bien connu de la bobine d’allumage d’un véhicule.

Figure 2. Convertisseur élévateur de tension.

Cette tension induite est ajoutée à la tension d’alimentation. Ainsi, la tension UA appliquée à la diode D est plus élevée que la tension d’alimentation avec laquelle est chargé le condensateur C. Si l’interrupteur S est refermé, le processus se répète. Or, puisqu’une LED est par nature une diode, la diode D peut être remplacée ici par une LED (fig. 3). Laquelle peut être reliée directement au potentiel GND.

Figure 3. Une LED remplace diode et condo.

Comment mettre en œuvre ce principe d’élévation pour une LED avec un µC ? En utilisant habilement les différentes configurations possibles de ses ports ! Les entrés/sorties (E/S) d’un µC peuvent en effet être utilisées soit en mode push-pull soit en mode drain ouvert. En push-pull, un niveau logique de sortie haut (1) se traduit par le potentiel d’alimentation VCC sur la broche du port concerné, tandis qu’au niveau logique bas (0) correspondra sur cette broche le potentiel de masse GND (fig. 4) .

Figure 4. Paramétrage des broches du port du µC.

L’inductance dépend à la fois de la fréquence de commutation, de l’intensité du courant et des tensions d’entrée et de sortie. Dans la plupart des fiches techniques des commutateurs élévateurs de tension, pour déterminer l’inductance, on trouve l’approximation :

L = UIN × (UOUTUIN) / (∆IL fs × UOUT)

où L = inductance [H], UA = tension de sortie [V], UE = tension d’entrée [V],
IA = Courant de sortie [A], fs = fréquence de commutation [Hz], ∆IL = courant d’ondulation de l’inductance [A]
 

Ne vous laissez pas intimider par ce IL (Inductor Ripple Current) qui n’est que la différence (symbolisée par la lettre grecque delta majuscule ∆) d’intensité entre le courant minimum et le courant maximum de la bobine, c.-à-d. l’amplitude crête à crête du courant de la bobine variant autour du courant de sortie (fig. 5).

Figure 5. Courbe de la tension et du courant de commutation.

L’intensité du courant de la bobine varie toujours de quelques pourcents autour du courant de sortie. Là aussi, les fiches techniques des fabricants de commutateurs élévateurs se contentent généralement d’une approximation, parfaite pour notre convertisseur élévateur à LED :

IL = 0.2 × IOUT(max) × (UOUT / UIN)

IA(max) est l’intensité maximale du courant de sortie autorisé à travers la LED. La fiche technique de notre LED dit 30 mA. Si IA(max) = 30 mA et si UA = 4 V pour la tension de sortie et UE (tension d’entrée) = 2,5 V, alors la différence  ∆IL = 9,6 mA. D’où il résulte une inductance L de 97,66 µH pour une fréquence de commutation fs de 1 MHz selon la formule ci-dessus.
Les bobines de 100 µH ne coûtent que 10 cents la douzaine. On en trouve différents modèles. Pour une petite LED blanche avec un courant maximum typique de 30 mA, le modèle SMD 0805 convient.

Un proto pour tester

Sur une plaque d’essai, nous insérons une LED blanche en boîtier PLCC-4 soudée à deux fils. Sa tension directe est de 3,2 V, son courant direct de 30 mA. On prend un µC qui traîne… tiens, cet AVR ATtiny24 par exemple et une self de choc de 100 µH (fig. 67). Le µC est relié à un programmateur par ses broches RESET, MOSI, MISO, SCK et GND. Une alim de labo réglable alimente le circuit entre 2 et 3 V.

Figure 6. Circuit du dispositif de test du convertisseur élévateur à LED.
Figure 7. Installation de test du convertisseur élévateur à LED.

Programmation de l’élévateur de tension

Si toutes les connexions nécessaires sont correctement branchées, vous pouvez commencer à programmer l’ATtiny24. Le signal carré peut être émis par un µC de différentes manières. Soit par modulation de largeur d’impulsion (MLI ou PWM), soit par basculement des broches de sortie. C’est ce que nous faisons ici par souci de simplicité. Pour l’élévateur, l’interrupteur relie la sortie à la masse. Il faut donc que la sortie correspondante du µC soit réglée tour à tour en mode à drain ouvert puis pull-down (sortie forcée au niveau bas). C’est une boucle de programme qui s’en charge directement et sans retard. Avec un ATtiny cadencé par une horloge de 8 MHz, on aura une fréquence d’environ 1 MHz.

LED booster source code
#define F_CPU 8000000UL // 8 Mhz
 
#include <avr/io.h>
#include <util/delay.h>
 
int main(void)
{
  unsigned long int i;
 
  while (1)
  {
    PORTA |= (1<<PA7);
    DDRA |= (1<<DDA7); // LED allumée
    for(i=0; i<=400000; i++) //
boucle d’élévation
    {
      DDRB |= (1<<DDB2); //
DDRB à drain ouvert
      DDRB &= ~(1<<DDB2); // forcer au niveau bas
    }
    PORTA &= ~(1<<PA7); // LED éteinte
    _delay_ms(500);
  }
}

Pour passer l’horloge interne par défaut de 1 à 8 MHz, le fusible de configuration CKDIV8 — activé par défaut — devra être désactivé ici. Par exemple avec le programme avrdude :

avrdude -U lfuse:w:0xEA:m

Pour obtenir un clignotant classique avec une LED blanche boostée par inductance, il suffit d’insérer la boucle d’amplification (c’est-à-dire celle qui assure l’alternance drain ouvert / forçage du niveau bas) dans une deuxième boucle qui elle commutera la broche d’alimentation (UE) (fig. 8).
C’est ça l’électronique ! Génial et magique !  190361

Figure 8. Indicateur à LED blanche alimentée par pile de 3 V.

► Elektor est réputé pour la qualité de son contenu. En voulez-vous davantage ?

► Abonnez-vous maintenant au magazine Elektor et ne manquez plus jamais ni aucun de ces articles précieux ni aucun de ces projets géniaux.