[In Depth] Arduino Blinking LED Code & Interfacing

Are you just starting out on your Arduino journey and want to make your first project?

Look no further! Our in-depth guide on Arduino Blinking LED is the perfect starting point for you. 

We understand that simplicity is key when you’re new to the world of Arduino, and that’s why we’ve created this tutorial to help you get started. So in this article, we’ll take you step-by-step through the process of programming (code) and connecting the LED to your Arduino Uno.

By the end of this article, you’ll have a solid foundation to unleash your creativity to build more complex projects in the future using Arduino.

Let’s get started!

Arduino Blinking LED

Arduino blinking LED is a basic project where you use an Arduino board to make an LED light turn on and off. LEDs emit light when electricity passes through them, and by programming the Arduino, you can control the LED’s blinking pattern. It’s a great way for beginners to learn about Arduino and how to interface with electronic components.

let’s understand the basics. LED, short for (Light Emitting Diode), is a semiconductor device that transforms electrical energy into light energy. When an electric current flows through it, the LED emits light. Essentially, an LED is a specific type of diode with the unique capability of producing visible light.

In this project, we’ll be using a 5mm LED, which is a common size. However, LEDs come in different shapes, colors, and sizes, allowing for versatility in design and application.

Arduino Blinking LED - ROBOSANS
LEDs

They are known for their energy efficiency, durability, and long lifespan compared to traditional light sources. LEDs have revolutionized the lighting industry, offering efficient and environmentally friendly alternatives to incandescent bulbs.

LEDs are widely used in various applications, including: lighting, displays, indicators, and more. it becomes an integral part of modern electronics, enabling creative and innovative lighting solutions in various fields because of these three characteristics:

  1. Compact size.
  2. Low power consumption.
  3. The ability to emit light in various colors.

LED Pinout

LEDs have two legs: the anode and the cathode. The anode is the longer leg and represents the positive side, while the cathode is the shorter leg and represents the negative side. It is essential to connect the LED correctly in a circuit to ensure it functions properly.

LED Pinout
LED Pinout

How Blinking LED Works?

Blinking an LED is pretty simple. When you connect an LED to a power source like an Arduino, you can make it turn on and off quickly, creating a blinking effect.

The LED needs a certain amount of voltage and current to emit light. By controlling the flow of electricity using code, you can make the LED blink. The code tells the Arduino to turn the LED on and off repeatedly at a fast pace, which makes it look like it’s blinking.

The code typically involves setting a specific pin on the Arduino as an output pin and using digital write commands to turn the pin high (providing voltage) and low (no voltage). This rapid switching creates a blinking pattern.

You can adjust the speed and pattern of the blinking by changing the code, by controlling the duration of the high and low states, and by adding delays, this allows for a wide range of possibilities to create all sorts of cool blinking effects with the LED.

Why Do You Need A Resistor For LED?

Using a resistor with an LED is essential for several reasons. The primary purpose of the resistor is to limit the amount of current flowing through the LED. LEDs have a specific forward voltage drop, and exceeding this voltage or allowing too much current can damage the LED or significantly reduce its lifespan.

The value of the resistor depends on the forward voltage drop of the LED and the desired current flowing through it. To calculate the appropriate resistor value, you can use Ohm’s Law, which states that R = V/I.

The forward voltage drop of an LED is typically provided in the LED’s datasheet or can be found in general specifications. As for the desired current, it is often recommended to keep it within a safe range, such as 10-20 mA for standard LEDs.

Once you have the forward voltage drop (V) and desired current (I), you can calculate the resistor value using Ohm’s Law. The formula becomes: R = (V-source – V-LED) / I, where V-source is the supply voltage (Arduino voltage which is 5V).

For example, if the voltage drop of the LED is (2V) which is common for standard LEDs, the desired current is 20mA, and the supply voltage is 5V, the resistor value would be R = (5V – 2V) / 0.02A = 150 ohm. In this case, a resistor with a value close to 150 ohms, so to be on the safe side, using the 220 ohms resistor would be suitable.

By using the appropriate resistor, you ensure that the LED operates within safe limits, preventing damage and maximizing its lifespan. It’s important to note that resistor values may vary depending on specific LED specifications and the desired current, so it’s always a good practice to refer to the LED datasheet and perform the necessary calculations to determine the precise resistor value.

