Arduino UNO R4 - Meerdere LEDs laten knipperen

Arduino UNO R4 knippert meerdere LEDs

Deze handleiding toont u hoe u een Arduino UNO R4 programmeert om meerdere LEDs met verschillende frequenties te laten knipperen zonder de delay() functie te gebruiken. Het biedt de code op twee manieren:

We zullen demonstreren met drie LEDs. U kunt dit eenvoudig aanpassen voor twee LEDs, vier LEDs, of meer.

Over LED

Verken onze uitgebreide handleiding over LEDs, waarin wordt behandeld hoe u de hardware aansluit, hoe ze werken, hoe u ze instelt met Arduino UNO R4, en programmeetstappen. Lees hier meer:

Bedradingsdiagram

Arduino UNO R4 meerdere LED Bedradingsdiagram

This image is created using Fritzing. Click to enlarge image

Zie De beste manier om Arduino Uno R4 en andere componenten van stroom te voorzien.

Arduino UNO R4 Code - Meerdere LEDs Laten Knipperen

Om verschillende LEDs tegelijkertijd te laten knipperen, mogen we de delay() functie niet gebruiken. Deze functie stopt andere code van het uitvoeren, wat betekent dat we verschillende LEDs niet samen kunnen laten knipperen. We moeten in plaats daarvan de millis() functie gebruiken om de timing te beheren.

Voor beginners kan het beheren van timestamps bij het knipperen van verschillende LEDs moeilijk zijn. Gelukkig maakt de ezLED library dit eenvoudiger door timestamp-beheer binnen de library af te handelen. Dit betekent dat gebruikers zich geen zorgen hoeven te maken over het beheren van timestamps wanneer ze de library gebruiken. Ook kan het gebruik van een groep LEDs de code duidelijker en korter maken.

/* * Deze Arduino UNO R4 code is ontwikkeld door newbiely.nl * Deze Arduino UNO R4 code wordt zonder enige beperking aan het publiek beschikbaar gesteld. * Voor volledige instructies en schema's, bezoek: * https://newbiely.nl/tutorials/arduino-uno-r4/arduino-uno-r4-blink-multiple-led */ #include <ezLED.h> // ezLED library by ArduinoGetStarted.com #define PIN_LED_1 7 // The Arduino UNO R4 pin connected to LED 1 #define PIN_LED_2 8 // The Arduino UNO R4 pin connected to LED 2 #define PIN_LED_3 9 // The Arduino UNO R4 pin connected to LED 3 ezLED led1(PIN_LED_1); // create ezLED object that attach to pin PIN_LED_1 ezLED led2(PIN_LED_2); // create ezLED object that attach to pin PIN_LED_2 ezLED led3(PIN_LED_3); // create ezLED object that attach to pin PIN_LED_3 void setup() { Serial.begin(9600); led1.blink(800, 200); // 800ms ON, 200ms OFF, blink immediately led2.blink(500, 500); // 500ms ON, 500ms OFF, blink immediately led3.blink(500, 500, 500); // 500ms ON, 500ms OFF, blink after 500ms } void loop() { led1.loop(); // MUST call the led1.loop() function in loop() led2.loop(); // MUST call the led2.loop() function in loop() led3.loop(); // MUST call the led3.loop() function in loop() // DO SOMETHING HERE }

Snelle Stappen

Volg deze instructies stap voor stap:

  • Als dit uw eerste keer is met de Arduino Uno R4 WiFi/Minima, raadpleeg dan de tutorial over het instellen van de omgeving voor Arduino Uno R4 WiFi/Minima in de Arduino IDE.
  • Verbind de Arduino Uno R4 met de LEDs volgens het meegeleverde diagram.
  • Verbind de Arduino Uno R4 board met uw computer met behulp van een USB-kabel.
  • Start de Arduino IDE op uw computer.
  • Selecteer het juiste Arduino Uno R4 board (bijv. Arduino Uno R4 WiFi) en COM-poort.
  • Klik op het Libraries pictogram aan de linkerkant van de Arduino IDE.
  • Typ "ezLED" in het zoekvak en vind de LED library gemaakt door Arduino UNO R4GetStarted.
  • Klik op de Install knop om de ezLED library toe te voegen.
Arduino UNO R4 led library
  • Kopieer de meegeleverde code en plak deze in de Arduino IDE.
  • Om de code naar een Arduino UNO R4 board te laden, klik op de Upload knop in de Arduino IDE.
How to upload Arduino UNO R4 code on Arduino IDE
  • Kijk of de LED aan of uit is.

Arduino UNO R4 Code - Meerdere LEDs Laten Knipperen met behulp van een array

We kunnen de bovenstaande code verbeteren door een array van LEDs te gebruiken. De onderstaande code gebruikt de array om LED objecten te beheren.

/* * Deze Arduino UNO R4 code is ontwikkeld door newbiely.nl * Deze Arduino UNO R4 code wordt zonder enige beperking aan het publiek beschikbaar gesteld. * Voor volledige instructies en schema's, bezoek: * https://newbiely.nl/tutorials/arduino-uno-r4/arduino-uno-r4-blink-multiple-led */ #include <ezLED.h> // ezLED library by ArduinoGetStarted.com #define NUM_LED 3 // three LEDs #define PIN_LED_1 7 // The Arduino UNO R4 pin connected to LED 1 #define PIN_LED_2 8 // The Arduino UNO R4 pin connected to LED 2 #define PIN_LED_3 9 // The Arduino UNO R4 pin connected to LED 3 ezLED ledArray[NUM_LED] = { ezLED(PIN_LED_1), // create ezLED object that attach to pin PIN_LED_1 ezLED(PIN_LED_2), // create ezLED object that attach to pin PIN_LED_2 ezLED(PIN_LED_3) // create ezLED object that attach to pin PIN_LED_3 }; void setup() { Serial.begin(9600); ledArray[0].blink(800, 200); // 800ms ON, 200ms OFF, blink immediately ledArray[1].blink(500, 500); // 500ms ON, 500ms OFF, blink immediately ledArray[2].blink(500, 500, 500); // 500ms ON, 500ms OFF, blink after 500ms } void loop() { for (int i = 0; i < NUM_LED; i++) ledArray[i].loop(); // MUST call the led.loop() function in loop() // DO SOMETHING HERE }

Met behulp van de ezLED library, kunnen we flexibel meerdere LEDs laten knipperen zoals dit:

  • Verschillende LEDs laten knipperen met verschillende snelheden.
  • Verschillende LEDs laten beginnen met knipperen op verschillende tijden.
  • Elke LED laten knipperen gedurende een specifieke duur.
  • Elke LED een bepaald aantal keren laten knipperen.

Bekijk de voorbeeldcode in de library.

Video Tutorial

We overwegen het maken van videotutorials. Als u videotutorials belangrijk vindt, abonneer u dan op ons YouTube-kanaal om ons te motiveren de video's te maken.

※ ONZE BERICHTEN

  • U bent welkom om de link naar deze tutorial te delen. Gebruik onze inhoud echter niet op andere websites. We hebben veel moeite en tijd gestoken in het maken van de inhoud, respecteer alstublieft ons werk!