int button_pin = 12;
int rgb_red_pin = 9;
int rgb_green_pin = 8;
int led_pin = 11;
int pot_pin = A1;
int A_pin = 2;
int B_pin = 1;
int C_pin = 3;
int D_pin = 4;
int E_pin = 5;
int F_pin = 6;
int G_pin = 7;
int button_state, button_old_state;
int pot_value;
int counter;
int segment_show=0;
void setup() {
pinMode(button_pin, INPUT_PULLUP);
pinMode(rgb_red_pin, OUTPUT);
pinMode(rgb_green_pin, OUTPUT);
pinMode(led_pin, OUTPUT);
pinMode(A_pin, OUTPUT);
pinMode(B_pin, OUTPUT);
pinMode(C_pin, OUTPUT);
pinMode(D_pin, OUTPUT);
pinMode(E_pin, OUTPUT);
pinMode(F_pin, OUTPUT);
pinMode(G_pin, OUTPUT);
Serial.begin(9600);
}
void loop() {
redButton();
if (counter % 2 == 1) {
analogWrite(rgb_red_pin, 0);
analogWrite(rgb_green_pin,255);
pot_value = analogRead(pot_pin);
Serial.println(pot_value);
segment_show = pot_value / 110;
analogWrite(led_pin, pot_value/4);
}
else {
analogWrite(rgb_red_pin, 255);
analogWrite(rgb_green_pin, 0);
analogWrite(led_pin, 0);
}
if (segment_show == 0) {
zero();
} else if(segment_show == 1) {
one();
} else if(segment_show == 2) {
two();
} else if(segment_show == 3) {
three();
} else if(segment_show == 4) {
four();
} else if(segment_show == 5) {
five();
} else if(segment_show == 6) {
six();
} else if(segment_show == 7) {
seven();
} else if(segment_show == 8) {
eight();
} else if(segment_show == 9) {
nine();
}
}
void redButton() {
button_state = !digitalRead(button_pin);
if(button_state == 1 && button_old_state == 0) {
counter++;
if(counter == 10)
{
counter = 0;
}
Serial.println(counter);
}
else
{
delay(50);
}
button_old_state = button_state;
}
void clear() {
digitalWrite(A_pin, LOW);
digitalWrite(B_pin, LOW);
digitalWrite(C_pin, LOW);
digitalWrite(D_pin, LOW);
digitalWrite(E_pin, LOW);
digitalWrite(F_pin, LOW);
digitalWrite(G_pin, LOW);
}
void zero() {
digitalWrite(A_pin, 1);
digitalWrite(B_pin, 1);
digitalWrite(C_pin, 1);
digitalWrite(D_pin, 1);
digitalWrite(E_pin, 1);
digitalWrite(F_pin, 1);
digitalWrite(G_pin, 0);
}
void one() {
digitalWrite(A_pin, 0);
digitalWrite(B_pin, 1);
digitalWrite(C_pin, 1);
digitalWrite(D_pin, 0);
digitalWrite(E_pin, 0);
digitalWrite(F_pin, 0);
digitalWrite(G_pin, 0);
}
void two() {
digitalWrite(A_pin, 1 );
digitalWrite(B_pin, 1);
digitalWrite(C_pin, 0);
digitalWrite(D_pin, 1);
digitalWrite(E_pin, 1);
digitalWrite(F_pin, 0);
digitalWrite(G_pin, 1);
}
void three() {
digitalWrite(A_pin, 1);
digitalWrite(B_pin, 1);
digitalWrite(C_pin, 1);
digitalWrite(D_pin, 1);
digitalWrite(E_pin, 0);
digitalWrite(F_pin, 0);
digitalWrite(G_pin, 1);
}
void four() {
digitalWrite(A_pin, 0);
digitalWrite(B_pin, 1);
digitalWrite(C_pin, 1);
digitalWrite(D_pin, 0);
digitalWrite(E_pin, 0);
digitalWrite(F_pin, 1);
digitalWrite(G_pin, 1);
}
void five() {
digitalWrite(A_pin, 1);
digitalWrite(B_pin, 0);
digitalWrite(C_pin, 1);
digitalWrite(D_pin, 1);
digitalWrite(E_pin, 0);
digitalWrite(F_pin, 1);
digitalWrite(G_pin, 1);
}
void six() {
digitalWrite(A_pin, 1);
digitalWrite(B_pin, 0);
digitalWrite(C_pin, 1);
digitalWrite(D_pin, 1);
digitalWrite(E_pin, 1);
digitalWrite(F_pin, 1);
digitalWrite(G_pin, 1);
}
void seven() {
digitalWrite(A_pin, 1);
digitalWrite(B_pin, 1);
digitalWrite(C_pin, 1);
digitalWrite(D_pin, 0);
digitalWrite(E_pin, 0);
digitalWrite(F_pin, 0);
digitalWrite(G_pin, 0);
}
void eight() {
digitalWrite(A_pin, 1);
digitalWrite(B_pin, 1);
digitalWrite(C_pin, 1);
digitalWrite(D_pin, 1);
digitalWrite(E_pin, 1);
digitalWrite(F_pin, 1);
digitalWrite(G_pin, 1);
}
void nine() {
digitalWrite(A_pin, 1);
digitalWrite(B_pin, 1);
digitalWrite(C_pin, 1);
digitalWrite(D_pin, 1);
digitalWrite(E_pin, 0);
digitalWrite(F_pin, 1);
digitalWrite(G_pin, 1);
}