Índice:
- Etapa 1: 20 LEDs em 5 pinos
- Etapa 2: Charlieplexing
- Etapa 3: Colocando para funcionar
- Etapa 4: menor e mais versátil …
- Etapa 5: Itty Bitty
- Etapa 6: Software
Vídeo: Como acionar muitos LEDs com alguns pinos de microcontrolador: 6 etapas (com imagens)
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:39
Usando o fato de que muitos pinos do microcontrolador têm três estados (+ V, GND ou "alta impedência", você pode acionar LEDs N * (N-1) dos pinos N. Assim, o pequeno microcontrolador de 8 pinos como um PIC12Fxxx ou um ATtiny11 pode acionar 20 LEDs em seus cinco pinos de saída disponíveis e ainda tem um pino restante para algum tipo de entrada. Consulte também
Etapa 1: 20 LEDs em 5 pinos
A safra atual de microcontroladores de baixa contagem de pinos (6 pinos para 20 pinos em
todo o pacote) têm um preço atraente e são 'bonitos', mas surge a questão de como você pode fazer o melhor uso desses pinos para aplicações comuns, como LEDs de condução. Uma abordagem de conexão direta para acionar LEDs consome um pino para cada LED. Um esquema de multiplexação tradicional onde as fileiras de ânodos de LED são acionadas por um conjunto de pinos N e o cátodo comum de cada fileira é acionado por outro conjunto de pinos M consegue acender LEDs N * M com pinos N + M. No entanto, em um processador com apenas 5 ou menos saídas (como é o caso da maioria dos microcontroladores de 8 pinos), isso quase não oferece mais saídas do que o drive direto.
Etapa 2: Charlieplexing
Supondo que os pinos de saída sejam realmente capazes de tri-state (ativo alto, ativo baixo e alta impedância (entrada)), também é possível dividir os drivers de linha e coluna e controlar N * (N-1) LEDs com apenas N pinos. Um pino é conectado a cátodos comuns de uma fileira de LEDs e acionado, e os pinos N-1 restantes são conectados aos ânodos e são acionados para iluminar aquela coluna ou deixados como entradas para deixar o LED apagado. Maxim chama essa técnica de "Charlieplexing" e a descreve em (1); A Microchip também menciona isso em seu documento (2) (e também implementa na placa PICKit 1.) (1) "Charlieplexing - Multiplexação de tela LED com contagem de pinos reduzida" https://www.maxim-ic.com/appnotes. cfm / appnote_number / 1880 (2) "Tips 'n Tricks Microcontroladores FLASH PIC de 8 pinos" https://ww1.microchip.com/downloads/en/DeviceDoc/40040b.pdf(3) LEDs Charlieplexing- A teoria An instrutível por rgbphil
Etapa 3: Colocando para funcionar
Isso aciona 20 LEDs de um ATtiny11. Uma versão anterior desta placa era
realmente construído e aparece como a foto da página principal. Receio que a imagem do esquema seja bastante desesperadora; você precisa do Eagle para lhe dizer quais sinais estão conectados e onde.
Etapa 4: menor e mais versátil …
Uma vez que a maior parte da placa é ocupada pela matriz de LED, podemos abrir espaço
para um chip Attiny OU um chip microchip PIC12F. Reduza os LEDs para 3 mm e vá para uma placa de dupla face, e obteremos algo em torno de 27x44 mm. Infelizmente, esta placa ainda não foi testada …
Etapa 5: Itty Bitty
A Microchip, é claro, tem seus chips PIC10F de 6 pinos, capazes de conduzir um
meros 6 LEDs dos 3 pinos de saída. Tem cerca de 16 mm de diâmetro. Ir para 603 LEDs permite que você fique um pouco menor, mas não tenho certeza de qual é o ponto.
Etapa 6: Software
O software fica um pouco confuso por motivos de servidor:
1) para os PCBs mostrados, os LEDs são dispostos de uma forma que seja conveniente para o layout do PCB, em vez de estar na ordem de bits "correta". IMO, esta é a maneira de fazer as coisas, mas significa que a linha 1 não significa necessariamente o bit 1, ou a coluna 3 não significa o bit 3. Isso requer um nível de mapeamento entre o endereçamento usual de linha / coluna e o bits que precisam de configuração. 2) Uma vez que os mesmos bits são usados para ânodos e cátodos, a conexão comum (linha) para alguns bits pode ser no meio dos bits acionados (coluna). Isso significa que você tem que mudar os bits da coluna dependendo se eles estão antes ou depois do bit de linha para aquele conjunto de colunas. 3) Você deve derivar palavras de saída para o ioport e o registrador de direção da porta. O código ASM anexado para ATtiny11 é uma "prova de conceito". É embaraçosamente não otimizado e mal comentado, mas é tudo o que escrevi até agora.
Recomendado:
556 O tempo fornece entrada de relógio para 2 contadores de década que irão acionar 20 LEDS: 6 etapas
O tempo 556 fornece entrada de relógio para 2 contadores de década que irão acionar 20 LEDS: Este Instructable mostrará como um cronômetro 556 fornecerá entradas de relógio para contadores de 2 décadas. Os contadores de década irão acionar 20 LEDs. Os LEDs piscarão em uma sequência de 10
Como controlar vários LEDs com Python e os pinos GPIO do Raspberry Pi: 4 etapas (com imagens)
Como controlar vários LEDs com Python e os pinos GPIO do Raspberry Pi: Este manual demonstra como controlar vários pinos GPIO no RaspberryPi para alimentar 4 LEDs. Ele também apresentará parâmetros e instruções condicionais em Python. Nosso instrutível anterior usando os pinos GPIO do Raspberry Pi para
Como fazer o controle do Xbox piscar com alguns leds, mas não vai balançar mais: 4 etapas
Como fazer o controle do Xbox piscar com alguns leds, mas ele não balançará mais: SEU REMOTO PISCARÁ, MAS NÃO VIBRARÁ MAIS PORQUE NESTE PROJETO VOCÊ TEM QUE RETIRAR O MOTOR
ISP 6 pinos para soquete de 8 pinos: 4 etapas
Soquete de 6 pinos para 8 pinos do ISP: A razão pela qual eu construí este projeto foi programar o ATTiny45, que tem uma conexão de 8 pinos, enquanto meu USBtinyISP (da Ladyada) tem apenas uma conexão de 10 e 6 pinos. Depois de bisbilhotar a internet por cerca de 3-4 semanas, não encontrei nada o que
Substituir halogênios de dois pinos de baixa tensão por LEDs: 6 etapas (com imagens)
Substituir halogênios de dois pinos de baixa tensão por LEDs: Este manual detalha como adaptar facilmente uma luminária de halogênio de dois pinos de baixa tensão (12 V) com um LED de alta potência " lâmpada " que usará menos energia (< 10W), durará mais (50.000 horas) e fornecerá aproximadamente a mesma saída de luz (~ 300 lúmen