Aumento de brillo en leds multiplexados

Opino como @anon90500195, códigos no formateados (usa autoformat del IDE) me lleva mucho tiempo asi que paso de dar una devolución.
A modo de contribución solo lo ordené.

#include <Arduino.h>

#include <TimerOne.h>
void setup()
{
    for (int i=2; i<39; i++) {
        if (i =!14)
            pinMode(i, OUTPUT);
        else 
            i = 21;
    }
    pinMode(19, INPUT);
    pinMode(1, INPUT);
    pinMode(A2, OUTPUT);
    // put your setup code here, to run once:
    Timer1.initialize(1000); // Dispara cada 1 ms
    Timer1.attachInterrupt(ISR_Prendido);
    //Serial.begin(19200);
}

int led = 32, multiplexado = 0, intervalo = 1000;
unsigned long contador = 0, previo = 0;
void loop()
{
    // put your main code here, to run repeatedly:
    int const DECO[33] = {B01111111, B01111111, B01000001, B01000001, B01000001, B01000001, B00100010, B00011100, B00000000, //D
                          B01111111, B01001001, B01001001, B01001001, B01001001, B01000001, B01000001, B00000000,            //E
                          B00111110, B01000001, B01000001, B01000001, B01000001, B01000001, B00100010, B00000000,            //C
                          B00111110, B01000001, B01000001, B01000001, B01000001, B01000001, B00111110, B00000000};           //O
    for (int k = 0; k < 100; k++)                                                                                            //Refresco de matriz
    {
        if (multiplexado == 1)
        {
            contador = micros();
            PORTA = DECO[led];
            if (contador - previo >= 1000)
            {
                PORTA = B00000000;
                previo = contador;
                if (led < 21)
                {
                    digitalWrite(led + 29, LOW);
                }
                if (led > 20 && led < 30)
                {
                    digitalWrite(led - 19, LOW);
                }
                if (led > 29 && led < 32)
                {
                    digitalWrite(led - 18, LOW);
                }
                if (led == 32)
                {
                    digitalWrite(A2, LOW);
                }
                led -= 1;
                if (led == 0)
                {
                    led = 32;
                }
                multiplexado = 0;
            }
        }
    }
}
void ISR_Prendido()
{
    if (led < 21)
    {
        digitalWrite(led + 29, LOW);
    }
    if (led > 20 && led < 30)
    {
        digitalWrite(led - 19, LOW);
    }
    if (led > 29 && led < 32)
    {
        digitalWrite(led - 18, LOW);
    }
    if (led == 32)
    {
        digitalWrite(A2, LOW);
    }

    if (led < 21)
    {
        digitalWrite(led + 29, HIGH);
    }
    if (led > 20 && led < 30)
    {
        digitalWrite(led - 19, HIGH);
    }
    if (led > 29 && led < 32)
    {
        digitalWrite(led - 18, HIGH);
    }
    if (led == 32)
    {
        digitalWrite(A2, HIGH);
    }
    multiplexado = 1;
}