/*
*************************************************************
** Name: Christian Veselinovic **
** Project name: Arduino light chaser arrays **
** Date: Sep 17 2024 **
** Description: use ardiuno to make certain light patterns **
*************************************************************
*/
int redLed = 13; // define red led pin
int yellowLed = 12; // define yellow led pin
int greenLed = 11; // define green led pin
int buttonPin = 7; // defines button pin
int patternNumber = 0; // defines pattern number
int analogInputSpeed = A0; // set input to A0
int patternDelay = 110; // delay pattern by 1000
void setup() {
Serial.begin(9600);
DDRB= B111111; // sets on and off pin
pinMode(buttonPin, INPUT_PULLUP); // set button to INPUT PULLUP
}
int blinkRate= 300;
int patternArray[6][3] = {
{ 8, 24, 56}, //makes leds light up in different patterns
{48, 40, 24},
{32, 16, 8 },
{32, 48, 56},
{24, 40, 48},
{ 8, 16, 32},
};
void loop() {
patternDelay = analogRead(analogInputSpeed); //set speed to analog speed
if (digitalRead(buttonPin) == LOW) { //detects if button Off
patternNumber++; // pattern increases by 1
if (patternNumber > 5) { // detects if pattern number is over 5
patternNumber = 0; // number pattern sets to 0
}
}
for (int x = 0; x < 3; x++){ // Makes pattern go through 3 steps and resets
PORTB = patternArray [patternNumber] [x]; // makes port b value to array
delay(blinkRate); // delay pattern
}
}