L'esempio sotto riportato usa il PWM per modulare la luminosità di un led collegato al piedino 9 di Arduino.

Per visualizzare correttamente la forma d'onda nell'oscilloscopio è conveniente settare l'asse dei tempi con una scala di 1ms/divisione.

int brightness = 0;    // how bright the LED is
int fadeAmount = 5;    // how many points to fade the LED by
 
void setup()  {
  // declare pin 9 to be an output:
  pinMode(9, OUTPUT);
}
 
void loop()  {
  // set the brightness of pin 9:
  analogWrite(9, brightness);  
 
  // change the brightness for next time through the loop:
  brightness = brightness + fadeAmount;
 
  // reverse the direction of the fading at the ends of the fade:
  if (brightness == 0 || brightness == 255) {
    fadeAmount = -fadeAmount ;
  }
  // wait for 30 milliseconds to see the dimming effect
  delay(30);
}
Last modified: Tuesday, 19 May 2020, 4:19 PM