So I made this circuit to change the RGB color with a button.
I want to make each color blink in a different frequency but I can't figure out how
here is the circuit:
and here is my code:
int red = 6;
int blue = 5;
int green = 3;
int button = 2;
int mode = 0;
void setup()
{
Serial.begin(9600);
pinMode(red, OUTPUT);
pinMode(blue, OUTPUT);
pinMode(green, OUTPUT);
pinMode(button, INPUT_PULLUP);
}
void loop()
{
if(digitalRead(button) == LOW)
{
mode = mode + 1;
delay(400);
}
//off
if(mode == 0)
{
analogWrite(red,0);
analogWrite(green,0);
analogWrite(blue,0);
}
//pink
if(mode == 1)
{
analogWrite(red,255);
analogWrite(green,105);
analogWrite(blue,180);
}
//green
if (mode == 2)
{
analogWrite(red,0);
analogWrite(green,255);
analogWrite(blue,0);
}
//red
if (mode == 3)
{
analogWrite(red,255);
analogWrite(green,0);
analogWrite(blue,0);
}
//light blue
if (mode == 4)
{
analogWrite(red,173);
analogWrite(green,216);
analogWrite(blue,230);
}
//grey
if (mode == 5)
{
analogWrite(red,128);
analogWrite(green,128);
analogWrite(blue,128);
}
//mauve
if (mode == 6)
{
analogWrite(red,224);
analogWrite(green,176);
analogWrite(blue,255);
}
//switch off
if(mode==7)
{
mode = 0;
}
Serial.println(digitalRead(button));
}