int a = 2;
int b = 3;
int c = 4;
int d = 5;
int e = 6;
int f = 7;
int g = 8;
int anodPins[] = {A1, A2, A3, A4};
int pins[] = {a, b, c, d, e, f, g};
//C, F, 8, 9
int C[] = {1, 0, 0, 1, 1, 1, 0};
int F[] = {1, 0, 0, 0, 1, 1, 1};
int eight[] = {1, 1, 1, 1, 1, 1, 1};
int nine[] = {1, 1, 1, 1, 0, 1, 1};
int* symbols[] = {C, F, eight, nine};
int symbolCount = 4;
void setup() {
for (int i = 0; i < 4; i++) {
pinMode(anodPins[i], OUTPUT);
}
for (int i = 0; i < sizeof(pins)/sizeof(pins[0]); i++) {
pinMode(pins[i], OUTPUT);
digitalWrite(pins[i], HIGH);
}
}
void loop() {
for (int i = 0; i < 4; i++) {
out(symbols[i], anodPins[i], sizeof(pins)/sizeof(pins[0]));
}
}
void out(int symbol[], int anodPin, int size) {
for (int i = 0; i < size; i++) {
digitalWrite(pins[i], symbol[i] == 1 ? LOW : HIGH);
}
digitalWrite(anodPin, HIGH);
digitalWrite(anodPin, LOW);
}