#define CA
#ifdef CC
#define ON HIGH
#define OFF LOW
#endif
#ifdef CA
#define ON LOW
#define OFF HIGH
#endif
int pinA = 11, pinB = 7, pinC = 4, pinD = 2, pinE = 1, pinF = 10, pinG = 5;
int pinDP = 3, D1 = 12, D2 = 9, D3 = 8, D4 = 6;
int digit_pins[4] = {D1, D2, D3, D4};
void setup() {
pinMode(pinA, OUTPUT);
pinMode(pinB, OUTPUT);
pinMode(pinC, OUTPUT);
pinMode(pinD, OUTPUT);
pinMode(pinE, OUTPUT);
pinMode(pinF, OUTPUT);
pinMode(pinG, OUTPUT);
pinMode(pinDP, OUTPUT);
pinMode(D1, OUTPUT);
pinMode(D2, OUTPUT);
pinMode(D3, OUTPUT);
pinMode(D4, OUTPUT);
}
void loop() {
display_on ();
zero (); delay (1500);
one (); delay (1500);
two (); delay (1500);
three (); delay (1500);
four (); delay (1500);
five (); delay (1500);
six (); delay (1500);
seven (); delay (1500);
eight (); delay (1500);
nine (); delay (1500);
display_off ();
delay (1500);
}
void digit_on(int pos_index) {
digitalWrite(digit_pins[pos_index], HIGH);
}
void digit_off(int pos_index) {
digitalWrite(digit_pins[pos_index], LOW);
}
void display_off (){
for (int i = 0; i < 4; i++) {
digit_off(i);
}
}
void display_on (){
for (int i = 0; i < 4; i++) {
digit_on(i);
}
}
//functions representing numbers 0-9
void zero(){
digitalWrite(pinA, ON);
digitalWrite(pinB, ON);
digitalWrite(pinC, ON);
digitalWrite(pinD, ON);
digitalWrite(pinE, ON);
digitalWrite(pinF, ON);
digitalWrite(pinG, OFF);
}
void one(){
digitalWrite(pinA, OFF);
digitalWrite(pinB, ON);
digitalWrite(pinC, ON);
digitalWrite(pinD, OFF);
digitalWrite(pinE, OFF);
digitalWrite(pinF, OFF);
digitalWrite(pinG, OFF);
}
void two() {
digitalWrite(pinA, ON);
digitalWrite(pinB, ON);
digitalWrite(pinC, OFF);
digitalWrite(pinD, ON);
digitalWrite(pinE, ON);
digitalWrite(pinF, OFF);
digitalWrite(pinG, ON);
}
void three() {
digitalWrite(pinA, ON);
digitalWrite(pinB, ON);
digitalWrite(pinC, ON);
digitalWrite(pinD, ON);
digitalWrite(pinE, OFF);
digitalWrite(pinF, OFF);
digitalWrite(pinG, ON);
}
void four() {
digitalWrite(pinA, OFF);
digitalWrite(pinB, ON);
digitalWrite(pinC, ON);
digitalWrite(pinD, OFF);
digitalWrite(pinE, OFF);
digitalWrite(pinF, ON);
digitalWrite(pinG, ON);
}
void five(){
digitalWrite(pinA, ON);
digitalWrite(pinB, OFF);
digitalWrite(pinC, ON);
digitalWrite(pinD, ON);
digitalWrite(pinE, OFF);
digitalWrite(pinF, ON);
digitalWrite(pinG, ON);
}
void six(){
digitalWrite(pinA, ON);
digitalWrite(pinB, OFF);
digitalWrite(pinC, ON);
digitalWrite(pinD, ON);
digitalWrite(pinE, ON);
digitalWrite(pinF, ON);
digitalWrite(pinG, ON);
}
void seven(){
digitalWrite(pinA, ON);
digitalWrite(pinB, ON);
digitalWrite(pinC, ON);
digitalWrite(pinD, OFF);
digitalWrite(pinE, OFF);
digitalWrite(pinF, OFF);
digitalWrite(pinG, OFF);
}
void eight(){
digitalWrite(pinA, ON);
digitalWrite(pinB, ON);
digitalWrite(pinC, ON);
digitalWrite(pinD, ON);
digitalWrite(pinE, ON);
digitalWrite(pinF, ON);
digitalWrite(pinG, ON);
}
void nine(){
digitalWrite(pinA, ON);
digitalWrite(pinB, ON);
digitalWrite(pinC, ON);
digitalWrite(pinD, OFF);
digitalWrite(pinE, OFF);
digitalWrite(pinF, ON);
digitalWrite(pinG, ON);
}