Led chaser circuit using Arduino Nano with codes. Arduino code for led flashing and chaser effect. Code for different led pattern on Arduino

Led chaser circuit using Arduino Nano with codes

Requirements

1) Arduino Nano

2) Leds

3)Breadboard

4)Jumper wire

5)Micro USB Cable


The circuit is simple to design. Set the Arduino Nano on breadboard. Connect all the LEDs to digital pins of Arduino Nano. 
After connecting LEDs give ground  supply to LEDs from Arduino Nano any GND pin. 
All LEDs share the common ground. 
I have not used resistor here to connect between digital pins and positive terminal of led for protection of led. If you want you can add 450ohm resistor to reduce current flow.
You can also use same code for Arduino Uno to try chaser effect on LEDs.

Also Check – Pins Description and Hardware Components on Arduino Uno 

Circuit Diagram


Steps before uploading code on Arduino board1)Select Board as Arduino Nano in Tools


2)Select processor as Atmega328p (old bootloader ) for arduinno nano board


3)Set Port based on your system provide to Arduino nano in my case port Com5


After all steps verify and upload code on Arduino nano board.

How to check capacity of solar battery? How much back up time will my inverter provide If i use 150Ah and 160Ah battery?

7 led chaser effects using Arduino Nano with code / Different led patterns designs with code

Code

define t 30

define t1 20

define t2 100

define t3 50

void setup() {
// set up pins 2 to 13 as outputs
for (int i = 2; i <= 13; i++) {
pinMode(i, OUTPUT);
}
}

void loop(){

effect_1();
effect_1();

effect_2();
effect_2();

effect_3();
effect_3();

effect_4();
effect_4();

effect_5();
effect_5();

effect_6();
effect_6();

effect_7();
effect_7();
}
//left to right and right to left

//Effect 1
void effect_1()
{
for(int i=2; i<14; i++){ digitalWrite(i, HIGH); delay(t1); digitalWrite(i+1, HIGH); delay(t1); digitalWrite(i+2, HIGH); delay(t1); digitalWrite(i, LOW); delay(t1); digitalWrite(i+1, LOW); delay(t1); } for(int i=13; i>1; i–){
digitalWrite(i, HIGH);
delay(t1);
digitalWrite(i-1, HIGH);
delay(t1);
digitalWrite(i-2, HIGH);
delay(t1);
digitalWrite(i, LOW);
delay(t1);
digitalWrite(i-1, LOW);
delay(t1);
}
}
//Effect 2
void effect_2()
{
int count = 13; // keeps track of second LED movement

// move first LED from left to right and second from right to left
for (int i = 2; i < 13; i++) {
clear();
digitalWrite(i, HIGH); // chaser 1
digitalWrite(count, HIGH); // chaser 2
count–;
// stop LEDs from appearing to stand still in the middle
if (count != 7) {
delay(t2);
}
}

// move first LED from right to left and second LED from left to right
for (int i = 13; i > 2; i–) {
clear();
digitalWrite(i, HIGH); // chaser 1
digitalWrite(count, HIGH); // chaser 2
count++;
// stop LEDs from appearing to stand still in the middle
if (count != 8) {
delay(t2);
}
}
}

//Effect 3

void effect_3()
{
for(int i=2; i<14; i++){
digitalWrite(i, HIGH);
delay(t3);
}
for(int i=2; i<14; i++){
digitalWrite(i, LOW);
delay(t3);
}

for(int i = 14; i>=2; i–){
digitalWrite(i, HIGH);
delay(t3);
}
for(int i = 14; i>=2; i–){
digitalWrite(i, LOW);
delay(t3);
}
}
//Effect 4
void effect_4()
{
for(int j = 2; j <= 13; j++){
digitalWrite(j, HIGH);
delay(t2);
j=j+1;
}
for(int j = 2; j <= 13; j++){
digitalWrite(j, LOW);
delay(t2);
}

for(int k = 15; k > 2; k–){
digitalWrite(k, HIGH);
delay(t2);
k=k-1;
}
for(int k = 15; k > 2; k–){
digitalWrite(k, LOW);
delay(t2);
}
}

//Effect 7
void effect_7()
{
for(int j=2; j<14; j++){ digitalWrite(j, HIGH); delay(t); digitalWrite(j+2, LOW); delay(t); } for(int k = 15; k>2; k–){
digitalWrite(k, HIGH);
delay(t);
digitalWrite(k+2, LOW);
delay(t);
}
}

Watch YouTube Video

Code for chaser Effect 1

int counter;

void setup()
{
counter = 14;
for(int i = 0; i<counter; i++ )
pinMode(i, OUTPUT);
}

void flash(int led, int duration)
{
digitalWrite(led, HIGH);
delay(duration);
digitalWrite(led, LOW);
delay(duration);
}

void loop()
{
for (int i = 0; i < counter; i++)
flash(i, 20); //led duration 20 milliseconds you can change based on your requirements
}

Watch YouTube Video

Code for chaser Effect 2

int counter;

void setup()
{
counter = 14;
for(int i = 0; i<counter; i++ )
pinMode(i, OUTPUT);
}

void flash(int led, int duration)
{
digitalWrite(led, HIGH);
delay(duration);
digitalWrite(led, LOW);
delay(duration);
}

void loop()
{
for (int i = 0; i < counter; i++)
{
flash(i, 40);
if( i < counter)
flash(i-1, 20); //led duration 20 milliseconds you can change based on your requirements
}
}

Code for Chaser Effect  3

int counter;

void setup()
{
counter = 14;
for(int i = 0; i<counter; i++ )
pinMode(i, OUTPUT);
}

void flash(int led, int duration)
{
digitalWrite(led, HIGH);
delay(duration);
digitalWrite(led, LOW);
delay(duration);
}

void loop()
{
for (int i = 0; i < counter; i++)
{
flash(i, 40);
if( i < counter)
flash(i-1, 20);
flash(i-2, 10);
}
}

Code for Chaser Effect 4

int counter, led;

void setup()
{
counter = 14;
for(int i = 0; i<counter; i++ )
pinMode(i, OUTPUT);
}

void flash(int led, int duration)
{
digitalWrite(led, HIGH);
delay(duration);
digitalWrite(led, LOW);
delay(duration);
}

void loop()
{
led = 0;
for ( int i = 0 ; i < 27; i++)
{
flash(led, 20);
if ( i < counter-1 )
led++;
else
led–;
}
}

Code for Chaser Effect 5

int counter, led;

void setup()
{
counter = 14;
for(int i = 0; i<counter; i++ )
pinMode(i, OUTPUT);
}

void flash(int led, int duration)
{
digitalWrite(led, HIGH);
delay(duration);
digitalWrite(led, LOW);
delay(duration);
}

void loop()
{
for ( int i = 0 ; i<counter; i++ )
{
flash(i, 20);
flash(13-i, 20);
}
}

If you have any doubt on code or any circuit connections just message me on my social media accounts.

Thank You!

Have a Good Day, Happy Learning❤

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top