// Lab Practice #2.6 : Turn on (LED Blink Alternate)
// define devices pin //
#define LED13 13 // EXTERNAL LED on pin 7
#define LED12 12 // EXTERNAL LED on pin 8
#define LED11 11
#define LED10 10
#define LED9 9
#define LED8 8
#define LED7 7
#define LED6 6
#define LED5 5
#define LED4 4
#define LED3 3
const int buttonPin = 2;
int ledState = HIGH;
int buttonState = 0;
int lastButtonState = LOW;
unsigned long lastDebounceTime = 0; // the last time the output pin was toggled
unsigned long debounceDelay = 50; // the debounce time; increase if the output flickers
static void Timer1_setup(void)
{
TCCR1A = 0; //CTC mode
TCCR1B = B00001100; //prescaler=256,CTC mode
TIMSK1 |= B00000010; //Interrupt enable for OCR1A compare match
OCR1A = 6250-1; //OC match value for 100ms time base generation
}
void setup()
{
pinMode(LED13, OUTPUT); // External LED as Output
pinMode(LED12, OUTPUT); // External LED as Output
pinMode(LED11, OUTPUT);
pinMode(LED10, OUTPUT);
pinMode(LED9, OUTPUT);
pinMode(LED8, OUTPUT);
pinMode(LED7, OUTPUT);
pinMode(LED6, OUTPUT);
pinMode(LED5, OUTPUT);
pinMode(LED4, OUTPUT);
pinMode(LED3, OUTPUT);
pinMode(buttonPin, INPUT);
digitalWrite(LED3, ledState);
}
void loop()
{
buttonState = digitalRead(buttonPin);
if(buttonState == HIGH)
{
for(int i = 0; i < 10; i++)
{
//delay(1000);
//buttonState = digitalRead(buttonPin);
if(buttonState == HIGH)
{
// break;
}
digitalWrite(LED13, HIGH); // LED1 on
//digitalWrite(LED4, LOW); // LED2 off
delay(100); // Delay for 1sec
//buttonState = digitalRead(buttonPin);
digitalWrite(LED13, LOW); // LED1 off
digitalWrite(LED12, HIGH); // LED2 on
delay(100);
//buttonState = digitalRead(buttonPin);
digitalWrite(LED12, LOW);
digitalWrite(LED11, HIGH);
delay(100);
//buttonState = digitalRead(buttonPin);
if(buttonState == HIGH)
{
//break;
}
digitalWrite(LED11, LOW);
digitalWrite(LED10, HIGH);
delay(100);
//buttonState = digitalRead(buttonPin);
if(buttonState == HIGH)
{
}
digitalWrite(LED10, LOW);
digitalWrite(LED9, HIGH);
delay(100);
//buttonState = digitalRead(buttonPin);
if(buttonState == HIGH)
{
//break;
}
digitalWrite(LED9, LOW);
digitalWrite(LED8, HIGH);
delay(100);
//buttonState = digitalRead(buttonPin);
if(buttonState == HIGH)
{
//break;
}
digitalWrite(LED8, LOW);
digitalWrite(LED7, HIGH);
delay(100);
//buttonState = digitalRead(buttonPin);
if(buttonState == HIGH)
{
//break;
}
digitalWrite(LED7, LOW);
digitalWrite(LED6, HIGH);
delay(100);
//buttonState = digitalRead(buttonPin);
if(buttonState == HIGH)
{
//break;
}
digitalWrite(LED6, LOW);
digitalWrite(LED5, HIGH);
delay(100);
//buttonState = digitalRead(buttonPin);
if(buttonState == HIGH)
{
//break;
}
digitalWrite(LED5, LOW);
digitalWrite(LED4, HIGH);
delay(100);
digitalWrite(LED4, LOW);
//buttonState = digitalRead(buttonPin);
if(buttonState == HIGH)
{
//break;
}
}
}
/*if(buttonState == LOW)
{
digitalWrite(LED13, LOW);
digitalWrite(LED12, LOW);
digitalWrite(LED11, LOW);
digitalWrite(LED10, LOW);
digitalWrite(LED9, LOW);
digitalWrite(LED8, LOW);
digitalWrite(LED7, LOW);
digitalWrite(LED6, LOW);
digitalWrite(LED5, LOW);
digitalWrite(LED4, LOW);
}
*/
//delay(10000);
digitalWrite(LED3, LOW);
}