Controlando Display GLCD de 128x64 pixels...
Modelo ERM12864-2SA
Se você já tentou fazer um desses displays funcionar em linguagem assembler do seu microcontrolador preferido e não teve sucesso sem ter de reutilizar algum código em C ou outra linguagem de alto nível ou mesmo módulos prontos de algum programa como o www.arduino.cc, www.pinguino.cc ou mesmo o programa energia para microcontroladores MSP430 e quer conhecer como manipular dados e instruções neste GLCD específico, vou mostrar a gora como é fácil e prático. Este GLCD pode ser comprado em www.cleapseletroeletronica.com a um custo bem convidativo.
Dimensões
e esquemático.
-
Características elétricas (VDD=5V+/-5% , VSS=0V , Ta= 25 º C ).ParâmetrosSímbolocondiçãoMínimoTípicoMáximounidadeLogic voltsVDD--------4,555,5VLogic correnteIDD-----------------2,024,01mAAlimentaçãoVDD-V025ºC88,59,01VNível altoVIH---------0.7VDD---------VDDVNível baixoVIL---------0---------0.3VDDVBacklight 40mA40mA25ºC-------3,413,51V
- Ciclos de instrução e dados.
Tempo de escrita no GLCD.Tempo de leitura no GLCD.- Pinagem do GLCD.
Diagrama eletrônico de exemplo.Operação e acionamentos dos dados.- Buffer de I/O.
O buffer de entrada de dados controla o estado do GLCD entre os instantes de habilitado e desabilitado. Até que CS1 ou CS2 estejam em modo ativo a entrada de dados e instruções não são executadas no GLCD. Para isso, deve-se escolher um dos dois lados do GLCD por vez e acionar ou CS1 ou CS2 para que se saiba para onde deve ser impresso o dados ou qual dos dois lados se deve gravar alguma instrução. Mesmo sem mudanças internas, RSTB funciona independentemente de CS1 ou de CS2.- Registro de entrada.
O registro de entrada tem a função de interfacear o GLCD com o meio externo e sua função é guardar os dados ou instruções temporariamente até que essa informação seja gravada em definitivo na memória RAM de dados.Quando CS1 ou CS2 estão em modo ativo, ou seja, acionados, R/W e RS acionam o registro de entrada. Os dados vindos do microcontrolador ou computador ou microprocessador, são guardados no registro de entrada que é mais rápido que a memória RAM, depois são transferidos para esta memória. Esta operação de transferência é executada com o acionamento do pino E que habilita o registro a transferir os dados ou instruções uma vez que o registro esteja com as informações completas e prontas para aparecerem no display.- Registro de Saída.
O registro de saída guardam os dados da memória de dados do display quando CS1 ou CS2 estão em modo ativo e R/W e RS estão em nível “H”. Os dados guardados no display são transferidos para a área de memória de dados e colocados no registro de saída. Quando CS1 ou CS2 estão em modo ativo e R/W em nível H e RS em nível L o bit de status pode ser lido.Para ler o conteúdo da memória de dados da RAM do display é necessário duas vezes a instrução de leitura. Na primeira, os dados são transferidos para o registro de memória de saída e na segunda, os dados estão disponíveis para serem lidos por qualquer meio, seja por um microcontrolador ou por um computador.A tabela seguinte mostra os níveis de cada pino e sua função com esses níveis. Procure seguir o que está descrito quando for fazer seu programa para o seu microcontrolador.
RSR/WFunção00Instrução1Leitura de status (Busy check)10Escrita de dados ( do Registro de entrada para a RAM do display )1Leitura de dados( Da RAM de dados do display para o registro de saída)
- Resset (RST).
O sistema de resset pode ser inicializado levando o pino RST para o nível baixo, ou zerando este pino quando estiver ligando o sistema onde ele esteja sendo usado. Recebendo instruções de um microcontrolador. Quando este pino vai a nível baixo ou zero, algumas coisas coisas podem acontecer : O display é desligado e o display coloca o primeiro endereço na posição zero, ou seja, Z-address 0 .Enquanto o pino RST estiver no nível baixo ou zerado, nenhuma instrução tem acesso a leitura de status do display. A condição de status de resset aparece no pino DB4 do módulo GLCD. Depois que DB4 estiver em nível baixo, qualquer instrução pode ser acessível.Flag de ocupado.Busy flag indica que o módulo está em operação ou não. Quando este flag estiver em H ou em nível alto, ele está inacessível por qualquer instrução externa. Ao chegar ao nível baixo ou zero, qualquer instrução ou dados pode ser acessado. DB7 é o pino que indica o sinal de busy flag. Observe que quando alimentamos o módulo, habilitamos o pino E, temos de esperar um pouco até que o pino DB7 vá a nível zero.- Efeito flipflop de display ON/OFF
O circuito de flip flop ON/OFF do GLCD tema função de desligar e ligar o display. Quando o flip flop está em nível baixo ou em reset, aparece uma tensão seletiva e não seletiva na janela do display, através da saída dos terminais do segmento do IC KS0108B. Quando estiver em nível alto ou set, nada aparece , independente do valor na memória de dados do display.O circuito de flip flop ON/OFF do display pode ter o status mudado por instrução. Os dados do display, em todos os segmentos, desaparecem, quando o sinal de RST estiver em nível baixo ou zerado. O sinal de status do flip flop pode ser acessado no pino DB5 pela instrução de leitura.
Registro da página X.
O registro da página X descreve a área da memória interna do display. Este registro não possui a função de contador. O endereço é posicionado por instrução.
Contador de endereço Y.
O contador de endereço Y é responsável pela memória RAM interna do display. Um endereço é definido por meio de instrução e é incrementado em 1 automaticamente por meio das instruções de leitura ou escrita de dados do display.
Memória de dados do display.
É responsável por guardar as informações que serão mostradas no display. Para aparecer um pixel no display é necessário que o pixel seja um bit 1 na memória do display, por outro lado se nada aparecer é por que temos um bit 0.
Registro de linha inicial do display.
O registro de início de linha do display indica o endereço dos dados da memória do display a serem mostrados no início na janela do do display. Os bits DB0~DB5 do início de linha do display são definidos por instrução. Este registro também é usado para o efeito de movimento de figuras e caracteres na janela do display.Instrução de controle do display.
O controle de do display é feito por uma série de métodos e instruções onde o efeito desejado é visto por meio desse controle. As instruções são enviadas por qualquer microcontrolador ou computador para o módulo GLCD e são processadas pelo circuito interno de controle do display.A tabela a seguir mostra as várias instruções desse display. Demais recursos podem ser adquiridos lendo o datasheet do KS0108B .
Este comentário foi removido pelo autor.
ResponderExcluir