Teclado alfanumérico com microcontrolador 8051(89c51,89c52)
Roberto Magalhães
Este tutorial ensina como um teclado alfanumérico pode ser projetado com microcontrolador 89c51, LCD 16×2 e teclado 4×4? O principal ponto crucial do projeto está no código do projeto. O teclado 4×4 é apenas um conjunto de botões, organizados em ordens de Coulomb e de linha. Para usar seus botões temos que escrever uma rotina de software para cada botão do teclado em nosso código principal. Já os botões executavam o que foram programados por nós no código. Portanto, podemos obter qualquer função dos botões. Normalmente nós as mapeamos como as teclas do teclado impressas no teclado físico. Neste tutorial mapearemos o teclado com vários números e caracteres. Um único botão pode inserir vários números ou caracteres mapeados para ele.
O layout do teclado alfanumérico que vou programar está abaixo. Nas primeiras 2 linhas, cada botão recebe 3 caracteres e 1 número. Os botões da próxima linha são mapeados para caracteres especiais e cada botão pode inserir 3 alfabetos. A última linha é atribuída com operadores matemáticos e até 2 operadores matemáticos podem ser inseridos por 1 botão.
Teclado alfanumérico com layout de teclas do microcontrolador
Requisitos de hardware do teclado alfanumérico
Teclado 4×4
LCD 16×2
Um 80s51 0r 89c51
Oscilador para fornecer a frequência de clock necessária ao microcontrolador.
Um potenciômetro/resistor variável para definir o contraste do LCD 16×2.
Diagrama de circuito do teclado alfanumérico
O teclado 4 × 4 está conectado à Porta 1 do microcontrolador 8051 (89c51,89c52). O lcd 16×2 está conectado à porta 2 do microcontrolador 89c51. Os pinos de controle do controlador LCD 16 × 2 são conectados à porta 3 do microcontrolador 8051. Todas as outras conexões são conexões de alimentação para o microcontrolador 8051. Aplique 5 volts nos pinos 31 e 40 do microcontrolador 8051. Insira o cristal de 11,0592 MHz entre os pinos 18 e 19 do controlador 8051 em paralelo a dois capacitores de 33 PF. Conecte seu circuito de reinicialização ao pino nº 9 de 89c51.
Diagrama de circuito do teclado alfanumérico 8051
Código do teclado alfanumérico 8051
Em primeiro lugar, nunca se esqueça de incluir o #incluir arquivo de cabeçalho em cada projeto 8051 porque este é o arquivo que contém todo o código de vinculação e depuração necessário para o compilador keil. A seguir algumas funções e suas definições com princípio de funcionamento.
teclado vazio Identificação de botões pressionados.
vazio cmd (caractere c) Enviando comandos para o lcd.
atraso vazio (int num) Função de atraso necessária.
void lcdinit Inicializando o LCD e seu chipset de driver.
void lcddata(char c) Enviando dados para lcd.
A declaração porta de dados sfr=0xA0 está acessando a porta 2 de 8051 com seu sfr. Em seguida, os pinos de Coulomb e de linha são definidos na Porta-1 de 89c51. Os pinos 16 × 2 lcd rw e en (para saber mais sobre rw e en clique no link) são definidos na porta 3, pinos números 5 e 6. Em seguida vem minha função principal que começa primeiro com o lcdinit função. Isto inicializa o lcd 16×2 e seu conjunto de chips de driver. Dez estou imprimindo a string “POR FAVOR, INSIRA SEU NOME ”No meu LCD depois de algum tempo esta mensagem desaparece e você pode inserir seu nome usando o teclado 4×4.
Baixe os arquivos e o código do projeto (C++, HEX). O código é escrito em linguagem C++ e keil u-vision4 é usado para compilar o código e gerar código Hex. Por favor, dê-nos o seu feedback sobre o projeto. Se você tiver alguma dúvida, escreva-a abaixo.