• Home
  • Archive
  • Tools
  • Contact Us

The Customize Windows

Technology Journal

  • Cloud Computing
  • Computer
  • Digital Photography
  • Windows 7
  • Archive
  • Cloud Computing
  • Virtualization
  • Computer and Internet
  • Digital Photography
  • Android
  • Sysadmin
  • Electronics
  • Big Data
  • Virtualization
  • Downloads
  • Web Development
  • Apple
  • Android
Advertisement
You are here:Home » Arduino LED Light Chaser : 10+ LED Code & Circuit

By Abhishek Ghosh November 5, 2015 11:45 pm Updated on November 5, 2015

Arduino LED Light Chaser : 10+ LED Code & Circuit

Advertisement

LED Light Chaser Mimics as Progressing Point of Light. Here is Arduino LED Light Chaser Guide For 10+ LED With Code, Circuit and Video Demo. We have another LED Light related Arduino guide – Christmas Light. We are assuming that the reader has basic Electronics components kit. We need some jumper wire, resisters, LED, Breadboard and obviously an Arduino board. Skill of wiring work is more important than real electronics for this project.

 

Arduino LED Light Chaser : Modification Ideas of Basic Example

 

  1. If you add the LEDs in a circular manner, it actually looks great.
  2. If one Pin is shared by two LEDs on a symmetrically arranged design where the LEDs will sit – it create convergence feel.
  3. Maximum number of LEDs can be used becoming 14 using the Digital Pins. If you share on Pin for 2 or more times, number actually increases.
  4. It is practical to use 1.8V bulb instead of LED for decoration purpose – we have guide on how to use 1.8V bulb with Arduino without using relay.

Here is a video, it is not of great quality but serve the purpose :

 

Arduino LED Light Chaser : 10+ LED Code & Circuit

 

There are many ways we can make the “chasing effect”. Circuit is very easy. Practically blink like connection to all the LEDs. We have the full code and circuit on Fritzing, yet here is a good kind of infographics :

Advertisement

---

Arduino-LED-Light-Chaser---10+-LED-Code-&-Circuit

Easiest code is this :

Vim
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
const int number = 11;
const byte order [number] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
void setup() {                
  for (byte i = 0; i < number; i++)  
    pinMode(order [i], OUTPUT);
}  
void repeat (const unsigned long delaytime)
  {
  for (byte i = 0; i < number; i++)
    {
    byte pin = order [i];
    digitalWrite(pin, HIGH);
    delay(delaytime);              
    digitalWrite(pin, LOW);
    }
  }
void loop()
  {
  for (unsigned long n = 500; n > 0; n -= 100)
    repeat (n);
  }

You can modify the values at :

for (unsigned long n = 500; n > 0; n -= 100) : change 500 and 100 to lower for faster effect. Change one by one to see the “rebound” effect.

number, order, delaytime repeat are my own words.

const int number = 10; : Total number of functional LED.
const byte order [number] = { 1, ... 10 }; : Order of lighting up. We can light up number one, then number 9, then number 2 for our custom desired effect. Here is the Github gist of the code.

However, we suggest to use this code :

Vim
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
volatile byte wantedPin;   // which pin to pulse on and off
 
const byte PWMiterations = 40;
const byte PWMdutyCycle = 2;   // <-- should be less than PWMiterations
 
volatile byte pwmCount;
 
ISR(TIMER1_COMPA_vect)
{
 
  // if in "on" cycle turn the LED on
if (pwmCount > PWMdutyCycle)
   digitalWrite(wantedPin, LOW);      
else
   digitalWrite(wantedPin, HIGH);      
  
if (++pwmCount >= PWMiterations)
  pwmCount = 0;
}  // end of TIMER1_COMPA_vect
 
const int numberOfLEDs = 11;
 
const byte LEDorder [numberOfLEDs] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
 
void setup()
{                
for (byte i = 0; i < numberOfLEDs; i++)  
   pinMode(LEDorder [i], OUTPUT);
  
// set up Timer 1
TCCR1A = 0;          // normal operation
TCNT1 = 0;           // make sure we start at zero
TCCR1B = _BV(WGM12) | _BV(CS10) | _BV (CS12);   // CTC, scale to clock / 1024
OCR1A =  5;       // compare A register value (1000 * clock speed / 1024)
TIMSK1 = _BV (OCIE1A);             // interrupt on Compare A Match
  
}  // end of setup
 
