Используя мой Arduino, я создал двумерный массив с шестнадцатеричными числами 0-F для отображения на семисегментном дисплее.Все работает отлично, я использовал цикл for, чтобы включить каждый сегмент дисплея, но верхний дисплей (A) всегда включен, даже если он не должен быть включен.
void sevenSegment(int a) {
for (int i = 0; i < nPins; i++) {
digitalWrite(fontArray[a][i], HIGH);
}
}
Array:
int fontArray[][7] = {
{13, 12, 11, 10, 9, 8}, // 0
{12, 11}, // 1
{13, 12, 10, 9, 7}, // 2
{13, 12, 11, 10, 7}, // 3
{12, 11, 8, 7}, // 4
{13, 11, 10, 8, 7}, // 5
{13, 11, 10, 9, 8, 7}, // 6
{13, 12, 11}, // 7
{13, 12, 11, 10, 9, 8, 7}, // 8
{13, 12, 11, 10, 8, 7}, // 9
{13, 12, 11, 9, 8, 7}, // A
{11, 10, 9, 8, 7}, // B
{13, 10, 9, 8}, // C
{12, 11, 10, 9, 7}, // D
{13, 10, 9, 8, 7}, // E
{13, 9, 8, 7} }; // F
Почему верхний сегмент дисплея (A), контакт 13, всегда горит?: /