int ledPin[] = {13, 12, 11,10};
int ledDelay[4]={8000, 4000,2000, 1000};
unsigned long lastChangeTime[4];
unsigned long currTime;
void setup() {
currTime = millis();
for(int i=0;i<4;i++){
lastChangeTime[i] = currTime;
pinMode(ledPin[i], OUTPUT);
}
Serial.begin(9600);
}
void loop() {
currTime = millis();
for (int i = 0; i < 4; i++) {
if (currTime - lastChangeTime[i] >= ledDelay[i]) {
digitalWrite(ledPin[i], !digitalRead(ledPin[i]));
Serial.print("Current time: ");
Serial.print(currTime);
Serial.print(" ms, Last change time for LED on pin ");
Serial.print(ledPin[i]);
Serial.print(": ");
Serial.print(lastChangeTime[i]);
Serial.println(" ms");
lastChangeTime[i] = currTime;
}
}
}
Loading
st-nucleo-c031c6
st-nucleo-c031c6