Olá pessoal. Depois de muito tempo sem criar um novo tutorial, aqui estou eu novamente trazendo algo que possa ser útil para vocês! O objetivo de hoje é conectar um teclado 3×4 ao arduino e utilizar um display LCD 16×2 para mostrar as informações digitadas no teclado. Qual a utilidade disso?
– Você pode por exemplo criar um sistema de alarme utilizando senhas.
– Controlar outros dispositivos como lâmpadas e motores digitando informações nesse teclado.
– Não terá necessidade de usar a comunicação serial através da IDE Serial Monitor do Arduino.
– Adaptar a outros teclados com mais teclas criando assim outros dispositivos, como por exemplo uma calculadora.
Bem vamos ao que interessa:
Primeiro precisamos de um teclado 3×4:
Note que esse teclado já possui alguma configuração básica que você irá precisar. Tendo isso em mãos, precisamos agora de um display LCD 16×2:
Precisamos ainda de um Arduino, 4 resistores de 10k para o teclado, 1 resistor de 1k para o display, uma protoboard e alguns fios para conexão.
Com isso em mãos já é possivel montar a parte de hardware. Agora passamos para a programação: Primeiro voce precisará da biblioteca Keypad.h que pode ser baixada AQUI.
Após ter feito o download da biblioteca inclua ele na pasta libraries do Arduino e procure informações sobre como usa-la. Essas informações podem ser encontradas AQUI.
As informações contidas no site são bastante úteis para quem quer usar esta biblioteca, lá você encontrara trechos de códigos para a implementação.
ATENÇÃO: Ficarei devendo a montagem no Fritzing, assim que sobrar um tempos a mais disponibilizarei no blog.
Mas caso não queira esperar você pode encontrar informações referentes AQUI. ou AQUI.
Código:
/* # Autor: Fernando Krein Pinheiro # Data: 03/10/2012 # Linguagem: C # ========= IMPORTANTE =========== # O codigo esta livre para usar, # citar e compartilhar desde que # mantida sua fonte e seu autor. # Obrigado. */ #include <Keypad.h> #include <LiquidCrystal.h> const byte Coluna = 3; const byte Linha = 4; int i=0; char Teclas[Linha][Coluna] = {{'1','2','3'},{'4','5','6'},{'7','8','9'},{'*','0','#'}}; byte Pino_linha[Linha] = {6, 12, 13, 9}; byte Pino_coluna[Coluna] = {8, 7, 10}; LiquidCrystal lcd(1, 11, 5, 4, 3, 2); Keypad keypad = Keypad(makeKeymap(Teclas), Pino_linha, Pino_coluna, Linha, Coluna ); void setup() { lcd.begin(16, 2); } void loop() { char teclaPressionada = keypad.getKey(); if (teclaPressionada != NO_KEY) { lcd.setCursor(i, 0); lcd.print(teclaPressionada); i++; } }
Grande código hein?!!! rsrsrsrsrsr.
Um vídeo de demonstração:
onde ta a montagem???????
Brother, falta a montagem..
Cara, como eu faria para mostrar a palavra do endereço dos caracteres em vez de mostrar o “1” por exemplo???
SHow!!!
pode explicar as linhas 20 e 21?
seria possível vc,postar a montagem do projeto. Teclado 3×4 e LCD 16×2 com Arduino