Arduino - iniciação à linguagem C: LCD 1602
-
Upload
ana-carneirinho -
Category
Education
-
view
1.414 -
download
1
Transcript of Arduino - iniciação à linguagem C: LCD 1602
Programação
Eletrónica+Espaço
Circuitos com LCD(Introdução à Linguagem
C)
O LCD 1602In
terfa
ce 1
6 pi
nos –
com
patív
el c
om
o dr
iver
Hita
chi H
D447
80
O LCD 1602
https://www.openhacks.com/uploadsproductos/eone-1602a1.pdf
O LCD 1602Montagem básica
O LCD 1602M
onta
gem
bás
ica –
circu
ito
esqu
emát
ico
A livraria LiquidCrystal
SyntaxLiquidCrystal(RS, RW, enable, d0, d1, d2, d3, d4, d5, d6, d7)
LiquidCrystal()Cria uma variável do tipo LiquidCrystal que permite controlar o display usando 4 ou 8 pinos do arduino. Caso se usem só 4 pinos, basta que sejam o omitidos os restantes pinos (d0 a d3).O pino RW pode ser ligado à terra (GND) e, nesse caso, pode omitir-se o respetivo parâmetro na função LiquidCrystal.Sintax Descrição No circuito
proposto…
RS Pino do arduino ligado ao Register Select (pino 4) do display 12
RW Pino do arduino ligado ao Read/Write (pino 5) do display Ignorar (GND)
enable Pino do arduino ligado ao Enable (pino 6) do display 11
d0 a d3 Dados recebidos do arduino (caso se usem 8 pinos de dados) Ignorar (opcionais)
d4 a d7 Dados recebidos do arduino (pinos 11, 12, 13, 14 do display) 2, 3, 4, 5
A livraria LiquidCrystalFunções associadas
Função Descrição Sintaxe
begin() Inicializa a interface com o LCD e especifica as dimensões do display.Tem de ser chamada antes de qualquer outro comando associado à livraria LiquidCrystal.
lcd.begin(col, rows)
Parâmetros:lcd: uma variável do tipo LiquidCrystal;Cols: o número de colunas que o LCD tem;Rows: o número de linhas que o LDC tem.
A livraria LiquidCrystalFunções associadas
Função Descrição Sintaxe
print() Imprime texto no LDC lcd.print(data)lcd.print(data, BASE)
Parâmetros:lcd: uma variável do tipo LiquidCrystal;data: os dados a imprimir (char, byte, int, long, string);BASE (opcional): a base em que os números devem ser apresentados: BIN para binários (base 2), DEC para decimal (base 10), OCT para octal (base 8), HEX para hexadecimal (base 16).Retorna: byte
Vamos Experimentar…
Observa…Como em cada linha só cabem 16 caracteres, não foi possível apresentar a mensagem toda…
Como usar a 2º linha do LCD?
A livraria LiquidCrystal
Funções associadas
Função Descrição Sintaxe
cursor() Mostra o cursor do LCD através de uma linha underscore na posição onde o próximo caractere será inserido
lcd.cursor()
noCursor() Esconde o cursor do LCD lcd.noCursor()
setCursor() Determina a posição do cursor do LCD a partir da qual os caracteres serão apresentados
lcd.setCursor(col, row)
Parâmetros:lcd: uma variável do tipo LiquidCrystal;col: coluna onde será posicionado o cursor (sendo 0 a primeira coluna);row: linha onde será posicionado o cursor (sendo 0 a primeira linha).
Vamos Experimentar…
Agora Tenta
Ler no cursor o valor de uma entrada analógica (ligada a uma resistência variável, por exemplo)
Uma Solução Possível...(Circuito)
Um
a So
luçã
o Po
ssív
el...
(Pro
gram
a)
Agora Tenta
Fazer um ohmímetro.
Sugestão1: Estuda um pouco o circuito divisor de tensão…
Sugestão2: Talvez precises da função clear()…
A livraria LiquidCrystal
Funções associadas
Função Descrição Sintaxe
clear() Limpa o ecrã do LCD e Posiciona o cursor no canto superior esquerdo
lcd.clear()
Parâmetros:lcd: uma variável do tipo LiquidCrystal.
Uma Solução Possível...(Circuito)
Um
a So
luçã
o Po
ssív
el...
(Pro
gram
a)
Conversão do valor analógico em A0 (0-1023) para tensão (0-5V)
Cálculo do valor de R a partir do valor da tensão em A0 e do valor da segunda resistência do divisor de tensão