#define m 7
int LED[m] = {32, 33, 25, 26, 27, 14, 12};
int swc[4] = {15, 5, 18, 19};
int tab[] = {0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f,0x00}; //0~9
int j = 0;
unsigned current_time;
void setup() {
  for (int i = 0; i < 4; i++) {
    pinMode(swc[i], OUTPUT);
  }
  for (int i = 0; i < m; i++) {
    pinMode(LED[i], OUTPUT);
    digitalWrite(LED[i], HIGH);
  }
}

void display(int a) {
  for (int i = 0; i < m; i++) {
    if (a % 2 == 0) {
      digitalWrite(LED[i], HIGH);
    }
    else {
      digitalWrite(LED[i], LOW);
    }
    a = a / 2;
  }
}
void printDP() {
  for (int i = 3; i >= 0; i--) {
    digitalWrite(swc[i], HIGH);
    for (int j = 0; j <100; j++) {
      display(tab[(j % 10) + (i * 10 )]);
      delay(2);
    }
    digitalWrite(swc[i], LOW);
  }
}
void loop() {
  j++;
  if (j > 1000)j = 0;
  for (int t = 0; t < 100; t++) {
    printDP();
  }
}