Handmades</center>
 
*
Bem-vindo, Visitante. Por favor faça o Login ou Registro. 24 de Novembro de 2024, as 15:06:59


Login com nome de usuário, senha e duração da sessão


Páginas: [1]   Ir para o Fundo
  Imprimir  
Autor Tópico: Display led em matrix 5x7  (Lida 11017 vezes)
Rafael O Leite
Visitante
« : 27 de Setembro de 2013, as 15:15:42 »

Como posso fazer uma representação de letra num display de leds em matriz 5x7, usando binários?
Estou quebrando a cuca, e até agora não achei nenhum codificador.
A melhor idéia que me ocorreu até o momento é: muxar cinco bits, pra cada saída hexadecimal injetar num grupo de loop, de endereços cada, numa eeprom 5 bits...

Se alguém puder me ajudar...
Registrado
Patines
Handmaker
****
Offline Offline

Sexo: Masculino
Mensagens: 1.500

Obrigado
-Dado: 163
-Recebido: 175



« Responder #1 : 27 de Setembro de 2013, as 15:44:43 »

Faz uma tabela.  Faz assim pra facilitar: cada letra ocupa 8 Bytes cada vez que tu precisar escrever uma letra acessa o endereço correspondente àquela letra e cria uma rotina que lê os 8 bytes e escreve no display, na posição desejada.

Daí pra codificar é força bruta mesmo.  A não ser que alguém já tenha feito e colocou na internet.



Está em: http://www.jianpingusa.com/USBPCParts.asp

T+
« Última modificação: 27 de Setembro de 2013, as 15:46:28 por Patines » Registrado
xformer
Administrator
DIY Freak
******
Offline Offline

Sexo: Masculino
Mensagens: 6.287

Obrigado
-Dado: 71
-Recebido: 2049


e^(i x pi)+1=0


WWW
« Responder #2 : 27 de Setembro de 2013, as 17:22:33 »

Tá com sorte, eu fiz uma tabela dessa pra um projeto com esses displays.








Registrado

O que se escreve com "facilidade" costuma ser lido com dificuldade pelos outros. Se quiser ajuda em alguma coisa, escreva com cuidado e clareza. Releia sua mensagem postada e corrija os erros.
Rafael O Leite
Visitante
« Responder #3 : 27 de Setembro de 2013, as 19:31:14 »

Excelente trabalho Xformer!!! Na hora de executar você utilizou este método mesmo, de dar loop em 7 endereços?
Registrado
xformer
Administrator
DIY Freak
******
Offline Offline

Sexo: Masculino
Mensagens: 6.287

Obrigado
-Dado: 71
-Recebido: 2049


e^(i x pi)+1=0


WWW
« Responder #4 : 27 de Setembro de 2013, as 20:49:47 »

Excelente trabalho Xformer!!! Na hora de executar você utilizou este método mesmo, de dar loop em 7 endereços?

Obrigado.  Não entendi o que você quis dizer com loop em 7 endereços.

Você tem que entender como é a estrutura do seu display. Essa tabela foi feita pra ser usada com displays onde você tem os leds ligados em grupos de 5 pelos catodos, então tem 7 grupos de leds formando 7 linhas. Por sua vez esses mesmos leds são ligados em grupos de 7 pelos anodos, formando as 5 colunas.  Dessa forma pra acender apenas um led da matriz, precisa colocar nível lógico 1 numa coluna (mantendo as demais em nível 0)  e nível lógico 0 numa linha (mantendo as demais em nível 1). Como pra mostrar um caractere no display precisa acender vários leds da matriz, só multiplexando os leds. Assim o mecanismo é o seguinte: aciona a primeira coluna (nível 1) e coloca os níveis lógicos pra acender ou manter apagados os leds daquela coluna (7 bits) nas respectivas linhas. Deixa um tempo ligado (veja como calcular mais abaixo), desliga essa coluna e aciona a coluna seguinte, coloca os bits correspondentes a nova coluna do caractere, deixa o mesmo tempo ligado, desliga e passa pra coluna seguinte, e assim por diante. Ao final da 5.a coluna, volta pra 1.a coluna.
Ou seja, o ciclo de multiplexação é de 5 colunas.  Cada coluna precisa de 7 bits pra acionar os leds daquela coluna. Esses 7 bits são buscados numa tabela de caracteres, onde cada caractere é formado por 5 grupos de 7 bits (na verdade, se o circuito for microcontrolado, vai usar 1 byte pra cada coluna, deixando 1 bit de fora). Essa tabela tem que ficar numa memória.
É mais lógico e eficiente multiplexar as colunas, pois elas são em menor número que as linhas, assim a divisão do tempo é feita por um número menor (divide por 5 contra 7) permitindo um maior brilho dos leds e a tabela fica menor (senão teria que buscar 7 valores de 5 bits).  Para que não haja flickering (cintilação) do display, a frequência de multiplexação precisa ser de no mínimo 30Hz, quanto mais melhor. Por exemplo 50Hz, vai dar um período de 20ms que vai ser dividido (multiplexado no tempo) entre 5 colunas. Assim cada coluna tem que ficar acionada por 20ms/5 = 4ms, e apagada no restante do ciclo (16ms).
Registrado

O que se escreve com "facilidade" costuma ser lido com dificuldade pelos outros. Se quiser ajuda em alguma coisa, escreva com cuidado e clareza. Releia sua mensagem postada e corrija os erros.
Rafael O Leite
Visitante
« Responder #5 : 13 de Outubro de 2013, as 17:32:23 »

Há uma alternativa mais barata mas que requer técnica mais apurada - posto um tutorial do display 16 X 2 http://www.feng.pucrs.br/~jbenfica/curso/tutorial_lcd.pdf
Registrado
Patines
Handmaker
****
Offline Offline

Sexo: Masculino
Mensagens: 1.500

Obrigado
-Dado: 163
-Recebido: 175



« Responder #6 : 13 de Outubro de 2013, as 20:27:00 »

Há uma alternativa mais barata mas que requer técnica mais apurada - posto um tutorial do display 16 X 2 http://www.feng.pucrs.br/~jbenfica/curso/tutorial_lcd.pdf

Com os LCD deste tipo já trabalhei e na minha opinião não tem nada de dificil.  Mas o LCD é pequeno, portanto não se vê de longe... No escuro até se vê.

Abraços, T+
Registrado
xformer
Administrator
DIY Freak
******
Offline Offline

Sexo: Masculino
Mensagens: 6.287

Obrigado
-Dado: 71
-Recebido: 2049


e^(i x pi)+1=0


WWW
« Responder #7 : 13 de Outubro de 2013, as 23:49:18 »

Display de matriz de leds e display de cristal líquido são coisas diferentes e o modo de acionamento deles é totalmente diverso.  Os LCDs de 16 colunas x 2 linhas normalmente já tem um controlador e tabela com os caracteres (tipo HD44780), bastando apenas mandar os comandos pra ele apresentar os caracteres no visor. A proposta mudou completamente da inicial.
Registrado

O que se escreve com "facilidade" costuma ser lido com dificuldade pelos outros. Se quiser ajuda em alguma coisa, escreva com cuidado e clareza. Releia sua mensagem postada e corrija os erros.
Páginas: [1]   Ir para o Topo
  Imprimir  
 
Ir para:  


Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines

XHTML 1.0 Válido! CSS Válido! Dilber MC Theme by HarzeM
Página criada em 0.045 segundos com 22 procedimentos.
SimplePortal 2.3.3 © 2008-2010, SimplePortal