Blinking LED Circuit Diagram 

Look at this picture down below which shows you the blinking LED circuit diagram

Blinking LED Circuit Diagram
Blinking LED Circuit Diagram

LED Datasheet

For more details, you can download the LED datasheet file down below.

LED With Arduino

Connecting the LED to an Arduino is an easy process, but it’s important to gather all the necessary components beforehand.

Parts Requirement

  • Arduino Uno
  • 5mm LED (one or multiple ones) 
  • 220 ohm resistor
  • Breadboard
  • Hook-up wires

Interfacing LED With Arduino

For interfacing LED with Arduino, follow these simple steps:

  1. Gather the components that we’ve talked about them before: You will need an Arduino Uno, an LED, a 220-ohm resistor, breadboard, and some Hook-up wires.
  1. Identify the LED pins: Look at the LED closely. One leg of the LED will be longer than the other. The longer leg is the positive side called the (anode), and the shorter leg is the negative side called the (cathode).
  1. Connect the resistor: Take the resistor and connect one end to the cathode leg of the LED. The other end of the resistor will be connected to the ground (GND) pin on the Arduino.
  1. Connect the anode of the LED: Connect the anode leg of the LED to a digital pin on the Arduino. You can choose any digital pin, but remember which one you used as you will need to specify it in the code which is (pin 13 in our case).
  1. Power up the Arduino: Connect your Arduino to a power source by using a USB cable.
  1. Upload the code: Open the Arduino IDE, write a simple code to control the LED, and upload it to the Arduino board. The code will consist of turning the specified pin HIGH and LOW to control the LED’s state, we will talk about it in the code section.

Once everything is connected and powered up, the Arduino will send signals to the specified pin, and the LED will blink accordingly.

Remember, before connecting any components, double-check your wiring to ensure correct connections and avoid any short circuits. 

Then watch your LED blinking. Happy experimenting!

Blinking LED Fritzing

You can download the blinking LED Fritzing file for the connection, here down below. 

Arduino Blinking LED Code

Now, let’s start coding! you can copy the code and use it on your project, the code is here down below.

Below the code, we will explain how it works.

void setup() {  
  pinMode(13, OUTPUT); //Set digital pin (13) as an output
}

//Set the loop function to run forever
void loop() {
  digitalWrite(13, HIGH); //turn the LED on (5V)
  delay(1000); //Wait for 1 second which is (1000 milliseconds)
  digitalWrite(13, LOW); //turn the LED off (0V)
  delay(1000); //Wait for 1 second which is (1000 milliseconds)  
}

It’s important to know how the code works, and I’m here to tell you:

pinMode(13, OUTPUT);  

This line tells the Arduino that we want to use pin 13 to control something (like an LED). It sets up pin 13 as an output pin, allowing us to send signals from the Arduino to control external devices.

digitalWrite(13, HIGH); & digitalWrite(13, LOW); 

This line controls the voltage level on pin 13. When we use HIGH, it sends a high voltage (like turning on a LED) and when we use LOW, it sends a low voltage (like turning off a LED).

delay(1000); 

This line tells the Arduino to wait or pause for a specific amount of time. The number in parentheses (1000) represents milliseconds, so delay(1000) means we want the Arduino to wait for 1000 milliseconds, which is equal to 1 second. It helps us create a time delay or pause in the program.

void loop()

This is a special function that runs continuously in an Arduino program. Anything inside this function will keep repeating over and over again. In this code, the loop() function turns the LED on, waits for a second, turns it off, and waits for another second. It keeps doing this in an endless loop, making the LED blink continuously.

Let’s summarize: These functions work together to set up the pin as an output, control the LED by turning it on or off, create pauses between the on and off states using delay(), and repeat this over and over using loop(), to achieve the blinking pattern.

Simulation for 1 LED

Congratulations! You’ve just made your first project using Arduino, this is the simulation result and the connection for blinking LED,and your project should be work like this:

Arduino Blinking LED Code Simulation
Arduino Blinking LED Code Simulation

Multiple Blinking LED Arduino Code 

