Blink ledde med någon på/av timing, med 1 funktion och ingen försening (3 / 3 steg)
Steg 3: En funktion kan användas av alla lysdioder
Och här är den sista koden med en andra ledde.
Det enda var att förklara utanför funktionen är matrisen, som lagrar millis värdet för varje led du vill använda.
Så när du anropar funktionen du skriver: som led, på tid, tid, array position (som är unik för varje ledde!)
#define redLed 5
#define bluLed 6
lång previousMillis [2]. [x] = antal lampor
void setup() {
pinMode (redLed, produktionen);
pinMode (bluLed, produktionen);
}
void loop() {
OnOffBlink (som ledde?, tOn, fičuru, en av previousMillis);
OnOffBlink (redLed, 300, 500, 0); matris måste vara olika
OnOffBlink (bluLed, 300, 300, 1); för varje led
}
void OnOffBlink (int ledde, int tOn, int fičuru, int array) {
statisk int timer = tOn;
om ((millis() - previousMillis[array]) > = timer) {
om (digitalRead(led) == hög) {
timer = fičuru;
} annat {
timer = tOn;
}
digitalWrite (ledde,! digitalRead(led));
previousMillis [samling] = millis();
}
}
Hoppas ni gillar den.
Om du har tips, gärna tips, kritiker och allt kommentar nedan!