hw_timer_t *timer = NULL;
//Written by Chayathon Rungrueang 6530300082
void ARDUINO_ISR_ATTR onTimer() {
static bool led3 = false;
digitalWrite(16, led3);
led3 = !led3;
}
int present = 0;
int state = 0;
void setup() {
// put your setup code here, to run once:
Serial.begin(115200);
Serial.println("Hello, ESP32!");
pinMode(2, OUTPUT); // LED 1
pinMode(16, OUTPUT); // LED 2
pinMode(17, OUTPUT); // LED 3
pinMode(18, OUTPUT); // LED 4
pinMode(19, OUTPUT); // LED 5
digitalWrite(16, LOW);
timer = timerBegin(1000000);
timerAttachInterrupt(timer, &onTimer);
timerAlarm(timer, 100000, true, 0); // counter led1
}
//true
//false
void loop() {
int future = millis();
if(future - present >= 500)
{
present = future;
if(state == 1)
{
digitalWrite(17,true); // LED3
digitalWrite(2,false); // LED1
digitalWrite(18,false); // LED4
digitalWrite(19,false); // LED5
}
if(state == 2 )
{
digitalWrite(17,false); // LED3
digitalWrite(2,true); // LED1
digitalWrite(18,false); // LED4
digitalWrite(19,false); // LED5
}
if(state == 3)
{
digitalWrite(17,true); // LED3
digitalWrite(2,false); // LED1
digitalWrite(18,true); // LED4
digitalWrite(19,false); // LED5
}
if(state == 4)
{
digitalWrite(17,false); // LED3
digitalWrite(2,true); // LED1
digitalWrite(18,false); // LED4
digitalWrite(19,false); // LED5
}
if(state == 5)
{
digitalWrite(17,true); // LED3
digitalWrite(2,false); // LED1
digitalWrite(18,false); // LED4
digitalWrite(19,false); // LED5
}
if(state == 6)
{
digitalWrite(17,false); // LED3
digitalWrite(2,true); // LED1
digitalWrite(18,true); // LED4
digitalWrite(19,true); // LED5
}
state++;
if(state == 7)
{
state = 0;
}
}
}