pwm-respiration.ino
La LED monte puis redescend progressivement grâce à analogWrite, qui génère un PWM 8 bits sur une broche marquée ~. Le sens s'inverse aux bornes 0 et 255.
Matériel requis
Une LilyPad Arduino (ATmega168V/328V, 8 MHz, 3,3 V) avec ses pastilles à coudre, programmée par câble FTDI (breakout) et alimentée par 3,7 V (LiPo) ou 5 V sur V-REG. 1 LED + résistance 330 Ω.
Branchement
Anode de la LED (via résistance) sur la broche 9, cathode sur GND.
Fonctionnement
analogWrite applique un rapport cyclique croissant puis décroissant ; l'œil perçoit une variation continue de luminosité. Dans l'Arduino IDE, choisissez « LilyPad Arduino » et le port FTDI, puis Téléverser. Le fil conductif crée des résistances de quelques ohms : gardez les courtes distances et isolez les croisements.
Pour aller plus loin
Pilotez plusieurs LED en opposition de phase, ou pilotez un MOSFET pour un ruban LED complet.
pwm-respiration.ino
// Respiration LED sur broche PWM (analogWrite 0..255).
const int LED = 9;
int niveau = 0;
int pas = 4;
void setup() {
pinMode(LED, OUTPUT);
}
void loop() {
analogWrite(LED, niveau);
niveau += pas;
if (niveau <= 0 || niveau >= 255) pas = -pas; // inversion au bord
delay(15);
}