#include <Arduino.h>
#define LED1 18
#define LED2 19
#define BLINK_INTERVAL_1 500
#define BLINK_INTERVAL_2 700
uint64_t led1_last_millis = 0;
uint64_t led2_last_millis = 0;
void toggle_led(int pin){
digitalWrite(pin, !digitalRead(pin));
}
void setup() {
// put your setup code here, to run once:
pinMode(LED1, OUTPUT);
pinMode(LED2, OUTPUT);
Serial.begin(9600);
}
void loop() {
// put your main code here, to run repeatedly:
uint64_t current_millis = millis();
if (current_millis - led1_last_millis >= BLINK_INTERVAL_1) {
Serial.print("LED1: ");
Serial.println(current_millis - led1_last_millis);
toggle_led(LED1);
led1_last_millis = current_millis;
}
if (current_millis - led2_last_millis > BLINK_INTERVAL_2) {
Serial.print("LED2: ");
Serial.println(current_millis - led2_last_millis);
toggle_led(LED2);
led2_last_millis = current_millis;
}
// delay(10); // only for wokwi simulation.
}