Display de 7 segmentos no Arduino com multiplexação - Módulo Eletrônica
No post de hoje, vamos aprender a trabalhar com os displays de 7 segmentos, esse tipo de display é muito comum é uma vasta gama de equipamentos eletrônicos. As vantagens desse display são o seu baixo custo, simplicidade de implementação, excelente resistência mecânica e excelente visibilidade. Como exemplo, a partir desse tipo de display podemos implementar uma interface homem-máquina, um termômetro digital, um voltímetro, um contador de pulsos e outras aplicações.
O display de 7 segmentos possui um formato característico, apresentado na figura 2. Para os displays desse tipo, existem diversas tecnologias que podem ser empregadas em sua fabricação, o que confere diferentes características, como por exemplo, os displays baseados em LED, cristal líquido (LCD), filamento, e eletromecânico.
Figura 2: Observe que cada segmento é identificado por uma letra, essa informação é muito importante ao trabalhar com esse tipo de display.
Funcionamento de um display de 7 segmentos de LED
Um display de 7 segmentos de LED pode apresentar duas configurações básicas. Catodo comum, onde o catodo de cada LED do display é interligado, desta forma, tem-se um ponto comum para todos os LED's do display, o mesmo ocorre para os displays de anodo comum. Lembre-se que para polarizar um LED de maneira correta temos:
Anodo do LED: terminal positivo.
Catodo do LED: terminal negativo.
A figura 3, ilustra o arranjo típico dos LEDs, para os dois tipos de display.
Figura 3: Arranjos típicos para displays de 7 segmentos de LED, ânodo comum ou cátodo comum.
Cada segmento do display é identificado por uma letra, conforme a figura 2. Portanto, devemos combinar quais segmentos (a,b,c,d,e,f,g, dp) iremos polarizar a fim de formar um número, letra ou sinal. A tabela 1 indica as combinações de segmentos para formar os números de 0 a 9.
NÚMERO SEGMENTOS DO DISPLAY
Observe que para controlar apenas um único display desse tipo é necessário controlar 7 LEDs de forma individual, portanto para cada digito, necessitamos de 7 conexões. Agora, imagine controlar 4 displays desse tipo, para contar de 0 até 9999, teríamos que dispor de 28 conexões e caso queria controlar o ponto decimal de cada display, esse número de conexões cresce para 32. Observe que controlar mais de um display desse tipo com um microcontrolador se torna inviável, pois, seria necessário um microcontrolador com um grande número de portas I/O para controlar apenas um conjunto de displays. No entanto, existe uma excelente técnica para controle de displays de 7 segmentos que reduz consideravelmente o número de conexões necessárias.
Multiplexação de displays de 7 segmentos, uma técnica muito interessante
A multiplexação de displays de 7 segmentos, é uma técnica utilizada em qualquer aparelho que use dois ou mais displays desse tipo, por exemplo, um forno de micro-ondas possui um display de 7 segmentos com 4 dígitos. As principais vantagens, desta técnica, são o menor consumo de energia pelo circuito e um menor número de conexões entre o display e o microcontrolador.
A multiplexação consiste, basicamente, em ligar todos os segmentos de cada display em paralelo, deste modo, perfazendo um barramento. O terminal em comum aos segmentos de cada display, ânodo ou cátodo, é controlado de maneira independente a fim de que cada display possa ser acionado em um instante de tempo específico. Ou seja apesar de todos os displays, em um barramento, receberem os dados para cada segmento (a,b,c,d,e,f,g), apenas um único display é acionado por vez, sendo assim, é possível apresentar, em cada display do barramento, um número diferente.
A técnica de multiplexação ocorre de maneira muito rápida, isto é, a velocidade com que cada display é acionado é superior ao nosso limite de percepção da visão, este fenômeno é conhecido como persistência da visão. Portanto, enxergamos como se todos os displays do barramento estivessem acesos ao mesmo tempo, mas como cada display é acesso e em sequência apagado, é possível ter um número em cada display. Observe que essa técnica só é possível por conta do fenômeno de persistência da visão.
Multiplexando 4 displays de 7 segmentos com o Arduino
Agora que você já sabe o que é a multiplexação de displays e como ela funciona, vamos montar um circuito prático a fim de comprovar na prática como tudo isso funciona.
protoboard 830 furos.
4 displays de 7 segmentos de catodo comum.
diversos jumpers MxM (macho x macho).
4 resistores de 330 Ω.
Observe a figura 4 com o diagrama de montagem. Nesta etapa é importante executar a montagem com calma para evitar fazer conexões erradas, sobretudo conexões que possam gerar curto-circuito entre os terminais do seu Arduino.
Figura 4: Esquema de montagem do circuito na protoboard.
Concluída a montagem do protótipo, na sua protoboard, é a hora de carregarmos o código fonte para testar a montagem. Copie e cole esse código fonte na IDE do Arduino, não se esqueça de baixar, no gerenciador de bibliotecas, a biblioteca SevSeg. Após carregar o código o seu Arduino deve contar no display de 0 ate 8888 e reiniciar a contagem.