// Display number 0 to 9, Letter A to F and Letter X and Z // 2 digits common cathode int timer = 700; // The higher the number, the slower the timing. int digit1 = A0; int digit2 = A1; int Seg_dot = 0; int Seg_A = A2; int Seg_B = A3; int Seg_C = A4; int Seg_D = A5; int Seg_E = 1; int Seg_F = 2; int Seg_G1 = 3; int Seg_G2 = 4; int Seg_H = 5; int Seg_J = 6; int Seg_K = 7; int Seg_L = 8; int Seg_M = 9; int Seg_N = 10; void setup() { pinMode(digit1, OUTPUT); digitalWrite(digit1, HIGH); pinMode(digit2, OUTPUT); digitalWrite(digit2, HIGH); pinMode(Seg_dot, OUTPUT); 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_G1, OUTPUT); pinMode(Seg_G2, OUTPUT); pinMode(Seg_H, OUTPUT); pinMode(Seg_J, OUTPUT); pinMode(Seg_K, OUTPUT); pinMode(Seg_L, OUTPUT); pinMode(Seg_M, OUTPUT); pinMode(Seg_N, OUTPUT); } void loop() { digitalWrite(digit1, LOW); dips_0(); delay(timer); dips_OFF(); digitalWrite(digit1, HIGH); digitalWrite(digit2, LOW); dips_1(); delay(timer); dips_OFF(); digitalWrite(digit2, HIGH); digitalWrite(digit1, LOW); dips_2(); delay(timer); dips_OFF(); digitalWrite(digit1, HIGH); digitalWrite(digit2, LOW); dips_3(); delay(timer); dips_OFF(); digitalWrite(digit2, HIGH); digitalWrite(digit1, LOW); dips_4(); delay(timer); dips_OFF(); digitalWrite(digit1, HIGH); digitalWrite(digit2, LOW); dips_5(); delay(timer); dips_OFF(); digitalWrite(digit2, HIGH); digitalWrite(digit1, LOW); dips_6(); delay(timer); dips_OFF(); digitalWrite(digit1, HIGH); digitalWrite(digit2, LOW); dips_7(); delay(timer); dips_OFF(); digitalWrite(digit2, HIGH); digitalWrite(digit1, LOW); dips_8(); delay(timer); dips_OFF(); digitalWrite(digit1, HIGH); digitalWrite(digit2, LOW); dips_9(); delay(timer); dips_OFF(); digitalWrite(digit2, HIGH); digitalWrite(digit1, LOW); dips_A(); delay(timer); dips_OFF(); digitalWrite(digit1, HIGH); digitalWrite(digit2, LOW); dips_B(); delay(timer); dips_OFF(); digitalWrite(digit2, HIGH); digitalWrite(digit1, LOW); dips_C(); delay(timer); dips_OFF(); digitalWrite(digit1, HIGH); digitalWrite(digit2, LOW); dips_D(); delay(timer); dips_OFF(); digitalWrite(digit2, HIGH); digitalWrite(digit1, LOW); dips_E(); delay(timer); dips_OFF(); digitalWrite(digit1, HIGH); digitalWrite(digit2, LOW); dips_F(); delay(timer); dips_OFF(); digitalWrite(digit2, HIGH); digitalWrite(digit1, LOW); dips_X(); delay(timer); dips_OFF(); digitalWrite(digit1, HIGH); digitalWrite(digit2, LOW); dips_Z(); delay(timer); dips_OFF(); digitalWrite(digit2, HIGH); digitalWrite(digit1, LOW); digitalWrite(Seg_dot, HIGH); delay(timer); dips_OFF(); digitalWrite(digit1, HIGH); digitalWrite(digit2, LOW); digitalWrite(Seg_dot, HIGH); delay(timer); dips_OFF(); digitalWrite(digit2, HIGH); } void dips_OFF() // Set all pin at LOW { 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_G1, LOW); digitalWrite(Seg_G2, LOW); digitalWrite(Seg_H, LOW); digitalWrite(Seg_J, LOW); digitalWrite(Seg_K, LOW); digitalWrite(Seg_L, LOW); digitalWrite(Seg_M, LOW); digitalWrite(Seg_N, LOW); digitalWrite(Seg_dot, LOW); } void dips_0() // Display nimber 0 { digitalWrite(Seg_A, HIGH); digitalWrite(Seg_B, HIGH); digitalWrite(Seg_C, HIGH); digitalWrite(Seg_D, HIGH); digitalWrite(Seg_E, HIGH); digitalWrite(Seg_F, HIGH); } void dips_1() // Display nimber 1 { digitalWrite(Seg_B, HIGH); digitalWrite(Seg_C, HIGH); } void dips_2() // Display nimber 2 { digitalWrite(Seg_A, HIGH); digitalWrite(Seg_B, HIGH); digitalWrite(Seg_G1, HIGH); digitalWrite(Seg_G2, HIGH); digitalWrite(Seg_E, HIGH); digitalWrite(Seg_D, HIGH); } void dips_3() // Display nimber 3 { digitalWrite(Seg_A, HIGH); digitalWrite(Seg_B, HIGH); digitalWrite(Seg_C, HIGH); digitalWrite(Seg_D, HIGH); digitalWrite(Seg_G1, HIGH); digitalWrite(Seg_G2, HIGH); } void dips_4() // Display nimber 4 { digitalWrite(Seg_F, HIGH); digitalWrite(Seg_B, HIGH); digitalWrite(Seg_C, HIGH); digitalWrite(Seg_G1, HIGH); digitalWrite(Seg_G2, HIGH); } void dips_5() // Display nimber 5 { digitalWrite(Seg_A, HIGH); digitalWrite(Seg_F, HIGH); digitalWrite(Seg_G1, HIGH); digitalWrite(Seg_G2, HIGH); digitalWrite(Seg_C, HIGH); digitalWrite(Seg_D, HIGH); } void dips_6() // Display nimber 6 { digitalWrite(Seg_A, HIGH); digitalWrite(Seg_F, HIGH); digitalWrite(Seg_G1, HIGH); digitalWrite(Seg_G2, HIGH); digitalWrite(Seg_C, HIGH); digitalWrite(Seg_D, HIGH); digitalWrite(Seg_E, HIGH); } void dips_7() // Display nimber 7 { digitalWrite(Seg_A, HIGH); digitalWrite(Seg_B, HIGH); digitalWrite(Seg_C, HIGH); } void dips_8() // Display nimber 8 { 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_G1, HIGH); digitalWrite(Seg_G2, HIGH); } void dips_9() // Display nimber 9 { digitalWrite(Seg_A, HIGH); digitalWrite(Seg_B, HIGH); digitalWrite(Seg_C, HIGH); digitalWrite(Seg_D, HIGH); digitalWrite(Seg_F, HIGH); digitalWrite(Seg_G1, HIGH); digitalWrite(Seg_G2, HIGH); } void dips_A() // Display letter A { digitalWrite(Seg_A, HIGH); digitalWrite(Seg_B, HIGH); digitalWrite(Seg_C, HIGH); digitalWrite(Seg_E, HIGH); digitalWrite(Seg_F, HIGH); digitalWrite(Seg_G1, HIGH); digitalWrite(Seg_G2, HIGH); } void dips_B() // Display letter B { digitalWrite(Seg_A, HIGH); digitalWrite(Seg_B, HIGH); digitalWrite(Seg_C, HIGH); digitalWrite(Seg_D, HIGH); digitalWrite(Seg_J, HIGH); digitalWrite(Seg_M, HIGH); digitalWrite(Seg_G2, HIGH); } void dips_C() // Display letter C { digitalWrite(Seg_A, HIGH); digitalWrite(Seg_D, HIGH); digitalWrite(Seg_E, HIGH); digitalWrite(Seg_F, HIGH); } void dips_D() // Display letter D { digitalWrite(Seg_A, HIGH); digitalWrite(Seg_B, HIGH); digitalWrite(Seg_C, HIGH); digitalWrite(Seg_D, HIGH); digitalWrite(Seg_J, HIGH); digitalWrite(Seg_M, HIGH); } void dips_E() // Display letter E { digitalWrite(Seg_A, HIGH); digitalWrite(Seg_D, HIGH); digitalWrite(Seg_E, HIGH); digitalWrite(Seg_F, HIGH); digitalWrite(Seg_G1, HIGH); } void dips_F() // Display letter F { digitalWrite(Seg_A, HIGH); digitalWrite(Seg_E, HIGH); digitalWrite(Seg_F, HIGH); digitalWrite(Seg_G1, HIGH); } void dips_X() // Display letter X { digitalWrite(Seg_H, HIGH); digitalWrite(Seg_K, HIGH); digitalWrite(Seg_L, HIGH); digitalWrite(Seg_N, HIGH); } void dips_Z() // Display letter Z { digitalWrite(Seg_A, HIGH); digitalWrite(Seg_K, HIGH); digitalWrite(Seg_L, HIGH); digitalWrite(Seg_D, HIGH); }