Vous êtes sur la page 1sur 5

ST7920

Introduo
O ST7920 um display de LCD grfico de 128x64 pixels. Ou seja, possvel exibir
grficos e outros tipos de informaes manipulando os pontos na tela.
Possui 64 palavras de 16-bit na memria (dados estes utilizados para a impresso dos
pixels no display), alm de possuir total suporte a escrita de texto, usando caracteres tanto
ocidentais como orientais.
O envio de dados para o display para ocorrer a impresso de grficos pode ser feita de
duas formas: paralela ou serial. Diversas instrues internas do display devem ser usadas para
que ele possa ser controlado corretamente.
Organizao da memria e dos pixels
A organizao dos pixels no display feita de acordo com uma regio da memria
interna do display, a GDRAM. Nesta regio esto presentes palavras de dados de 16 bits, sendo
que cada bit corresponde a um ponto acionado em algum local distinto no display. Ou seja,
cada 1 que esses valores binrios de 16 dgitos contm corresponde a um pixel aceso,
enquanto que cada 0 corresponde a um pixel apagado. Escrevendo diferentes valores
binrios nestes dados da memria faz com que o grfico seja manipulado da forma que o
programador desejar.
No possvel acessar diretamente cada palavra da memria que coordena os pixels,
j que o dispositivo que o controlar, um microcontrolador, por exemplo, externo ao
controlado (o display de LCD). Sendo assim, necessrio enviar instrues indicando as
coordenadas da posio da memria no LCD para somente assim enviar o valor desejado a ser
gravado ao endereo previamente configurado.
Propositalmente o endereo das posies de memria feito de acordo com um
sistema cartesiano de coordenadas, X e Y, imitando as coordenadas reais a serem visualizadas
no display. A coordenada X das palavras varia de 0 a 15, enquanto a coordenada Y varia de 0 a
63. Embora haja esta variao especificada na folha de dados do display, o acesso das
coordenadas na prtica um pouco diferente.
Considerando que cada palavra contm 16 bits, equivalendo 16 pixels, a coordenada X
s deveria ter 8 posies, j que cada uma delas ocupa de uma vez s 16 pixels, j que 8 * 16 =
128 pixels, largura mxima do display. Porm, a arquitetura da memria trabalha de forma
diferente.
Se o usurio pretende acessar qualquer pixel que, verticalmente esteja acima da
metade do display (endereos de Y de 0 a 31), necessrio apenas especificar a coordenada X
desejada (de 0 a 7) e a coordenada Y desejada (novamente de 0 a 31). Porm, caso a
coordenada Y ultrapasse a metade (de 32 a 63), necessrio um tratamento especial. Ao invs
de usar coordenadas X de 0 a 7, necessrio us-las de 8 a 15, e as coordenadas de Y ainda
sendo usadas de 0 a 31. Porm, o display entender o dado da seguinte forma: ao usar o
endereo X como 8, por exemplo, ser como utilizar o endereo 0 no caso anterior. E ao
utilizar um endereo Y de 0, ser como utilizar um endereo 32.

Tipos de memria
CGROM: Sigla de Character Generation ROM (ROM de Gerao de Caracteres). a regio de
memria do display que armazena 8192 caracteres de 16x16 pixels. Envia-se dois bytes
consecutivos para que um caractere seja carregado da memria e escrito na tela.
HCGROM: Sigla de Half-Width Character Generation ROM (ROM de Gerao de Caracteres de
meia largura). Tem a mesma funo que a CGROM, porm escreve caracteres de 8 x 16 pixels.
CGRAM: Regio de memria onde caracteres definidos pelo usurio podem ser gravados. No
uma memria permanente.
DDRAM: a regio de memria onde os bytes das memrias de caracteres so armazenados,
para que possam ser impressos na tela.
GDRAM: a regio de memria que precisa ser acessada caso haja a necessidade de alterar os
pixels em qualquer ponto na tela. Armazena os bytes e seus respectivos estados de acordo
com o estado atual dos pixels.
Contador de Endereos (AC)
Cada vez que se executa uma instruo em que um determinado endereo de uma
regio de memria selecionado, este endereo automaticamente copiado para um
registrador especial do display, o Contador de endereos (em ingls, Address Counter, AC).
Ou seja, cada vez que um dado enviado para o display, este copiado diretamente
para o endereo apontado pelo AC. Alguns comandos no display permitem fazer com que a
cada vez que um dado escrito no display, o AC incrementado ou decrementado. Isto til
para a escrita de caracteres de texto, pois assim preciso apenas estabelecer um endereo
inicial, sem precisar a cada caractere redefinir este parmetro.
Interface de Dados
A interface de dados pelo display pode ocorrer de duas formas: paralela ou serial. No
modo paralelo, a transmisso ocorre por um barramento de dados (4 ou 8 bits) pelos pinos
DB7-DB0. um modo mais simples para aplicaes que no tenham problemas quanto ao
nmero de pinos de E/S.
Na interface serial, o comando todo enviado apenas no pino E (Conhecido no modo
como CS).

Pinagem
O ST7920 possui 20 pinos que so utilizados para alimentao, controle e envio de
dados. A tabela abaixo apresenta a numerao de cada pino e sua respectiva funo.
Pino
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

