int8_t pinSegA = 6;
int8_t pinSegB = 7;
int8_t pinSegC = 8;
int8_t pinSegD = 2;
int8_t pinSegE = 3;
int8_t pinSegF = 5;
int8_t pinSegG = 4;



// Segment                 a  b  c  d  e  f  g     // Digit
//
boolean digits [10] [7] = {1, 1, 1, 1, 1, 1, 0,    // 0
                           0, 1, 1, 0, 0, 0, 0,    // 1
                           1, 1, 0, 1, 1, 0, 1,    // 2
                           1, 1, 1, 1, 0, 0, 1,    // 3
                           0, 1, 1, 0, 0, 1, 1,    // 4
                           1, 0, 1, 1, 0, 1, 1,    // 5
                           0, 0, 1, 1, 1, 1, 1,    // 6
                           1, 1, 1, 0, 0, 0, 0,    // 7
                           1, 1, 1, 1, 1, 1, 1,    // 8
                           1, 1, 1, 0, 0, 1, 1, }; // 9



void setup ()
{
  pinMode (pinSegA, OUTPUT);
  pinMode (pinSegB, OUTPUT);
  pinMode (pinSegC, OUTPUT);
  pinMode (pinSegD, OUTPUT);
  pinMode (pinSegE, OUTPUT);
  pinMode (pinSegF, OUTPUT);
  pinMode (pinSegG, OUTPUT);
}



void loop ()
{
  for (uint8_t x = 0; x <10; x++)
  {
    displayDigit(x);
  }
}

void displayDigit(uint8_t digit)
{
  // Display the digit
  digitalWrite(pinSegA, digits[digit][0]);
  digitalWrite(pinSegB, digits[digit][1]);
  digitalWrite(pinSegC, digits[digit][2]);
  digitalWrite(pinSegD, digits[digit][3]);
  digitalWrite(pinSegE, digits[digit][4]);
  digitalWrite(pinSegF, digits[digit][5]);
  digitalWrite(pinSegG, digits[digit][6]);

  delay(1000);

  // Clear the display
  digitalWrite(pinSegA, LOW);
  digitalWrite(pinSegB, LOW);
  digitalWrite(pinSegC, LOW);
  digitalWrite(pinSegD, LOW);
  digitalWrite(pinSegE, LOW);
  digitalWrite(pinSegF, LOW);
  digitalWrite(pinSegG, LOW);

  delay(300);
}
GND5VSDASCLSQWRTCDS1307+