Muitos leitores já devem ter reparado em alguns projetos com microcontroladores aqui publicados, no uso do display de sete segmentos (tipo numérico) com LEDs. No mercado ainda é possível encontrar outros tipos, tais como: 16 segmentos (tipo caractere); matriz "7x5"; barra de LEDs; entre outros. Iniciaremos neste artigo, composto de duas partes, o estudo da "teoria" de controle destes displays, demonstrando assim como aplicá-los em projetos mais "ousados".

 

Nota: Este artigo saiu numa Eletrônica Total de 2011. Existem versões mais modernas do PIC que devem ser consideradas num projeto.

 

Displays com LEDs

Na figura 1 o leitor vê alguns tipos de display encontrados no mercado especializado de componentes eletrônicos. Em `A' e "C" temos dois displays tipo "barra": Em "E',' "G" e "H" temos, talvez, os mais conhecidos do nosso leitor: os tipos numéricos. O display "F" é uma variante do numérico de sete segmentos, porém com 16 segmentos, o que o "eleva" a categoria dos "alfanuméricos': Em "B" e "D" temos os tipos: "matriz de pontos',' muito utilizado em displays de mensagens publicitárias, por exemplo.

Na 1ª Parte do artigo trataremos dos displays tipo "barra de LEDs" (A e C) e também dos numéricos (E, G e H). Os tipos "alfanuméricos" (com 16 segmentos) e "matriz de pontos" serão abordados na 2ª Parte.

 


 

 

 

Displays tipo barra: teoria e controle

Os displays do tipo barra são os mais simples de se controlar. Basicamente, eles consistem de LEDs inseridos em um encapsulamento formando uma "barra de LEDs" (os mesmos são dispostos lado a lado). Esta barra pode ter vários formatos e quantidade de segmentos (LEDs). Veja na figura 1 a diferença entre os tipos A e C.

Porém, é necessário observar que cada "barra" tem sua própria particularidade. Cada "ponto" da barra pode ser constituído de um, ou de dois ou mais LEDs em série (ou mesmo em paralelo), o que permite aumentar o brilho de cada segmento aceso. Veja na figura 2 o diagrama da barra `A' e da barra "C':

 


 

 

 

Observando atentamente a figura 2, é possível compreender que apesar do controle destas barras ser o mesmo, a queda de tensão em cada segmento será diferente. Na versão mostrada em "C" temos apenas um único LED por segmento, e em 'A' três LEDs dispostos em série. Portanto, para usar a barra W poderíamos utilizar o circuito da figura 3 e para usar a barra "C" o circuito da figura 4.

 


 

 

A diferença básica entre os dois circuitos reside na presença do resistor limitador. No caso da barra "C" ele não se faz necessário. Se fizermos isso com a barra “A” poderemos queimar os segmentos da mesma.

Essa diferença deve-se à queda de tensão provocada por cada LED nos segmentos. Na tabela 1 temos os valores típicos e máximos da tensão a ser aplicada para "acender" cada segmento, nas barras comentadas. Estes valores foram extraídos dos "data sheets" fornecidos pelos fabricantes.

 


| Clique na imagem para ampliar |

 

Apesar deste tipo de barra ser muito simples de controlar (exatamente da mesma forma com que controlamos um LED comum), temos que levar em conta quantos LEDs existem em cada segmento e de que forma os mesmos foram interligados internamente na barra. Há displays do tipo barra (e outros também) em que os LEDs de um mesmo segmento são ligados em paralelo. Neste caso, a corrente que circulará por cada segmento aumenta e como resultado não podemos operar o segmento diretamente com o pino do microcontrolador, uma vez que este suporta uma corrente máxima de 20 a 25 mA, dependendo do modelo e fabricante.

Portanto, apesar de parecer muito simples operar uma simples barra de LEDs, a realidade pode mostrar-se bem diferente, caso o leitor ignore completamente o fato da necessidade de se observar (e ler!) atentamente o data sheet fornecido pelo fabricante.

 


 

 

 

Como e onde usar os displays tipo barra

