/**********************************************************************************
ten leds are connected to pin 2 to 11 pins of arduino write a code in c plus
in such a way that evevn number of leds chase to and fro then odd numbers
do the same thing then afyer dealyof 3 seconds all led chases to and fro
for three cycles and the all blink for five time
This code defines an array leds that contains the pin numbers of the
10 LEDs connected to the Arduino, as well as some variables to control
the delay time, number of cycles,
author arvind patil india
date 24 march 2023
liscence MiT eng
***************************************************************************/
int leds[] = {2, 3, 4, 5, 6, 7, 8, 9, 10, 11}; // Array of LED pins
int numLeds = sizeof(leds) / sizeof(leds[0]); // Number of LEDs
int delayTime = 1000; // Delay time between LED changes
int cycles = 3; // Number of cycles for all LEDs to chase
int blinkTimes = 5; // Number of times for all LEDs to blink
void setup() {
for (int i = 0; i < numLeds; i++) {
pinMode(leds[i], OUTPUT); // Set all LED pins as outputs
}
}
void loop() {
evenLeds(); // Chase even-numbered LEDs
oddLeds(); // Chase odd-numbered LEDs
allLeds(); // Chase all LEDs
blinkAll(); // Blink all LEDs
}
void evenLeds() {
for (int i = 0; i < numLeds; i += 2) {
digitalWrite(leds[i], HIGH); // Turn on even-numbered LED
delay(delayTime);
digitalWrite(leds[i], LOW); // Turn off even-numbered LED
}
for (int i = numLeds - 2; i >= 0; i -= 2) {
digitalWrite(leds[i], HIGH); // Turn on even-numbered LED
delay(delayTime);
digitalWrite(leds[i], LOW); // Turn off even-numbered LED
}
}
void oddLeds() {
for (int i = 1; i < numLeds; i += 2) {
digitalWrite(leds[i], HIGH); // Turn on odd-numbered LED
delay(delayTime);
digitalWrite(leds[i], LOW); // Turn off odd-numbered LED
}
for (int i = numLeds - 1; i >= 0; i -= 2) {
digitalWrite(leds[i], HIGH); // Turn on odd-numbered LED
delay(delayTime);
digitalWrite(leds[i], LOW); // Turn off odd-numbered LED
}
}
void allLeds() {
for (int j = 0; j < cycles; j++) {
for (int i = 0; i < numLeds; i++) {
digitalWrite(leds[i], HIGH); // Turn on all LEDs
delay(delayTime);
digitalWrite(leds[i], LOW); // Turn off all LEDs
}
for (int i = numLeds - 1; i >= 0; i--) {
digitalWrite(leds[i], HIGH); // Turn on all LEDs
delay(delayTime);
digitalWrite(leds[i], LOW); // Turn off all LEDs
}
}
}
void blinkAll() {
for (int i = 0; i < blinkTimes; i++) {
for (int j = 0; j < numLeds; j++) {
digitalWrite(leds[j], HIGH); // Turn on all LEDs
}
delay(delayTime);
for (int j = 0; j < numLeds; j++) {
digitalWrite(leds[j], LOW); // Turn off all LEDs
}
delay(delayTime);
}
}