Multiple blinking LEDs are the same concept as 1 blinking LED but with some differences. Let”s find out!

2 LED Blinking Arduino Code 

For 2 blinking LEDs, you need to connect each LED to a separate pin on the Arduino board. This requires additional wiring and configuration.

In the code, you would assign two different pins as outputs and control each LED individually using separate digitalWrite() statements. 

This is the 2 LED blinking Arduino code down below.

Below the code, you will see the simulation result and the connection.

void setup () { 
  pinMode ( 13, OUTPUT); //Set digital pin (13) as an output  
  pinMode ( 11, OUTPUT); //Set digital pin (11) as an output  
}  

//Set the loop function to run forever
void loop() { 
  digitalWrite (13, HIGH); //turn the LED(1) on (5V)   
  digitalWrite (11, LOW); //turn the LED(2) off (0V) 
  delay(1000); //Wait for 1 second which is (1000 milliseconds) 
  digitalWrite (13, LOW); //turn the LED(1) off (0V)    
  digitalWrite (11, HIGH); //turn the LED(2) on (5V)
  delay(1000); //Wait for 1 second which is (1000 milliseconds) 
}  

Simulation for 2 LED

This is the simulation result and the connection for 2 LED blinking, so your project should be work like this:

2 LED Blinking Arduino Code Simulation
2 LED Blinking Arduino Code Simulation

4 LED Blinking Arduino Code 

For 4 blinking LEDs, the same concept as for 2 LEDs but with 4 LEDs.

This is the 4 LED blinking Arduino code down below.

Below the code, you will see the simulation result and the connection.

void setup () {  
  pinMode ( 13, OUTPUT); //Set digital pin (13) as an output  
  pinMode ( 11, OUTPUT); //Set digital pin (11) as an output
  pinMode ( 5, OUTPUT); //Set digital pin (5) as an output
  pinMode ( 3, OUTPUT); //Set digital pin (3) as an output  
}  

//Set the loop function to run forever
void loop() {  
  digitalWrite (13, HIGH); //turn the LED(1) on (5V)    
  digitalWrite (11, LOW); //turn the LED(2) off (0V) 
  digitalWrite (5, LOW); //turn the LED(3) off (0V)
  digitalWrite (3, HIGH); //turn the LED(4) on (5V)
  delay(1000); //Wait for 1 second which is (1000 milliseconds)  
  digitalWrite (13, LOW); //turn the LED(1) off (0V)    
  digitalWrite (11, HIGH); //turn the LED(2) on (5V)
  digitalWrite (5, HIGH); //turn the LED(3) on (5V)
  digitalWrite (3, LOW); //turn the LED(4) off (0V) 
  delay(1000); //Wait for 1 second which is (1000 milliseconds)  
}

Simulation for 4 LED

This is the simulation result and the connection for 4 LED blinking, so your project should be work like this:

4 LED Blinking Arduino Code Simulation - ROBOSANS
4 LED Blinking Arduino Code Simulation

Blinking LED Frequently Asked Questions

Do You Need A Resistor For LED?

Yes, you need a resistor for an LED. The resistor is necessary to limit the amount of current flowing through the LED. Without a resistor, the LED may receive too much current, leading to overheating and potential damage.

What Is LED Blinking With Arduino?

LED blinking with Arduino is a basic project that utilizes an Arduino board to control the on and off states of an LED. It’s a great way to teach beginners how to control an LED’s blinking pattern using an Arduino board and to learn more about Arduino and electronic components.

Are you still here? Great! save this article as a reference to make your first project using Arduino.

Thank you for the valuable time that you are taking to read our article about Arduino blinking LED. We hope that this tutorial has provided you with the essential knowledge that you are looking for. 

Welcome to ROBOSENS, our mission is to simplify the information by providing you with brief Arduino tutorials and straight to the point.

Do you want to learn more about Arduino and dive in deeper, to make more projects and to build that momentum to master Arduino? Check out these articles below.

Interfacing 7 Segment Display with Arduino

Interfacing 4×4 Keypad with Arduino 

16×2 LCD Interfacing with Arduino

Sources:

arduino.cc

wikipedia.org

Scroll to Top