Após a configuração eletrônica ideal para o circuito, o seu uso é, digamos, quase direto. Os displays tipo barra comportam-se como LEDs, cada qual com sua característica visual (barra normal, seta de orientação, pontos, etc).

O uso deste tipo de barra é aconselhável quando desejamos substituir barras montadas com LEDs comuns de maneira mais "elegante': E não só se ganha no visual do projeto (ou produto final), mas também na praticidade da PCB (placa final) que fica bastante reduzida e também "menos" poluída em suas ligações.

Em nosso site o leitor poderá encontrar o "código-fonte 1',' onde ilustramos como simular o efeito "vaivém" na barra 'A' com o microcontrolador PIC16F628A, utilizando o circuito da figura 3. O leitor também poderá fazer o download do "código-fonte 2" que demonstra como utilizar a barra "C”. Desta vez o efeito é apenas de ida, mantendo todas as barras acesas e depois apagando-as.

Um outro detalhe importante nos circuitos apresentados nas figuras 3 e 4, que deve ser observado, é que não foi utilizada a condição de fornecimento de corrente pelas portas do microcontrolador, mas sim de dreno. Esta opção é mais confortável ao microcontrolador, pois geralmente estes trabalham com uma corrente para dreno ligeiramente superior (da ordem de 5 mA) à corrente de "source" (fornecimento).

 

Displays de sete segmentos

Os displays de sete segmentos são os mais comuns e também os mais empregados em projetos, não só por parte desta Revista, mas também nas áreas da automação industrial, instrumentação e outras. Devido a sua quantidade de segmentos e a disposição dos mesmos, fica claro que seu uso serve para a apresentação de números.

No mercado é possível encontra-lo em vários tamanhos e cores do segmento. Para este tipo de display, também é aconselhável verificar no "data sheet" do mesmo, qual a sua configuração em relação ao número e tipo de ligação dos LEDs que compõem cada segmento. Como dica podemos dizer que quanto maior o display, mais LEDs cada segmento terá. O tipo de ligação, em série ou paralelo, varia muito de modelo para modelo e também de fabricante.

Na figura 5, o leitor pode ver o esquema de um display de sete segmentos. Cada segmento recebe uma "letra" para identificá-lo. É importante salientar que, seja qual for a cor, tamanho ou número de "algarismos" presentes no display, a nomenclatura dada aos segmentos será sempre a mesma, conforme apresentamos nessa figura.

 


 

 

 

Um outro detalhe para o qual chamamos a atenção do leitor é que este tipo de display possui sempre um pino comum a todos os segmentos, diferente do display tipo "barra" que possui dois pinos para cada segmento. Este ponto comum liga os "anodos',' ou ainda os catodos dos LEDs.

Assim, para ligar um segmento qualquer, é necessário antes, saber que tipo de display se tem em mãos: se de anodo, ou de catodo comum. Com base nesta informação, iremos trabalhar com dreno ou com fornecimento de corrente para o display. A figura 6 demonstra como cada modelo deve ser ligado.

 


 

 

 

Como e onde usar os displays de sete segmentos

Como dito anteriormente estes displays são largamente usados em ambientes industriais, residenciais, etc. Muitos ainda são os equipamentos de bancada, por exemplo, que utilizam este tipo de display em seus "mostradores': Sempre que for necessário demonstrar um valor numérico, o uso de um display de sete segmentos com LEDs deve ser pensado pelo leitor. Porém, o mesmo deve levar sempre em conta a corrente final máxima admitida pelo circuito. Em muitos casos, como nos aparelhos portáteis, não é possível utilizar este tipo de display devido ao seu consumo (em média 15 mA por segmento para os displays pequenos).

O controle deste tipo de display é bastante simples, sendo muito parecido com os displays tipo "barra': Para ligar um segmento basta ligá-lo conforme descrito na figura 6. Temos então apenas duas ligações a fazer.

Porém, este tipo de display foi criado para apresentar os algarismos de "0" a "9" Para isso é necessário ligar os segmentos de maneira "lógica", para que os segmentos "acesos" possam representar o algarismo desejado. Na tabela 2 temos os algarismos de "0" a "9" e os segmentos que devem ser ligados para a sua montagem em um display de sete segmentos qualquer.

 


 

 

 

