PWM Output to 1 LED


// PWM Output to Pin 9  V2
// Steps between levels appear more equal

int level01 = 0;
// 9 levels (Off to fully On)
// 0,1,3,7,15,31,63,127,255, [511]
// 511 not used but resets to 0
int d01 = 1;

void setup() {
  pinMode( 9, OUTPUT);
} //setup

void loop() {
  analogWrite( 9, level01);
  level01 = level01 + d01;
  d01 = d01*2;
  if (level01 >= 256) {
    level01 = 0;
    d01 = 1;
  }
  delay(500);
} //loop