pwm-respiration.ino
El LED sube y baja gradualmente gracias a analogWrite, que genera PWM de 8 bits en un pin marcado ~. El paso se invierte en los bordes 0 y 255.
Hardware necesario
Una LilyPad Arduino (ATmega168V/328V, 8 MHz, 3,3 V) con sus pastillas para coser, programada con cable FTDI (breakout) y alimentada por 3,7 V (LiPo) o 5 V en V-REG. 1 LED + resistencia de 330 Ω.
Cableado
Ánodo del LED (con resistencia) en el pin 9, cátodo a GND.
Funcionamiento
analogWrite aplica un ciclo de trabajo creciente y luego decreciente; el ojo percibe un cambio suave de brillo. En el Arduino IDE, elija « LilyPad Arduino » y el puerto FTDI, y suba. El hilo conductor añade unos ohmios de resistencia: mantenga tiradas cortas y aísle los cruces.
Para ir más lejos
Controle varios LED en oposición de fase, o un MOSFET para una tira LED completa.
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);
}