Se o leitor observou atentamente a figura 1, deve ter percebido que estes displays possuem um ponto decimal inserido no canto inferior direito dos mesmos. Como eles foram criados com o propósito de mostrar um valor qualquer (quando empregado mais que um) e este pode ter casas decimais, é mais que desejável que este ponto esteja presente no próprio display. Seu uso é exatamente o mesmo de qualquer segmento, porém como ele não é utilizado na montagem de um algarismo, sempre lidamos com este de forma independente. Ligá-lo ou não ao circuito, dependerá única e exclusivamente do projeto (se este requer ou não o uso de casas decimais).

A esta altura o leitor também deve ter notado que, dependendo do número de algarismos necessários ao nosso "mostrador': será preciso um número elevado de I/Os em um microcontrolador, não é mesmo!? Cada display de sete segmentos precisa de sete pinos de I/0 do microcontrolador mais um para o ponto, se este for necessário. Mas, há uma maneira para se economizar I/Os e permitir o uso destes displays até mesmo com microcontroladores "pequenos":

O leitor deve estar lembrado que foi dito que estes displays possuem um pino comum ligado ao anodo (ou ao catodo) de todos os LEDs internos (segmentos). Para ligar um segmento é necessário usar dois pinos: o do próprio segmento e mais o pino comum (catodo ou anodo) obedecendo, claro, à polarização correta para o LED. Vamos analisar a situação demonstrada na figura 7. Pela figura podemos notar que todos os segmentos de mesma nomenclatura foram interligados entre si, formando um "barramento": Assim, todos os displays tiveram seus segmentos 'A, B, C, D, E, F e G" interconectados entre si (A com A, B com B, C com C, e assim por diante).

 


 

 

 

Não entraremos em detalhes sobre a gravação do microcontrolador neste artigo. Julgamos que o leitor que se propôs a testar estes circuitos tem a experiência necessária com microcontroladores e conhece as operações envolvidas no processo de gravação dos mesmos. Para os leitores sem experiência no assunto, aconselhamos a leitura do artigo "Microcontroladores PIC - Dicas para montagens de sucesso" do autor Márcio José Soares.

Também não foi fornecido qualquer "Iayout" para confecção de placas, pois os circuitos aqui presentes devem ser considerados como "experimentais" (testes e aprendizado). As montagens devem ser realizadas em matrizes de contatos ou até mesmo em placa padrão.

Se, conforme explicado na tabela 1, montarmos o algarismo "9'; por exemplo, e conectarmos ao fio terra todos os catodos de todos os displays, todos estes apresentariam o algarismo "9': Mas, se apenas o catodo comum do "display 1" fosse ligado ao terra, apenas este display mostraria este algarismo.

Se agora montarmos o algarismo "8" e conectarmos ao fio terra o catodo comum do "display 2'; também apenas este display mostraria o algarismo desejado. Se fizermos isso com o algarismo "7" para o "display 3" e com o algarismo "6" para o "display 4',' o leitor pode imaginar o que aconteceria. Teríamos os algarismos mostrados em displays diferentes, como se estivesse caminhando de um display para outro.

Agora, e se aumentarmos essa velocidade, digamos para 30 vezes por segundo, ou seja, se cada troca for feita em média 30 vezes em um segundo? Teríamos a nítida impressão que o valor "9876" está presente em nosso mostrador. Como isso é possível? Mágica? Nossa resposta encontra-se em uma característica fisiológica de nossos olhos chamada "Persistência Retiniana',' descrita em 1824 por Peter Mark Roget como a capacidade que a retina possui de reter a imagem por cerca de 1/20 a 1/5 segundo após o seu desaparecimento do campo de visão.

O processo de inserir um valor no "barramento'; ligar um display e em seguida desligá-lo, inserir um outro valor, ligar e desligar um outro display e assim por diante tem o nome de "varredura":

