Já vi esse tipo de LCD muitas vezes em balanças, calculadoras, medidores, micrômetros etc. Sei que é uma tela bastante tradicional, mas gosto muito de sua compacidade, simplicidade e talvez até custe menos, em comparação com TFTs ou smartphones. digite touch displays.
[ Como se chama? Respondida por @ kevlar1818 e @stevenvh: "Display de sete segmentos"]
Eu gostaria de trabalhar com esse tipo de LCD, por exemplo, acabei de encontrar este de 8 dígitos chamado VIM-878 do catálogo Digikey; Aqui está a folha de dados .
Como faço para interagir com ele? Gostaria de saber o que seria uma maneira boa / comum de interagir com ele a partir de um simples microcontrolador AVR como um Atmega8 - de preferência com circuitos de interface / peças que não são muito grandes fisicamente.
- Presumo que algum tipo de driver ou multiplexador seria necessário? Acho que estou procurando uma perspectiva inicial de outras pessoas que possam ter uma melhor experiência de interface com esse tipo de LCD.
Respostas:
É uma tela de 7 segmentos . Ao contrário dos displays de caracteres da matriz de pontos, o kevlar se refere a esses módulos na maioria das vezes não são inteligentes. A maioria dos monitores de matriz de pontos possui um controlador compatível com HD44780 no qual você simplesmente pode escrever códigos ASCII, mas um LCD de 7 segmentos geralmente é apenas o vidro, com conexões para segmentos e vários planos posteriores (geralmente até 4).
Dirigir LCDs pode ser desagradável, pois eles não usam apenas dois níveis; portanto, você não pode conduzi-los com lógica digital comum.
A melhor coisa a fazer é selecionar um microcontrolador com controlador LCD integrado, ao qual você pode conectar o monitor diretamente, como a TI MSP430x4xx . Como a maioria dos controladores, este também conhece apenas segmentos; não está ciente de dígitos ou qualquer coisa. (Ótimo, primeiro tivemos uma exibição idiota, agora também temos um driver idiota!) Há uma razão para isso. Esses drivers de LCD geralmente são usados para acionar LCDs personalizados, que podem ser uma mistura de uma parte numérica, gráficos de barras e símbolos personalizados. Esse símbolo também é um segmento único, portanto não faz sentido falar sobre dígitos.
Este visor possui símbolos como "bateria" e "despertador", mas também todos os campos de texto, como "AM", "PM" e "SNOOZE" são símbolos que consistem em um único segmento (isto é, controlado por um único bit).
Leitura adicional
Guia do usuário da família MSP430x4xx . O controlador LCD é coberto na p.709 e seguintes.
fonte
O que você está pensando é chamado de LCD de 7 segmentos. Se você sabe como acender um LED comum, então seu 1/8 do caminho até lá.
Aqui está o Wiki. Ele tem alguma teoria sobre como você criaria números iluminando diferentes matrizes dos LEDs: http://en.wikipedia.org/wiki/Seven-segment_display
(de) A multiplexação é um bom método para iluminar um painel grande de 7 segmentos, embora não seja necessário. Se suas portas de E / S são limitadas, é o caminho a seguir. O básico de desmuxificação funciona assim (supondo que você saiba binário aqui). Olhe para essa foto:
Com um número binário de 3 bits como 000, podemos representar até o número 7 (IE para selecionar a porta 5, teríamos ABC como 101). O que aconteceria no demux da sua situação é que uma entrada é algo como um sinal alto e AB&C são portas de E / S. Os 0 a 7 são conectados a cada segmento do LCD e, escrevendo a ABC do seu controlador, você pode iluminar um segmento. Você pode estar dizendo espera, mas se eu quiser acender um número, preciso de muitos segmentos acesos, não apenas do quinto segmento. Bem, depois disso, você pode procurar em duas estradas para obter o LCD para exibir um número. O primeiro é adicionar mais demuxs para segmentos adicionais necessários. A segunda é uma abordagem de software que envolve piscar muito rapidamente cada um dos segmentos necessários para criar a ilusão de que o painel está completamente iluminado.
fonte
Uma tela de sete segmentos ou uma matriz de pontos é o que você está se referindo, acredito.
Aqui está um exemplo no Sparkfun com a folha de dados relevante . Encontre este exemplo / tutorial do AVR na seção "Documentos" da página do produto. Sparkfun não é ótimo?
Dado este monitor de 14 segmentos e sua folha de dados , vamos descobrir como usá-lo.
Vamos dar o exemplo de mostrar um
7
no primeiro cluster de segmento (mais à esquerda).Para escrever um
7
, precisamos assert segmentos1A
,1B
e1C
, como visto na folha de dados. Todos esses segmentos são mapeados para fixar 35 do dispositivo, mas emCOM
linhas diferentes . Com uma folha de dados tão enigmática, meu melhor palpite seria que essasCOM
linhas sejam mapeadas para os pinos 17 a 20, conforme a tabela na folha de dados.Assim, para cada segmento de afirmar acima, que seria de manter o pino 35 altos, enquanto rapidamente ciclismo entre afirmar
COM1
,COM2
, eCOM3
através dos pinos 18, 19 e 20, respectivamente. Os três segmentos apareceriam acesos simultaneamente, criando a7
.Dito isto, código bem escrito simplesmente usará algum tipo de mapa para que qualquer caractere seja exibido. O desafio é fazer esse mapa funcionar para QUALQUER dos clusters de segmentos.
Eu ainda recomendo um monitor de matriz de pontos como o primeiro ao qual vinculei; certamente existem projetos mais leves por aí. O benefício de usar um monitor de matriz de pontos é que a maioria tem um registro de dados embutido, para que você possa passar apenas caracteres ASCII de 8 bits, sem problemas de implementação divertidos, como no exemplo de 14 segundos acima.
fonte