Está en la página 1de 4

int seg_a = 8;

int seg_b = 9;
int seg_c = 3;
int seg_d = 4;
int seg_e = 5;
int seg_f = 7;
int seg_g = 6;
int PD = 2;

void setup()
{
  pinMode(seg_a, OUTPUT);
  pinMode(seg_b, OUTPUT);
  pinMode(seg_c, OUTPUT);
  pinMode(seg_d, OUTPUT);
  pinMode(seg_e, OUTPUT);
  pinMode(seg_f, OUTPUT);
  pinMode(seg_g, OUTPUT);
  pinMode(PD, OUTPUT);
  digitalWrite(seg_a, HIGH);
  digitalWrite(seg_b, HIGH);
  digitalWrite(seg_c, HIGH);
  digitalWrite(seg_d, HIGH);
  digitalWrite(seg_e, HIGH);
  digitalWrite(seg_f, HIGH);
  digitalWrite(seg_g, HIGH);
  digitalWrite(PD, HIGH);
}

void decodifica(int valor)


{
  if(valor == 0)
  {
    digitalWrite(seg_a, LOW);
    digitalWrite(seg_b, LOW);
    digitalWrite(seg_c, LOW);
    digitalWrite(seg_d, LOW);
    digitalWrite(seg_e, LOW);
    digitalWrite(seg_f, LOW);
    digitalWrite(seg_g, HIGH);
  }
  else
  {
    if(valor == 1)
    {
      digitalWrite(seg_a, HIGH);
      digitalWrite(seg_b, LOW);
      digitalWrite(seg_c, LOW);
      digitalWrite(seg_d, HIGH);
      digitalWrite(seg_e, HIGH);
      digitalWrite(seg_f, HIGH);
      digitalWrite(seg_g, HIGH);
    }
    else
    {
      if(valor == 2)
      {
        digitalWrite(seg_a, LOW);
        digitalWrite(seg_b, LOW);
        digitalWrite(seg_c, HIGH);
        digitalWrite(seg_d, LOW);
        digitalWrite(seg_e, LOW);
        digitalWrite(seg_f, HIGH);
        digitalWrite(seg_g, LOW);
 }
      else
      {
        if(valor == 3)
       {
          digitalWrite(seg_a, LOW);
          digitalWrite(seg_b, LOW);
          digitalWrite(seg_c, LOW);
          digitalWrite(seg_d, LOW);
          digitalWrite(seg_e, HIGH);
          digitalWrite(seg_f, HIGH);
          digitalWrite(seg_g, LOW);
       }
        else
        {
          if(valor == 4)
          {
            digitalWrite(seg_a, HIGH);
            digitalWrite(seg_b, LOW);
            digitalWrite(seg_c, LOW);
            digitalWrite(seg_d, HIGH);
            digitalWrite(seg_e, HIGH);
            digitalWrite(seg_f, LOW);
            digitalWrite(seg_g, LOW);
          }
          else
          {
            if(valor == 5)
            {
              digitalWrite(seg_a, LOW);
              digitalWrite(seg_b, HIGH);
              digitalWrite(seg_c, LOW);
              digitalWrite(seg_d, LOW);
              digitalWrite(seg_e, HIGH);
              digitalWrite(seg_f, LOW);
              digitalWrite(seg_g, LOW);
            }
            else
            {
              if(valor == 6)
              {
                digitalWrite(seg_a, LOW);
                digitalWrite(seg_b, HIGH);
                digitalWrite(seg_c, LOW);
                digitalWrite(seg_d, LOW);
                digitalWrite(seg_e, LOW);
                digitalWrite(seg_f, LOW);
                digitalWrite(seg_g, LOW);
              }
              else
              {
                if(valor == 7)
                {
                  digitalWrite(seg_a, LOW);
                  digitalWrite(seg_b, LOW);
                  digitalWrite(seg_c, LOW);
                  digitalWrite(seg_d, HIGH);
                  digitalWrite(seg_e, HIGH);
                  digitalWrite(seg_f, HIGH);
                  digitalWrite(seg_g, HIGH);
                }
                else
                {
                  if(valor == 8)
                  {
                    digitalWrite(seg_a, LOW);
                    digitalWrite(seg_b, LOW);
                    digitalWrite(seg_c, LOW);
                    digitalWrite(seg_d, LOW);
                    digitalWrite(seg_e, LOW);
                    digitalWrite(seg_f, LOW);
                    digitalWrite(seg_g, LOW);
                  }
                  else
                  {
                    if(valor == 9)
                    {
                      digitalWrite(seg_a, LOW);
                      digitalWrite(seg_b, LOW);
                      digitalWrite(seg_c, LOW);
                      digitalWrite(seg_d, LOW);
                      digitalWrite(seg_e, HIGH);
                      digitalWrite(seg_f, LOW);
                      digitalWrite(seg_g, LOW);
                    }
                    else
                    {
                      digitalWrite(seg_a, HIGH);
                      digitalWrite(seg_b, HIGH);
                      digitalWrite(seg_c, HIGH);
                      digitalWrite(seg_d, HIGH);
                      digitalWrite(seg_e, HIGH);
                      digitalWrite(seg_f, HIGH);
                      digitalWrite(seg_g, HIGH);
                    }
                  }
                }
              }
            } 
          }
        }
      }
    }
  }
}

void loop()
{
  for (int i=0; i<=10; i++)
  {
    decodifica(i);
    delay(1000);
  }
}

También podría gustarte