void doCircle (const unsigned long delayAmount)
{
for (byte i = 0; i < numberOfLEDs; i++)
   {
   noInterrupts ();
   byte pin = LEDorder [i];
   wantedPin = pin;
   pwmCount = 0;
   interrupts ();
   delay(delayAmount);              
   digitalWrite(pin, LOW);
   }   // end of for
}  // end of doCircle
void loop()
{
for (unsigned long n = 500; n > 0; n -= 100)
   doCircle (n);
} // end of loop

for (unsigned long n = 500; n > 0; n -= 100) : change 500 and 100 to lower for faster effect. Change one by one to see the “rebound” effect.

Above code is written by Nick Gammon and we included on Fritzing project, also as gist. Arduino officially create the effect in different way of coding.

Tagged With arduino led chase effect code , arduino 10 led chaser code , arduino led chaser , ARDUINO LIGHT CHASE , arduino chaser , arduino led circuit code , arduino light chaser code , arduino chasing lights , arduino light chaser , arduino led chaser code
Facebook Twitter Pinterest

Abhishek Ghosh

About Abhishek Ghosh

Abhishek Ghosh is a Businessman, Surgeon, Author and Blogger. You can keep touch with him on Twitter - @AbhishekCTRL.

Here’s what we’ve got for you which might like :

Articles Related to Arduino LED Light Chaser : 10+ LED Code & Circuit

  • Arduino and LED Bar Display : Circuit Diagram, Code

    Here is a Guide Explaining the Basics, Circuit Diagram, Code on Arduino and LED Bar Display. LED Bar Display is Actually Like Multiple LED.

  • Nginx WordPress Installation Guide (All Steps)

    This is a Full Nginx WordPress Installation Guide With All the Steps, Including Some Optimization and Setup Which is Compatible With WordPress DOT ORG Example Settings For Nginx.

  • How to Control Multiple Relays With Single Arduino ESP32?

    Before How to Control Multiple Relays With Single Arduino ESP32 Testing, You Need to Learn How to Create Multiple MQTT Channels & Fetch Data.

  • Mini Christmas Light With Arduino (Very Easy)

    Here is a Mini Christmas Light With Arduino as Project Which Needs 3 Resisters and 3 LEDs, No External Power Supply. It Has 2 Blink Effects.

performing a search on this website can help you. Also, we have YouTube Videos.

Take The Conversation Further ...

We'd love to know your thoughts on this article.
Meet the Author over on Twitter to join the conversation right now!

If you want to Advertise on our Article or want a Sponsored Article, you are invited to Contact us.

Contact Us

Subscribe To Our Free Newsletter

Get new posts by email:

Please Confirm the Subscription When Approval Email Will Arrive in Your Email Inbox as Second Step.

Search this website…

 

Popular Articles

Our Homepage is best place to find popular articles!

Here Are Some Good to Read Articles :

  • Cloud Computing Service Models
  • What is Cloud Computing?
  • Cloud Computing and Social Networks in Mobile Space
  • ARM Processor Architecture
  • What Camera Mode to Choose
  • Indispensable MySQL queries for custom fields in WordPress
  • Windows 7 Speech Recognition Scripting Related Tutorials

Social Networks

  • Pinterest (24.3K Followers)
  • Twitter (5.8k Followers)
  • Facebook (5.7k Followers)
  • LinkedIn (3.7k Followers)
  • YouTube (1.3k Followers)
  • GitHub (Repository)
  • GitHub (Gists)
Looking to publish sponsored article on our website?

Contact us

Recent Posts

  • Hybrid Multi-Cloud Environments Are Becoming UbiquitousJuly 12, 2023
  • Data Protection on the InternetJuly 12, 2023
  • Basics of BJT TransistorJuly 11, 2023
  • What is Confidential Computing?July 11, 2023
  • How a MOSFET WorksJuly 10, 2023
PC users can consult Corrine Chorney for Security.

Want to know more about us?

Read Notability and Mentions & Our Setup.

Copyright © 2023 - The Customize Windows | dESIGNed by The Customize Windows

Copyright  · Privacy Policy  · Advertising Policy  · Terms of Service  · Refund Policy