Claro que para a mão humana, ligar e desligar um display 30 vezes por segundo é tarefa impossível, mas para um microcontrolador não. Basta substituir as chaves demonstradas por transistores, e ligá-los a pinos de 1/0 de um microcontrolador qualquer. Veja a figura 8. O microcontrolador montará então cada algarismo e irá inserir o valor no "barramento" e, depois, irá ligar e desligar o display que deve mostrar este algarismo, e assim sucessivamente até que todos os algarismos desejados tenham sido inseridos em seus respectivos "lugares" no mostrador.

 


 

 

 

Na figura 9 o leitor tem um circuito que pode ser usado para testes. O microcontrolador PIC16F628 controla dois displays na contagem de "00" a "99'." Note que as linhas 'A, B, C, D, E, F e G" estão conectadas entre si (A com A, B com B e assim sucessivamente) e estas linhas na porta B.

 


| Clique na imagem para ampliar |

 

 

Os valores a serem inseridos na porta B para a montagem do algarismo desejado levam em consideração qual segmento se deseja ligar e em qual pino o mesmo está ligado no microcontrolador. Caso o leitor troque as ligações entre os segmentos dos displays e os pinos de I/O selecionados, irá perceber que os displays não mais mostraram os algarismos de maneira correta. A montagem dos mesmos não será perfeita e seu entendimento totalmente improvável. Na tabela 3 temos estes valores, respeitando a ligação do segmento ao pino de I/O.

Observando a tabela 3, o "código--fonte 3" presente em nosso site e o circuito, o leitor pode agora compreender melhor o "conceito" passado.

 


 

 

 

O Alfanumérico e a Matriz de Pontos

Agora, veremos os itens "F" e "B" (e consequentemente "D") da figura 1. Com isso acreditamos fechar um grupo de displays (pelo menos os mais conhecidos e procurados para projetos e circuitos), dando ao nosso leitor a "base" necessária para controlá-los com qualquer microcontrolador.

Todos os exemplos da 12 Parte e desta 22 foram feitos com o uso do microcontrolador PIC16F628A Microchip® utilizando a linguagem "Assembly': Porém como dito anteriormente, os "conceitos" envolvidos são sempre os mesmos. Conhecendo o microcontrolador e uma linguagem qualquer para este, a aplicação é imediata, seja qual for o microcontrolador.

 

Displays tipo "alfanumérico": teoria e controle

Este tipo de display é muito parecido com o tipo "numérico" (sete segmentos). A diferença está no "acréscimo" de alguns segmentos, entre os já presentes na versão numérica, o que permite "grafar" caracteres de uma maneira mais inteligível. Veja a figura 10.

 


 

 

 

O leitor deve ter notado pela figura que não apenas foram introduzidos mais seis segmentos no display, como também foram divididos três segmentos já presentes na versão numérica. Temos, então, um total de 16 segmentos no display.

A aplicação deste tipo de display é muito grande, sendo uma possibilidade de substituição para os displays de apenas sete segmentos, principalmente quando o equipamento a ser desenvolvido necessita também demonstrar "letras'?

Claro que, dependendo da aplicação, o uso de um display tipo LCD (cristal líquido) seria uma alternativa viável. Porém, não podemos esquecer que em alguns casos é necessária a visualização da mensagem emitida a uma certa distância e também em ambientes com uma iluminação baixa. Nestes casos, o uso do LCD é quase inviável e o uso do display a ser demonstrado é mais eficiente.

Neste tipo de display, cada segmento também recebe uma letra para identificá-lo, como feito nos displays de sete segmentos. Na figura 11 o leitor tem a identificação destes segmentos. A montagem de um caractere é feita "ligando" um conjunto de segmentos de forma que, visualmente, seja possível identificar cada caractere ou mesmo números. Estes displays podem ser encontrados ainda nas versões "catodo comum" e "anodo comum.

 


 

 

 

Para o controle deste tipo de display, basta ativar cada segmento com o nível lógico adequado ao tipo do segmento do display: nível lógico "1" para displays de catodo comum e nível lógico "O" para displays do tipo anodo comum. Desta forma estaremos polarizando cada LED (segmento) do display de forma direta. Observe a figura 12.

 


