ezLED Library - LED Array Example

This tutorial shows how to use an example of ezLED library that controls multiple LED in an array.

Hardware Required

1×Arduino UNO or Genuino UNO
1×USB 2.0 cable type A/B
3×LED
3×220 ohm resistor
1×Breadboard
1×Jumper Wires
1×(Optional) 9V Power Adapter for Arduino
1×(Recommended) Screw Terminal Block Shield for Arduino Uno
1×(Optional) Transparent Acrylic Enclosure For Arduino Uno
Please note: These are Amazon affiliate links. If you buy the components through these links, We will get a commission at no extra cost to you. We appreciate it.

About LED

About ezLED Library

Wiring Diagram

Arduino multiple LED Wiring Diagram

This image is created using Fritzing. Click to enlarge image

Arduino Code

Quick Steps

  • Install ezLED library. See How To
  • Connect Arduino to PC via USB cable
  • Open Arduino IDE, select the right board and port
  • On Arduino IDE, Go to File Examples ezLED LEDArray example
/* Created by ArduinoGetStarted.com This example code is in the public domain Tutorial page: https://arduinogetstarted.com/library/led/example/arduino-led-array This example blinks 3 LED: + blink one LED forever + blink one LED in 5 seconds + blink one LED in 10 times + without using delay() function. This is a non-blocking example */ #include <ezLED.h> // ezLED library #define NUM_LED 3 // three LEDs #define PIN_LED_1 7 #define PIN_LED_2 8 #define PIN_LED_3 9 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(500, 500); // 500ms ON, 500ms OFF, blink immediately ledArray[1].blinkInPeriod(100, 100, 5000); // 100ms ON, 100ms OFF, blink in 5 seconds, blink immediately ledArray[2].blinkNumberOfTimes(250, 750, 10); // 250ms ON, 750ms OFF, repeat 10 times, blink immediately } void loop() { for (int i = 0; i < NUM_LED; i++) ledArray[i].loop(); // MUST call the led.loop() function in loop() // print the operation state for (int i = 0; i < NUM_LED; i++) { Serial.print("LED "); Serial.print(i + 1); if (ledArray[i].getState() == LED_DELAY) Serial.println(" DELAYING"); else if (ledArray[i].getState() == LED_BLINKING) Serial.println(" BLINKING"); else if (ledArray[i].getState() == LED_IDLE) Serial.println(" BLINK ENDED"); } // DO SOMETHING HERE }
  • Click Upload button on Arduino IDE to upload code to Arduino
Arduino IDE Upload Code
  • Open Serial Monitor to see result:
COM6
Send
LED 1 BLINKING LED 2 BLINKING LED 3 BLINKING LED 1 BLINKING LED 2 BLINKING LED 3 BLINKING LED 1 BLINKING LED 2 BLINK ENDED LED 3 BLINKING LED 1 BLINKING LED 2 BLINK ENDED LED 3 BLINKING LED 1 BLINKING LED 2 BLINK ENDED LED 3 BLINKING LED 1 BLINKING LED 2 BLINK ENDED LED 3 BLINKING
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

Code Explanation

Read the line-by-line explanation in comment lines of source code!

The Best Arduino Starter Kit

※ OUR MESSAGES