// declaration of pins
unsigned int orangePin = 5;
unsigned int violetPin = 4;
unsigned int bluePin = 3;
//declaration of button
int button = 21;
//PWM Values
const int maxDC = 255; //max Duty Cycle = maxDC
const int minDC = 0;
void setup() {
// setup mode for pins
pinMode(orangePin, OUTPUT);
pinMode(violetPin, OUTPUT);
pinMode(bluePin, OUTPUT);
//setup mode for buttons
pinMode(button, INPUT);
//initialize PINS/OUTPUT with a value
digitalWrite(orangePin, LOW);
digitalWrite(violetPin, LOW);
digitalWrite(bluePin, LOW);
digitalWrite(button, LOW);
//begin Serial for tracking
Serial.begin(9600);
}
void loop() {
int buttonOn = digitalRead(button);
if (buttonOn == HIGH)
{
Serial.println("Button has been pressed. Execute both for loops.");
float dc = 0.0; //float because it is a decimal number.
for ( dc = 0; dc <= 1; (dc=dc+0.25))
{
analogWrite (orangePin, maxDC*dc);
Serial.println("Star dim up orange LED.");
analogWrite (violetPin, maxDC*dc);
Serial.println("Star dim up violet LED.");
analogWrite (bluePin, maxDC*dc);
Serial.println("Star dim up blue LED.");
delay (250);
}
for (dc = 1; dc >= 0; (dc=dc-0.25))
{
analogWrite (orangePin, maxDC*dc);
Serial.println("Star dim down orange LED.");
analogWrite (violetPin, maxDC*dc);
Serial.println("Star dim down violet LED.");
analogWrite (bluePin, maxDC*dc);
Serial.println("Star dim down blue LED.");
delay(250);
}
Serial.println("LEDs have been dimmed up and down once. Both loops ran through once.");
}
}