| Clique na imagem para ampliar |

 

 

Note que o valor de Rx dependerá exclusivamente do corrente limite para cada segmento. Para calcular seu valor, o leitor deverá utilizar a "Lei de Ohm" (V = R x 1). Os dados a serem utilizados devem ser obtidos no "data sheet" do display, geralmente fornecido pelo fabricante.

 

Basta então utilizar um microcontrolador com 16 pinos de I/O para ligar todos os segmentos necessários, ou ainda, usar recursos lógicos "auxiliares" para realizar este controle com apenas oito pinos de I/O para os 16 segmentos. Ambas as maneiras estão demonstradas na figura 13. Denominamos este modo de "método de controle direto”.

 


 

 

 

O leitor já deve ter percebido que caso deseje controlar mais de um display (devido ao número de "caracteres" necessários ao mostrador), utilizando o método do controle direto, o número de I/Os necessário seria enorme! Porém, assim como é possível empregar o método da "varredura" nos displays de sete segmentos, também o é para displays alfanuméricos.

O método da varredura prevê que todos os pinos dos segmentos com mesma nomenclatura sejam ligados entre si. Todos os segmentos "a" são interligados entre si, o mesmo sendo feito com todos os segmentos "W e assim por diante, formando um barramento de "dados": Ao inserirmos um determinado "valor" na entrada do barramento, teoricamente todos os displays demonstrariam o mesmo "caractere" ou número.

O controle é feito então ligando o display (que deve mostrar o "valor") através do seu catodo ou anodo comum com um transistor, por exemplo. Desta forma, mesmo que todos os displays recebam o mesmo "dado': devido à interconexão dos segmentos, somente um irá demonstrá-lo. Atente para a figura 14.

 


 

 

 

O leitor percebe agora que pode controlar uma "fileira" de displays, o que permite a inserção de "palavras" e números em um determinado equipamento. Com um pouco de criatividade pode-se dar a impressão de movimento desta, apenas trocando os caracteres de posição em relação a sua posição original (deslocamento à direita ou esquerda, por exemplo).

Na figura 15 o leitor tem um exemplo para o controle de duas unidades deste tipo de display. É fundamental que ele tenha em mente que, antes de montar o circuito proposto para testes, determine se o display que possui é o indicado no esquema elétrico (C808-SR). Caso contrário, deverá realizar a busca do "data sheet" do mesmo na Internet ou loja onde adquiriu o display, para evitar problemas. Conforme demonstrado na 1ª Parte, o uso correto de um componente depende muito da compreensão do seu funcionamento e isso é obtido com a leitura atenta do seu "data sheet”.

 


| Clique na imagem para ampliar |

 

 

No mercado existem displays com diversas configurações. Estas podem apresentar as conexões de forma "invertida", ou seja, anodos ligados às linhas e catodos ligados às colunas. A forma de uso é análoga a que será apresentada, apenas sendo necessário inverter a polarização dos LEDs (linha e coluna). É extremamente aconselhável obter o "data sheet" do display" matriz" para saber melhor a respeito da sua disposição interna, assim como outras informações sobre corrente máxima por ponto, e muitas outras.

No esquema utilizamos dois Cls 74 LS573 como "latches" auxiliares. Desta forma controlamos 16 segmentos com apenas 8 pinos de I/O do microcontrolador. O circuito prevê ainda mais dois pinos para o controle dos "latches" (um para cada) e ainda mais dois pinos de I/O para o controle dos "catodos" dos displays, num total de 10 pinos (8 + 1 + 1), sendo que destes 10 pinos, 8 são comuns entre os demais. Se o leitor usar de bastante criatividade verá que é possível, aumentando a "lógica auxiliar': controlar mais displays com o mesmo microcontrolador.

Em nosso site o leitor encontrará o programa-exemplo desenvolvido para o circuito 1 (código_fonte1.zip). Está presente no arquivo cedido o código-fonte e também o arquivo HEX necessário para gravação do microcontrolador.

