#define INTERVAL_1 200 //1 วินาที
unsigned long time_1 = 0;
#define BUTTON_STOP 23
#define BUTTON_START 25
int LED_4 = 10; // กำหนดขา Pin LED
int LED_3 = 11; // กำหนดขา Pin LED
int LED_2 = 12; // กำหนดขา Pin LED
int LED_1 = 13; // กำหนดขา Pin LED
int START = 1;
int STOP = 0;
int count = 0;
void setup()
{
Serial.begin(9600);
pinMode(BUTTON_STOP, INPUT_PULLUP);
pinMode(BUTTON_START, INPUT_PULLUP);
pinMode(LED_1, OUTPUT);
pinMode(LED_2, OUTPUT);
pinMode(LED_3, OUTPUT);
pinMode(LED_4, OUTPUT);
}
int lastState_STOP = HIGH;
int lastState_START = HIGH;
void loop()
{
Serial.print("START -> ");
Serial.println(START);
Serial.print("STOP -> ");
Serial.println(STOP);
int value_STOP = digitalRead((BUTTON_STOP));
if (lastState_STOP != value_STOP)
{
lastState_STOP = value_STOP;
if (value_STOP == HIGH)
{
Serial.println(" STOP released");
}
if (value_STOP == LOW)
{
Serial.println(" STOP pressed");
START = 0;
STOP = 1;
}
}
int value_START = digitalRead((BUTTON_START));
if (lastState_START != value_START)
{
lastState_START = value_START;
if (value_START == HIGH)
{
Serial.println(" START released");
}
if (value_START == LOW)
{
Serial.println(" START pressed");
START = 1;
STOP = 0;
}
}
if (START == 1 && STOP == 0)
{
Serial.println("LED -> BLINK");
if(millis() - time_1 > INTERVAL_1)
{
time_1 = millis();
count++;
}
if (count%8 == 0)
{
digitalWrite(LED_1, HIGH);
digitalWrite(LED_2, LOW);
digitalWrite(LED_3, LOW);
digitalWrite(LED_4, LOW);
}
else if (count%8 == 1)
{
digitalWrite(LED_1, LOW);
digitalWrite(LED_2, HIGH);
digitalWrite(LED_3, LOW);
digitalWrite(LED_4, LOW);
}
else if (count%8 == 2)
{
digitalWrite(LED_1, LOW);
digitalWrite(LED_2, LOW);
digitalWrite(LED_3, HIGH);
digitalWrite(LED_4, LOW);
}
else if (count%8 == 3)
{
digitalWrite(LED_1, LOW);
digitalWrite(LED_2, LOW);
digitalWrite(LED_3, LOW);
digitalWrite(LED_4, HIGH);
}
else if (count%8 == 4)
{
digitalWrite(LED_1, LOW);
digitalWrite(LED_2, LOW);
digitalWrite(LED_3, LOW);
digitalWrite(LED_4, HIGH);
}
else if (count%8 == 5)
{
digitalWrite(LED_1, LOW);
digitalWrite(LED_2, LOW);
digitalWrite(LED_3, HIGH);
digitalWrite(LED_4, LOW);
}
else if (count%8 == 6)
{
digitalWrite(LED_1, LOW);
digitalWrite(LED_2, HIGH);
digitalWrite(LED_3, LOW);
digitalWrite(LED_4, LOW);
}
else if (count%8 == 7)
{
digitalWrite(LED_1, HIGH);
digitalWrite(LED_2, LOW);
digitalWrite(LED_3, LOW);
digitalWrite(LED_4, LOW);
}
}
else if (START == 0 && STOP == 1)
{
Serial.println("LED -> OFF");
}
else
{
Serial.println("LED -> NONE");
}
}