Skip to main content

Interfacing of Multicolor LED with Arduino


In this tutorial, we will learn how to interface an RGB led with Arduino.
An RGB led consist of three Led’s namely red, green and blue inside a single package.

It is having three pins the longer one(2) is the GND(in the case of the common cathode) and the other three pins represent the three colours.
You all must have heard about the RGB colour model, it is a model representing the colours that can be generated with the combination of three basic colours.
Now let’s interface the led and have some fun with it.
Components required
  • Resistor                         1No.              200 ohms
  • RGB led                         1No. 
  • Arduino UNO                 1No.
  • Few connecting wires
Follow the video below for circuit connection reference.
After making the circuit connections dump the code given below. 
int led1 = 3;
int led2 =5;
int led3 =6;
void setup() 

{
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
}
void loop() 

{
digitalWrite(led1, HIGH);
delay(1000);
digitalWrite(led1, LOW);
delay(1000);
digitalWrite(led2, HIGH);
delay(1000);
digitalWrite(led2, LOW);
delay(1000);
digitalWrite(led3, HIGH);
delay(1000);
digitalWrite(led3, LOW);
delay(1000);
digitalWrite(led3, LOW);
delay(1000);
}

 
The above code is to observe the basic colours; other combinations can also be generated.



Now apply your own logic and try to generate your own patterns.
  • RGB LEDs are of two types:
                 Common anode
                 The common cathode (which we have used in the tutorial)

Thinking?
Join our hands-on training courses.
To know more visit us at https://karkhana.club/

Comments

Popular posts from this blog

Servo Motor Interfacing with Arduino

In this tutorial, we will learn how to interface a servo motor using Arduino UNO. The motor inside the setup of a servo is attached by gears to the control wheel. When the motor rotates, the potentiometer’s resistance changes hence the control circuit can precisely regulate how much movement there is and in which direction. The motor’s speed is proportional to the difference between its actual position and desired position. When the shaft is near the desired position it turns slowly else fast. This is called proportional control. They are controlled by sending PWM (pulse width modulated) signals through the control wire. They are available in many sizes and are of three types Positional rotation  Continuous rotation  Linear The most common type is the positional rotational one. So now we are familiar with the motor let us interface it Components Required: Servo motor 1No Arduino UNO 1No Few connecting wires Breadboard Follow the video belo...

Interfacing of Push Button With ATmega16

In this tutorial, we will learn how to interface a switch(push button) with ATMEGA16 using AVR studio. In the previous video, we learnt how to interface LEDs with ATMEGA16 using AVR studio. The push-button is a component that connects two points in a circuit when you press it. The example turns on an LED when you press the button. Here we have connected two push button to PORT C in  PC0 & PC1. And for LEDs connection please refer my previous blog. Components Required:- AVR Controller(Atmega16) LEDs Push Button Connecting Wires USBASP Programmer Dump the following code after connection  and select chip ATMEGA 16. #include<avr/io.h> #include<util/delay.h> void main()  {    DDRB=0b11111111;    int S1;    int S2;      while(1)    {     S1=PINC&0b00000001;     S2=PINC&0b00000010;     if(S1==0b00000001)     { ...

LED Brightness Control using Touch Sensor and ARM

Hey Folks, In this tutorial, we will learn, how to change  the intensity of light using touch sensor the ARM (FRDM-KL25Z). INTRODUCTION The FRDM-KL25Z is an ultra-low-cost development platform for Kinetis L Series KL1x (KL14/15) and KL2x (KL24/25) MCUs built on ARM® Cortex™-M0+ processor.  The FRDM-KL25Z has been designed by NXP in collaboration with mbed for prototyping all sorts of devices, especially those requiring the size and price point offered by Cortex-M0+ and the power of USB Host and Device. The FRDM-KL25Z is supported by a range of NXP and third-party development software. It is packaged as a development board with connectors to break out to stripboard and breadboard and includes a built-in USB FLASH programmer.               FEATURES NXP KL25Z Kinetis KL2x MCU (MKL25Z128VLK4) High-performance ARM® Cortex™-M0+ Core 48MHz, 16KB RAM, 128KB FLASH USB (Host/Device) SPI (2) I2C (2) UART (3) PWM (TPM) ...