O programa basicamente escreve os algarismos de O a 9 e os caracteres de "A' a "Z" em ambos os displays, com o passo de "1': dando a impressão de movimento. Aconselhamos a todos a leitura atenta dos conceitos envolvidos. Eles são muito mais importantes que qualquer código-fonte. Somente após compreender os "conceitos" envolvidos, o leitor deverá ater-se ao estudo do código-fonte fornecido.

 

Displays tipo "matriz de pontos": Teoria e controle

O display tipo "Matriz de Pontos ou LEDs" é largamente utilizado em "painéis" para mensagens publicitárias e outros equipamentos, onde se faça necessária a demonstração de "frases" completas e diversas informações como: data, hora, temperatura, e muitas outras.

Este tipo de "painel" é largamente empregado na orientação de filas, terminais rodoviários, lojas, "call centers”,' chão de fábrica, etc. Enfim, onde houver a necessidade de inserir uma informação que deva ser lida por um grande número de pessoas, lá estará este tipo painel.

O próprio autor deste artigo já publicou nesta revista um painel deste tipo, controlado por um microcontrolador também conhecido dos nossos leitores, o PIC16F877.

O controle deste tipo de display (figuras 1B e 1 D) difere um pouco dos demais apresentados até o momento. Para compreender melhor seu uso, devemos antes saber como o mesmo é "constituído" Veja a figura 16.

 


 

 

 

Observando atentamente a figura, o leitor irá perceber que temos basicamente um número "X" de colunas e um número "Y" de linhas. Nas linhas estão ligados todos os catodos dos LEDs que compõem cada linha e nas colunas todos os anodos dos LEDs que compõem cada coluna.

O número de pontos de uma matriz é obtido pela multiplicação do número de linhas pelo número de colunas. No nosso exemplo temos uma matriz de 35 LEDs (7 x 5).

Para "acender" um LED (ponto) na matriz deve-se polarizar adequadamente o mesmo, inserindo Vcc em seu anodo e GND em seu catodo, respeitando o limite de corrente de cada LED. Para saber qual é este limite, deve-se mais uma vez, recorrer ao "data sheet" do mesmo. Para ligar mais pontos é necessário fazer a mesma operação para cada ponto desejado.

O leitor já deve ter notado que é possível montar qualquer caractere neste tipo de display, até mesmo os acentuados, o "Ç',' caracteres especiais como "cerquilho', "@" e muitos outros. Basta "desenhar" o caractere em uma matriz de 35 pontos (7 x 5). Até mesmo caracteres em "itálico" são possíveis neste tipo de display. Não há limites com o uso de uma boa dose de criatividade.

Para empregar um display deste tipo utilizando o método direto, é preciso um microcontrolador com 13 pinos de I/O (um para cada linha e coluna existente no display).

Para controlar mais de um display recorremos mais uma vez ao método da varredura. Porém, aqui o método é um tanto diferente do demonstrado anteriormente. A varredura é feita nas colunas do display, pois não há catodo comum, mas sim colunas em comum!

Esta varredura visa inserir um valor na linha e ligar a coluna que deve conter aquele "pedaço" do caractere, inserindo um próximo valor e ligando a próxima coluna, até que todos os valores que fazem parte da montagem do caractere tenham sido inseridos. No nosso caso temos cinco colunas, o que significa que temos então cinco valores para cada caractere. Este tipo de "varredura" é feito de maneira muito mais rápida que a varredura para os displays numéricos ou alfanuméricos, principalmente se houver mais de um display a ser utilizado formando um painel, por exemplo.

Vamos a um exemplo prático. Digamos que o leitor deseje montar a letra "A" em um display tipo matriz de pontos, com 35 LEDs (sete linhas com cinco colunas). Acompanhe a figura 17.

 


 

 

 

Observando esta figura e a tabela 4, o leitor pode verificar quais os valores a serem inseridos na linha, para cada coluna da matriz. Desta forma, através da varredura temos a impressão "aparente" da montagem de um caractere. Dizemos que ela é aparente, pois na verdade somos enganados por nossos olhos que demonstram o caractere completo. Este efeito foi explicado anteriormente e tem o nome de "persistência retiniana"

 


 

 

 

