|
#include <Bounce.h> |
|
const int ledOne = 1; |
|
const int ledTwo = 2; |
|
const int ledThree = 3; |
|
const int ledFour = 4; |
|
const int ledFive = 5; |
|
const int ledSix = 6; |
|
const int ledSeven = 7; |
|
const int ledEight = 8; |
|
const int ledNine = 9; |
|
const int ledTen = 10; |
|
const int button = 11; |
|
int delayTime = 300; |
|
long lastMillis; |
|
long currentMillis; |
|
Bounce bouncer = Bounce(button,5); |
|
|
|
void setup() { |
|
pinMode(ledOne, OUTPUT); |
|
pinMode(ledTwo, OUTPUT); |
|
pinMode(ledThree, OUTPUT); |
|
pinMode(ledFour, OUTPUT); |
|
pinMode(ledFive, OUTPUT); |
|
pinMode(ledSix, OUTPUT); |
|
pinMode(ledSeven, OUTPUT); |
|
pinMode(ledEight, OUTPUT); |
|
pinMode(ledNine, OUTPUT); |
|
pinMode(ledTen, OUTPUT); |
|
pinMode(button, INPUT); |
|
lastMillis = millis(); |
|
} |
|
|
|
void adjustDelayTime(){ |
|
bouncer.update(); |
|
if (bouncer.risingEdge()) { |
|
delayTime = delayTime - 100; |
|
if (delayTime <= 0) delayTime = 300; |
|
} |
|
} |
|
|
|
void delayUsingMillis() { |
|
currentMillis = millis(); |
|
while ((currentMillis - lastMillis) < delayTime) { |
|
currentMillis = millis(); |
|
adjustDelayTime(); |
|
} |
|
lastMillis = millis(); |
|
} |
|
|
|
void loop() { |
|
digitalWrite(ledOne, HIGH); |
|
delayUsingMillis(); |
|
digitalWrite(ledOne, LOW); |
|
digitalWrite(ledTwo, HIGH); |
|
delayUsingMillis(); |
|
digitalWrite(ledTwo, LOW); |
|
digitalWrite(ledThree, HIGH); |
|
delayUsingMillis(); |
|
digitalWrite(ledThree, LOW); |
|
digitalWrite(ledFour, HIGH); |
|
delayUsingMillis(); |
|
digitalWrite(ledFour, LOW); |
|
digitalWrite(ledFive, HIGH); |
|
delayUsingMillis(); |
|
digitalWrite(ledFive, LOW); |
|
digitalWrite(ledSix, HIGH); |
|
delayUsingMillis(); |
|
digitalWrite(ledSix, LOW); |
|
digitalWrite(ledSeven, HIGH); |
|
delayUsingMillis(); |
|
digitalWrite(ledSeven, LOW); |
|
digitalWrite(ledEight, HIGH); |
|
delayUsingMillis(); |
|
digitalWrite(ledEight, LOW); |
|
digitalWrite(ledNine, HIGH); |
|
delayUsingMillis(); |
|
digitalWrite(ledNine, LOW); |
|
digitalWrite(ledTen, HIGH); |
|
delayUsingMillis(); |
|
digitalWrite(ledTen, LOW); |
|
digitalWrite(ledNine, HIGH); |
|
delayUsingMillis(); |
|
digitalWrite(ledNine, LOW); |
|
digitalWrite(ledEight, HIGH); |
|
delayUsingMillis(); |
|
digitalWrite(ledEight, LOW); |
|
digitalWrite(ledSeven, HIGH); |
|
delayUsingMillis(); |
|
digitalWrite(ledSeven, LOW); |
|
digitalWrite(ledSix, HIGH); |
|
delayUsingMillis(); |
|
digitalWrite(ledSix, LOW); |
|
digitalWrite(ledFive, HIGH); |
|
delayUsingMillis(); |
|
digitalWrite(ledFive, LOW); |
|
digitalWrite(ledFour, HIGH); |
|
delayUsingMillis(); |
|
digitalWrite(ledFour, LOW); |
|
digitalWrite(ledThree, HIGH); |
|
delayUsingMillis(); |
|
digitalWrite(ledThree, LOW); |
|
digitalWrite(ledTwo, HIGH); |
|
delayUsingMillis(); |
|
digitalWrite(ledTwo, LOW); |
|
} |