#define segA 2
#define segB 3
#define segC 4
#define segD 5
#define segE 6
#define segF 7
#define segG 8
#define DP 9
#define up_bt 13
#define down_bt 12
int up_state , down_state , level;
void setup() {
Serial.begin(9600);
pinMode(up_bt , INPUT);
pinMode(down_bt , INPUT);
for(int pin=2 ; pin <= 9 ; pin++)
{
pinMode(pin , OUTPUT);
}
}
void loop()
{
up_state = digitalRead(up_bt) ;
down_state = digitalRead(down_bt) ;
if(up_state == HIGH && level < 9){
level = level + 1 ;
delay(2000) ;
}
if(down_state == HIGH && level > 0){
level = level - 1 ;
delay(2000) ;
}
switch (level){
case 0 : zero() ; break ;
case 1 : one() ; break ;
case 2 : two() ; break ;
case 3 : three() ; break ;
}
Serial.println("Up bt :"+String(up_state)+" Down Bt :"+String(down_state)+" Level :"+String(level));
delay(50) ;
}
void zero(){
clean() ;
for(int pin=2 ; pin <= 9 ; pin++)
{
if(pin != 8){
digitalWrite(pin , HIGH) ;}
}
}
void one(){
clean() ;
digitalWrite(segB , HIGH) ;
digitalWrite(segC , HIGH) ;
}
void two(){
clean() ;
for(int pin=2 ; pin <= 9 ; pin++)
{
if(pin != 7 && pin != 4){
digitalWrite(pin , HIGH) ;}
}
}
void three(){
clean() ;
for(int pin=2 ; pin <= 9 ; pin++)
{
if(pin != 6 && pin != 7){
digitalWrite(pin , HIGH) ;}
}
}
void clean(){
for(int pin=2 ; pin <= 9 ; pin++)
{
digitalWrite(pin , LOW) ;
}
}
void test_display(){
for(int pin=2 ; pin <= 9 ; pin++)
{
digitalWrite(pin , HIGH) ;
}
}