Existem vários métodos que podem ser usados para direcionar um grande número de LEDs de alguns pinos de E / S.
O mais simples é a multiplexação padrão de exibição de linha / coluna. Com esta técnica, você pode conduzir LEDs com n pinos de E / S. Matematicamente, o ciclo de trabalho é:( n / 2 )2n
1 1m i n i m u m ( padrões de linhas exclusivos, padrões de colunas exclusivos )
Isso significa que essa técnica tem um ciclo de trabalho de 100% quando todos os LEDs estão acesos (ou todas as linhas ou colunas são idênticas) e um ciclo de trabalho de quando uma linha diagonal precisa ser acesa (ou todas as linhas são diferentes ) Você tem apenas 100% de ciclo de funcionamento garantido ao acender todos os LEDs ou um LED (ou zero LEDs, mas isso não conta muito).1 / n
Um pouco mais complexo é o Charlieplexing . Com esta técnica, você pode acionar LEDs com n pinos de E / S. Somente n - 1 LEDs podem acender simultaneamente com esta técnica. Matematicamente, o ciclo de trabalho é:n2- nnn - 1
1 1conjuntos simultâneos mínimos
onde um conjunto simultâneo é um grupo único de LEDs que possui um ânodo ou cátodo comum. (Isso não foi provado, é exatamente o que eu cheguei depois de refletir sobre o problema por um minuto. Se o ciclo de trabalho é importante para você, você vai querer aprofundar isso.) Esse é um cálculo muito mais complexo, tanto intelectualmente e computacionalmente que o cálculo equivalente para multiplexação padrão. Efetivamente, você obtém um ciclo de trabalho de quando todos os LEDs estão acesos, mas alguns (apenas alguns) padrões de n-1 ou menos LEDs podem ter um ciclo de trabalho de 100%. Você tem apenas 100% de ciclo de funcionamento garantido ao acender 1 LED.1 / n
O último método que mencionarei é usar um registrador de deslocamento ou expansor de E / S. Com dois pinos (interface de dados / relógio brutos, I2C ou SPI unidirecional), você pode controlar um número arbitrariamente grande de LEDs. O ciclo de serviço para qualquer padrão é 100%, mas a taxa de atualização é inversamente proporcional ao número de LEDs. Este é o método mais caro. Para 15 LEDs, provavelmente será mais barato apenas atualizar para um micro com tantos pinos de E / S.