Os valores presentes na tabela 4 representam os "níveis" lógicos adequados para trabalhar com a matriz de pontos com catodos nas linhas.

Note que na varredura inserimos nas linhas: "GND" ("0" lógico) para os pontos a serem ligados e "Vcc" para os pontos que não desejamos ligar. Inserido o primeiro valor ligamos a coluna correspondente ao mesmo (Vcc), mantendo as demais com GND. E a operação é repetida até o valor para a coluna cinco.

O caractere 'A' é simétrico e, portanto, se trocarmos a ordem com que as colunas serão ligadas, nada será alterado. Porém, isto não procede para um caractere não simétrico como a letra "R" Se o "programador" inverter a ordem para chaveamento das colunas, o caractere será mostrado de maneira invertida.

O leitor deve estar se perguntando: "E se eu tiver mais de um display, como será feita a varredura?" A resposta para tal pergunta é bem simples. Da mesma maneira que para um único display!

Todas as "linhas" serão interconectadas entre si (1 com 1, 2 com 2 e assim sucessivamente). O leitor deverá considerar também que possui agora um número "W" de colunas que é o resultado do número de colunas de cada display multiplicado pelo número de displays a serem controlados. Ou seja, o leitor passa agora a ter uma matriz com 70 pontos (10 x 7) e mantendo os caracteres com o tamanho de 35 pontos, poderá demonstrá-lo em qualquer ponto da nova matriz de 70 pontos.

Se o leitor fizer as contas verá que o número de 1/Os necessárias ao controle desta nova matriz será de 17 pinos de I/O, sendo 7 comuns entre as linhas e 5 para cada display (10 colunas). Calcule o número de I/Os necessárias para se controlar uma matriz com 60 colunas (12 displays) e chegará a 67 pinos de I/O.

Contudo, utilizando o recurso de uma "lógica auxiliar" com Cls discretos no controle das colunas, poderíamos usar apenas 15 pinos de I/O no total. Observe o circuito da figura 18. Ele foi construído contemplando tal “lógica”. Ela utiliza um 74LS154 no controle das colunas. Trata-se de um "demux" com "4" entradas e "16" saídas. Para controlar este Cl são necessários apenas cinco pinos de I/O: quatro para a entrada de dados BCD e uma para a sua seleção. Cada Cl como este poderia então controlar até três displays (são 16 saídas no total) tipo matriz de pontos com cinco colunas cada.

Se o leitor utilizar quatro CIs como este poderia controlar um painel com até 64 colunas. Todas as entradas (BCD) seriam interconectadas e a ativação de cada Cl seria feita de forma independente. Sendo assim, teríamos: quatro pinos em comum para as entradas BCD dos Cls, mais um pino de controle para cada, mais sete pinos necessários para as linhas, num total de 15 pinos de I/0 do microcontrolador: [4 + (1 x 4) + 7].

Não entraremos em detalhes do controle efetivo de uma matriz com 60 neste artigo. Por ora, será mostrado apenas o controle de um único display.

Para testar o circuito, inserimos em nosso site um programa para controle do circuito 2, utilizando a linguagem Assembly Microchip. O arquivo "código_ fonte2.zip" contém o código-fonte para estudo, assim como o arquivo hex para gravação do microcontrolador.

Para o leitor que compreendeu bem a teoria dada até o momento para o controle de displays tipo matriz, pode-se sugerir a inserção de mais um display no circuito apresentado na figura 18 e a alteração do código-fonte oferecido para realizar o controle de mais um display. Considere isso um desafio!

 


| Clique na imagem para ampliar |

 

 

Conclusão

O controle dos displays de LEDs, bem como de qualquer dispositivo ligado a um microcontrolador, não depende exclusivamente de conhecimentos sobre a linguagem de programação do microcontrolador ou do próprio microcontrolador, mas fundamentalmente dos métodos necessários para operar tais dispositivos. Aconselhamos aos nossos leitores que se atenham ao aprendizado dos conceitos aqui passados. Os programas servem apenas para a formação de uma futura biblioteca e não ajudarão muito, se o aprendizado dos conceitos for falho! Bons estudos e até a próxima!