Nome
GND
VCC
V0
R/S
R/W
E
DB0
DB1
DB2
DB3
DB4
DB5
DB6
DB7
PSB
NC
RST
VOUT
LED-A
LED-K

Descrio
Alimentao do display (terra).
Alimentao do display (tenso positiva).
Tenso de entrada para ajuste no contraste
Pino indicativo de envio de comando ou dados.
Pino indicativo de leitura ou escrita de dados no display.
Pino indicativo de confirmao do dado a ser enviado no barramento.
Bit 0 do barramento de dados
Bit 1 do barramento de dados
Bit 2 do barramento de dados
Bit 3 do barramento de dados
Bit 4 do barramento de dados
Bit 5 do barramento de dados
Bit 6 do barramento de dados
Bit 7 do barramento de dados
Seleo de comunicao paralela ou serial (0 serial, 1 paralelo).
No conectado (sem funcionalidade).
Reset do display, ativo em nvel 0.
Pino de base de tenso para alimentar o contraste (V0).
Anodo (positivo) do led de backlight
Catodo (negativo) do led de backlight.

Como visto na tabela, os pinos de DB0 a DB7 so utilizados para o envio de


informaes ao display no modo paralelo. Como so 8 bits de dados, a forma de comunicao
se d por meio de bytes.

Set de Instrues
O set de instrues do display o conjunto de comandos a serem enviados no
barramento de dados para que as informaes sejam impressas corretamente. As instrues
variam de tipo, havendo os comandos, que configuram parmetros e executam aes prestabelecidas no display, e as instrues de dados, que enviam informaes a serem
manipuladas pelo display, como por exemplo, o contedo de uma regio de memria para
modificar o estado de alguns pixels.
O display trabalha com dois sets de instruo: Bsico e Estendido. O primeiro se limita
a instrues que no se aprofundam nas funcionalidades do display, limitando-se apenas a
textos e outros comandos prontos. O segundo engloba instrues avanadas, como
manipulao de pixels.
A tabela abaixo ilustra cada instruo do set Bsico, o cdigo a ser enviado pelo
barramento de dados para sua execuo e sua descrio.
Instruo
Limpeza do Display

DB7
0

DB6
0

DB5
0

DB4
0

DB3
0

DB2
0

DB1
0

DB0
1

Retornar p/ Home

Modo de Entrada

I/D

Controle do display

Controle do Cursor

S/C

R/L

Set de Instrues

DL

RE

Endereo CGRAM

AC5

AC4

AC3

AC2

AC1

AC0

Endereo DDRAM

AC5

AC4

AC3

AC2

AC1

AC0

Leitura de Busy
Flag

BF

AC6

AC5

AC4

AC3

AC2

AC1

AC0

Escreve na
memria RAM

D7

D6

D5

D4

D3

D2

D1

D0

L da memria
RAM

D7

D6

D5

D4

D3

D2

D1

D0

Descrio
Apaga todos os pixels do display.
Retorna cursor (coordenada da
regio de memria) para home
(posio 0).
Seta posio do cursor (S) e
movimentao deste quando se
escreve ou l dados (para a
esquerda ou direita, I/D).
D = 1 - Display ligado
C = 1 - Cursor ligado
B = 1 - Pisca caractere
Posio do cursor e controle do
deslocamento.
DL = 1 Interface de dados de 8 bits
DL = 0 Interface de dados de 4 bits
RE = 1 Set bsico de instrues.
RE = 0 Set estendido de instrues.
Seleciona endereo atual da CGRAM
(posio na qual os caracteres de
texto sero impressos).
Seleciona endereo da DDRAM para
Address Counter (AC)
BF indica se display est ocupado
fazendo algum tipo de
processamento.
Escreve o contedo especificado no
barramento de dados (D7-D0) na
regio de memria especificada pelo
Address Counter (AC)
L o contedo da regio de memria
especificada pelo AC e exibe no
barramento de dados.

A Tabela abaixo exibe agora as instrues que fazem parte do set Estendido.
Instruo
Standby
Deslocamento ou
seleo de
endereo de RAM

DB7
0

DB6
0

DB5
0

DB4
0

DB3
0

DB2
0

DB1
0

DB0
1

SR

Reverter (por
linha)

R1

R0

Set Estendido de
Instrues

DL

RE

Seleciona
endereo de
deslocamento

AC5

AC4

AC3

AC2

AC1

AC0

SR = 1: AC5~AC0 endereo do
deslocamento vertical.

AC0

Seleciona endereo desejado da


GDRAM para o Address Counter
(AC).
necessrio enviar primeiro o
endereo vertical (AC5~AC0) e
depois o endereo horizontal
(AC3~AC0).

Seleciona
endereo de
preenchimento do
display grfico

0
AC5

0
AC4

AC3

AC2

AC1

Descrio
Entra em modo de espera.
SR = 1: habilita posio de
deslocamento vertical.
SR = 0: habilita endereo da CGRAM
Seleciona uma de 4 linhas (na
DDRAM) e inverte o contedo dos
pixels do display cada vez que essa
instruo enviada.
DL = 1: Interface de 8 bits.
DL = 0: Interface de 4 bits.
RE = 1: Set de instrues estendido.
RE = 0: Set de instrues bsico.
G = 1: Display ligado.
G = 0: Display desligado.

Vous aimerez peut-être aussi