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);
}