Blink without "delay()" - stepping up.

Henry_Best:

 led1State = !led1State;//Invert Led1State, HIGH becomes LOW and LOW becomes HIGH.

Strictly speaking that is bad - HIGH / LOW are not the same as true / false. They may map to it, but it is a different "type".

Henry_Best:
I'd also add an explanation that, although this code only blinks LEDs, the principle can be use to time anything.

Oh yes, indeed. But, I have found through reading "a few" examples and newbie question that somehow for them going from a LED example to something else is too abstract/large a leap. Many want to see an example of one LED + one stepper or two DC motors or one button scan + two LEDs or any other specific combination.