in this section we make a small project that is led chaser using Arduino .in this project the LEDs glows on different ways.for more information watch the below video
Making Video of led chase:
components:
- Arduino BuyNow
- LEDs
- breadboard & wires BuyNow
If you want to buy Arduino components, I am giving my affiliate links. If you buy the components using my affiliate links, it will help to our channel and website growth. so do these small help.
led chaser using Arduino circuit diagram :
led chaser using Arduino circuit code :
#define delay50 100
int myled[] = {2, 3, 4, 5, 6, 7, 8, 9,10,11,12,13};
int num_of_leds;
void setup() {
num_of_leds = sizeof(myled) / sizeof(int);
for (int i = 0; i < num_of_leds; i++) {
pinMode(myled[i], OUTPUT);
}
}
void loop() {
delay(1000);
ledonn();
delay(2000);
ledoff();
delay(2000);
for (int i = 0; i < 5; i++) {pattern1();}
for (int i = 0; i < 5; i++) {pattern2();}
for (int i = 0; i < 5; i++) {pattern3();}
for (int i = 0; i < 5; i++) {pattern4();}
for (int i = 0; i < 25; i++){pattern5();}
for (int i = 0; i < 5; i++) {pattern6();}
for (int i = 0; i < 15; i++){pattern7();}
for (int i = 0; i < 15; i++){pattern8();}
for (int i = 0; i < 5; i++) {pattern9();}
for (int i = 0; i < 5; i++) {pattern10();}
for (int i = 0; i < 50; i++){pattern11();}
for (int i = 0; i < 50; i++){pattern12();}
ledoff();
delay(5000);
}
//TURN ON ALL LEDs
void ledonn() {
for (int i = 0; i < num_of_leds; i++) {
digitalWrite(myled[i], HIGH);
}
}
//TURN OFF ALL LEDs
void ledoff() {
for (int i = 0; i < num_of_leds; i++) {
digitalWrite(myled[i], LOW);
}
}
//LEFT TO RIGHT
void pattern1() {
for (int i = 0; i < num_of_leds; i++) {
digitalWrite(myled[i], HIGH);
delay(delay50);
digitalWrite(myled[i], LOW);
}
}
//RIGHT TO LEFT
void pattern2() {
for (int i = num_of_leds; i > 0; i--) {
digitalWrite(myled[i - 1], HIGH);
delay(delay50);
digitalWrite(myled[i - 1], LOW);
}
}
//LEFT TO RIGHT FILL
void pattern3() {
for (int i = 0; i < num_of_leds; i++) {
digitalWrite(myled[i], HIGH);
delay(delay50);
}
for (int i = num_of_leds; i > 0; i--) {
digitalWrite(myled[i - 1], LOW);
delay(delay50);
}
}
//RIGHT TO LEFT FILL
void pattern4() {
ledonn();
delay(delay50);
for (int i = 0; i < num_of_leds; i++) {
digitalWrite(myled[i], LOW);
delay(delay50);
}
for (int i = num_of_leds; i > 0; i--) {
digitalWrite(myled[i - 1], HIGH);
delay(delay50);
}
ledoff();
}
//ALTERNATE LEDs
void pattern5() {
for (int i = 0; i < num_of_leds; i = i + 2) {
digitalWrite(myled[i], HIGH);
digitalWrite(myled[i + 1], LOW);
}
delay(delay50);
for (int i = 0; i < num_of_leds; i = i + 2) {
digitalWrite(myled[i], LOW);
digitalWrite(myled[i + 1], HIGH);
}
delay(delay50);
}
//OSCILLATING LEDs
void pattern6() { //osc
for (int i = 0; i < num_of_leds; i++) {
digitalWrite(myled[i], HIGH);
delay(delay50);
digitalWrite(myled[i], LOW);
}
delay(delay50);
for (int i = num_of_leds; i > 0; i--) {
digitalWrite(myled[i - 1], HIGH);
delay(delay50);
digitalWrite(myled[i - 1], LOW);
}
}
//INSIDE
void pattern7() {
for (int i = 0; i < num_of_leds / 2; i++) {
digitalWrite(myled[i], HIGH);
digitalWrite(myled[num_of_leds - 1 - i], HIGH);
delay(delay50);
digitalWrite(myled[i], LOW);
digitalWrite(myled[num_of_leds - 1 - i], LOW);
}
}
//OUTSIDE
void pattern8()
{
for (int i = (num_of_leds / 2) - 1; i >= 0 ; i--)
{
digitalWrite(myled[i], HIGH);
digitalWrite(myled[num_of_leds - 1 - i], HIGH);
delay(delay50);
digitalWrite(myled[i], LOW);
digitalWrite(myled[num_of_leds - 1 - i], LOW);
}
}
//LEFT TO RIGHT 3 LEDs
void pattern9() {
for (int i = 0; i < num_of_leds + 3; i++) {
if (i <= num_of_leds) {
digitalWrite(myled[i], HIGH);
}
if (i > 2) {
digitalWrite(myled[i - 3], LOW);
}
delay(delay50);
}
}
//OSCILLATING 3 LEDs
void pattern10() {
for (int i = 2; i < num_of_leds; i++) {
if (i == 2) {
digitalWrite(myled[0], HIGH);
digitalWrite(myled[1], HIGH);
}
digitalWrite(myled[i], HIGH);
digitalWrite(myled[i - 3], LOW);
delay(delay50);
}
for (int i = num_of_leds - 4; i > -1; i--) {
digitalWrite(myled[i], HIGH);
digitalWrite(myled[i + 3], LOW);
delay(delay50);
}
}
//RANDOM EFFECT 1
void pattern11() {
int randomnum = random(0, num_of_leds + 1);
digitalWrite(myled[randomnum], HIGH);
delay(delay50);
digitalWrite(myled[randomnum], LOW);
delay(delay50);
}
//RANDOM EFFECT 2
void pattern12() {
int randomonn = random(0, num_of_leds + 1);
int randomoff = random(0, num_of_leds + 1);
digitalWrite(myled[randomonn], HIGH);
digitalWrite(myled[randomoff], LOW);
delay(delay50);
}
download code:
you can easily download this code by clicking on this button download code here
If you have any doubts regarding to this project, contact me on Instagram or comment on YouTube video. I will help with my best.
0 Comments