deparamos com ecrãs LCD em toda a parte ao nosso redor. Computadores, calculadoras, televisores, telefones celulares, relógios digitais usam algum tipo de exibição para exibir o tempo.
um LCD é um módulo eletrônico que usa cristais líquidos para produzir uma imagem visível. O 16×2 LCD display é um módulo muito básico comumente usado em DIYs e circuitos. The 16×2 translates o a display 16 characters per line in 2 such lines. In this LCD each character is displayed in a 5×7 pixel matrix.
16X2 LCD pinout diagram
Pin No. |
Function |
Name |
1 |
Ground (0V) |
Ground |
2 |
Supply voltage; 5V (4.7V – 5.3V) |
Vcc |
3 |
Contrast adjustment; the best way is to use a variable resistor such as a potentiometer. The output of the potentiometer is connected to this pin. Rodar o manípulo do potenciómetro para a frente e para trás para ajustar o contraste LCD. |
Vo / VEE |
4 | Seleciona o comando registrar, quando baixa, e registro de dados quando a alta | RS (Registar-se Seleccione ) |
5 | Baixa para escrever para o registro; Alta a leitura do registo | Leitura/escrita |
6 | Envia dados para dados de pinos quando um alto para baixo do pulso é dada; A tensão extra é necessária para executar a instrução e o sinal EN(Activar) é usado para este fim. Normalmente, nós definimos en=0, quando queremos executar a instrução nós A Fazemos alta en=1 para alguns milisegundos. Depois disso, voltamos a torná-lo terreno que é, en=0. | Enable |
7 | 8-bit data pins | DB0 |
8 | DB1 | |
9 | DB2 | |
10 | DB3 | |
11 | DB4 | |
12 | DB5 | |
13 | DB6 | |
14 | DB7 | |
15 | luz de fundo VCC (5V) | Led+ |
16 | luz de fundo de Terra (0V) | Leds |
RS (Registar-se seleccione)
UM LCD 16X2 tem dois registradores, ou seja, de comando e de dados. O registro selecionado é usado para mudar de um registro para outro. RS=0 para o registo de comandos, enquanto RS = 1 para o registo de dados.
registo de comandos: o registo de comandos guarda as instruções de comandos dadas ao LCD. Um comando é uma instrução dada ao LCD para fazer uma tarefa predefinida. Exemplos como:
- inicializando-o
- limpando o seu ecrã
- configurando a posição do cursor
- controlando o ecrã, etc.
o processamento de comandos acontece no registo de comandos.
registo de dados: o registo de dados guarda os dados a serem exibidos no LCD. Os dados são o valor ASCII do caráter a ser exibido no LCD. Quando enviamos dados para LCD ele vai para o registro de dados e é processado lá. Quando RS=1, o registo de dados é selecionado.
Important command codes for LCD
Sr.No. | Hex Code | Command to LCD instruction Register |
1 | 01 | Clear display screen |
2 | 02 | Return home |
3 | 04 | Decrement cursor (shift cursor to left) |
4 | 06 | Increment cursor (shift cursor to right) |
5 | 05 | Shift display right |
6 | 07 | Shift display left |
7 | 08 | Display off, cursor off |
8 | 0A | Display off, cursor on |
9 | 0C | Display on, cursor off |
10 | 0E | Display on, cursor blinking |
11 | 0F | Display on, cursor blinking |
12 | 10 | Shift cursor position to left |
13 | 14 | Shift cursor position to right |
14 | 18 | Shift the entire display to the left |
15 | 1C | Shift the entire display to the right |
16 | 80 | Force cursor to beginning ( 1st line) |
17 | C0 | Force cursor to beginning ( 2nd line) |
18 | 38 | 2 lines and 5×7 matriz |
exibindo caracteres personalizados em 16X2 LCD
gerar caracteres personalizados em LCD não é muito difícil. Ele requer o conhecimento sobre a memória de acesso aleatório gerado customizado (CG-RAM) de LCD e o controlador de chip LCD. A maioria dos LCDs contém Hitachi HD4478 controlador.
CG-RAM é o componente principal na criação de caracteres personalizados. Ele armazena os caracteres personalizados uma vez declarados no código. O tamanho do CG-RAM é de 64 bytes, proporcionando a opção de criar oito caracteres de cada vez. Cada personagem tem oito bytes de tamanho.
CG-RAM endereço começa a partir de 0x40 (Hexadecimal) ou 64 em decimal. Podemos gerar caracteres personalizados nestes endereços. Assim que gerarmos os nossos caracteres nestes endereços, podemos imprimi-los apenas enviando comandos para o LCD. Os endereços de caracteres e os comandos de impressão estão em baixo.
na tabela acima poderá ver os endereços iniciais para cada carácter com os seus comandos de impressão.
o primeiro carácter é gerado no endereço 0x40 a 0x47 e é impresso em LCD apenas enviando um comando 0.
o segundo carácter é gerado no endereço 0x48 a 0x55 e é impresso através do envio de um comando 1.
como gerar caracteres personalizados em CG-RAM
em ecrãs LCD, cada carácter está numa matriz de 5×8. Em que 5 são o número de colunas e 8 são o número de linhas.
Aqui está um exemplo simples de como criar letra ‘b’ em CG-RAM.
a matriz para gerar ‘ b ‘ é char B = {0x10, 0x10,0x16,0x19,0x11,0x11, 0x1E}; Isto é,
- envie o endereço onde deseja criar um carácter.
- Agora crie o seu carácter neste endereço. Enviar os valores da matriz de caracteres ” b ” acima definidos, um a um, para o registo de dados do LCD.
- para imprimir o carácter gerado em 0x40. Enviar o comando 0 para o registo de comandos do LCD. A tabela abaixo de explicar de forma mais clara
a Interface de um LCD 16X2 com o Arduino
módulos de LCD de forma muito importante em muitos Arduino embarcado baseado em projetos de sistemas para melhorar a interface do usuário do sistema. A interface com Arduino dá ao programador mais liberdade para personalizar o código facilmente. Qualquer placa de Arduino, um display LCD 16X2, fios jumper e uma placa de pão são suficientes para construir o circuito. A interface de Arduino para LCD abaixo.
código fonte para 16X2LCD e Arduino.
exibe o brilho LED em um 16×2 LCD
a combinação de um LCD e Arduino produz vários projetos, sendo o mais simples LCD para exibir o brilho LED. Tudo o que precisamos para este circuito é um LCD, Arduino, pão, resistor, potenciômetro, LED e alguns cabos de bateria. As ligações do circuito estão abaixo.
O projecto detalhado está disponível em exibir o brilho de um LED a um ecrã LCD
Este artigo foi publicado pela primeira vez em 21 de novembro de 2016 e foi recentemente atualizado em 31 de julho de 2020.