Escolar Documentos
Profissional Documentos
Cultura Documentos
acionamento e desenvolvimento de
funções para criação de bibliotecas.
Profº: Hovacker
São Paulo, 2019
DISPLAYS
• LCD Alfanumérico;
• LCD Gráfico;
• Os mais comuns são os 16X02 (16 colunas por 2 linhas). Mas também
existem muitos projetos com 08x02 (oito colunas por duas linhas), 16X01 (16
colunas por 1 linha), 16X04 (16 colunas por 4 linhas), 20X01 (20 colunas por
1 linha), 20X02 (20 colunas por 2 linhas) e 20X04 (20 colunas por 4 linhas).
• 08x02
• 16x01
• 16x02
• 20x01
• 20x02
• 20x04
Pino 2 (Vdd) é o positivo, pode ser ligado juntamente com o Vdd do PIC.
Pino 4 (RS) é o Seletor de Registros. Resumindo, quando este pino está em nível lógico baixo (0),
os dados enviados para o LCD são tratados como comandos. Quando este pino está em nível
lógico alto (1), os dados são tratados como caracteres.
Pino 5 (R/W) determina se os dados serão lidos ou escritos. Leitura (1) ou escrita (0).
Pino 6 (Enable) é a linha de habilitação para os comandos do LCD. É utilizado para iniciar a
transferência de comandos ou caracteres.
ATENÇÃO: Quando estiver enviando algo para o display, os dados só serão transmitidos a partir
de uma transição de high para low deste sinal!!!
delay_us(500);
Para que ele fique operacional, precisamos inicializá-lo, passando diversas informações de
configuração.
1 1 0
0x38
1 0 0
0C
06H
• Endereçamento:
• Desenvolvimento do código:
/*********************************************
Código de testes para display LCD
/*********************************************/
#include<16F628A.h>
#fuses XT, NOWDT, NOLVP
#use delay(clock = 4000000)
#use fast_io(b) //modo manual, porém mais rápido e eficaz... É necessário setar o tris.
/*********************************************
VARIÁVEIS E DEFINES
/*********************************************/
#define rs pin_a0 //Caractere/comando.
#define enable pin_a1 //Pulso de habilitação.
#define limpaLCD 0x01 //”Limpa” a tela.
#define Linha_2 0xC0 //Endereço da linha 2.
#define Linha_1 0x80 //Endereço da linha 1.
/*************************************
PROTÓTIPOS DE FUNÇÕES
*************************************/
void inicia_lcd(void);
void LCD_texto(char letra);
void LCD_comando(int comando);
Montando Bibliotecas:
• Criar um novo arquivo com as funções específicas do LCD e salvar com a extensão .c
(c source files).
Porém, este arquivo deve ser adicionado na pasta other files.
LCD: LM016L
Teste as configurações
de Linhas (1 ou 2)
Escreva:
Curso PIC - CTA
Display LCD
Apague e escreva:
SeuNome
SobreNome
Objetivo: Compreender e fixar o conhecimento sobre display LCD (8 bits) e criação de bibliotecas.
• Ao ligar o sistema, surge a mensagem “iniciando sistema” por 3 segundos, logo após, “selecione sua bebida”.
• Ao clicar no botão select, surge um menu com o nome do primeiro produto “Coca-Cola”, a cada novo pressionamento
surgem os nomes dos novos produtos, “Guaraná”, “Pepsi” e “Fanta”. Caso ocorra um novo pressionamento os produtos
voltam a se repetir.
• Quando o cliente selecionar o produto desejado, este pode pressionar o botão OK e a mensagem “Efetue o
pagamento” é exibida, até que o botão pg seja acionado, alterando a mensagem para “Retire seu produto “, que é
exibida por 4 segundos até o sistema retornar automaticamente para o menu principal (“selecione sua bebida”).
• Um último botão é inserido no projeto, botão CANCELA, caso esteja no menu de seleção de bebidas ou de pagamento,
(APENAS nestes dois menus), se o cancela for pressionado, a mensagem “operação cancelada” surge no display por 3
segundos antes do sistema retornar ao menu principal.
Contato: ricardohovacker@hotmail.com