Como usar o Soft Keypad 4x4 com Arduino

Como usar o Soft Keypad 4x4 com Arduino

Neste tutorial, exploraremos como conectar e usar um teclado 4x4 macio com um Arduino. Este teclado possui 16 teclas, mas requer apenas 8 pinos para conexão, tornando-o um dispositivo de entrada compacto e eficiente para vários projetos. Ao final deste guia, você será capaz de ler as entradas do teclado e acionar ações com base nessas entradas.

4x4 soft keypdad

Nós vamos utilizar oKeypadBiblioteca para interagir com o keypad, permitindo-nos detectar facilmente qual tecla é pressionada. O programa que vamos implementar exibirá a tecla pressionada no monitor serial e executará uma ação quando uma tecla específica for pressionada, como a tecla '4'. Para uma orientação mais visual, não deixe de conferir o vídeo em (no vídeo em 00:00).

Hardware Explicado

O componente principal deste projeto é o teclado 4x4 do tipo soft, que consiste em 16 botões dispostos em uma grade. Cada botão conecta-se a um pino específico do Arduino, permitindo que ele detecte quando um botão é pressionado. O teclado opera usando um método de varredura matricial, no qual as linhas e colunas são ativadas em sequência para determinar qual tecla foi pressionada.

Para conectar o teclado, você precisará usar oito pinos digitais no Arduino. As linhas normalmente são conectadas aos pinos 2 a 5, enquanto as colunas se conectam aos pinos 6 a 9. Essa disposição permite que o Arduino leia de forma eficaz o estado de cada tecla.

Detalhes da ficha técnica

largura69 mm
Comprimento76mm
Comprimento do cabo84 mm
Largura do conector20mm
Espaçamento entre furos do conector2,56 mm

  • Assegure a fiação correta dos pinos de linha e coluna para evitar leituras incorretas.
  • Use resistores pull-up, se necessário, para estabilizar as leituras de entrada.
  • Implemente debounce nas teclas no software para evitar múltiplas leituras de um único pressionamento.
  • Teste cada tecla individualmente para garantir a funcionalidade.
  • Mantenha o teclado seco e limpo para preservar o desempenho.

Instruções de fiação

Arduino wiring for 4x4 soft keypad
Arduino wiring for 4x4 soft keypad

Para ligar o teclado matricial 4x4 ao Arduino, conecte os pinos das linhas do teclado aos pinos digitais do Arduino da seguinte forma: conecte a primeira linha ao pino2, a segunda linha para prender3, a terceira fila para prender4, e a quarta linha para prender5. Para os pinos das colunas, conecte a primeira coluna ao pino6, a segunda coluna para fixar7, a terceira coluna para fixar8, e a quarta coluna para fixar9.

Esta configuração permite que o Arduino percorra as linhas e colunas de forma eficiente. Certifique-se de conferir as conexões para garantir que cada pino corresponda corretamente à linha ou coluna a que foi designado. No vídeo, configurações alternativas de fiação são brevemente discutidas (no vídeo em 01:15). Se optar por fazer a fiação de forma diferente, basta atualizar os números dos pinos no código conforme necessário.

Exemplos de Código e Guia Passo a Passo

No código, começamos por incluir oKeypadbiblioteca e definindo a disposição do teclado. As linhas e colunas são configuradas usando arrays, onderowPinsmapeia para os pinos digitais conectados às linhas ecolPinsmapeia para as colunas.

const byte ROWS = 4; //four rows
const byte COLS = 4; //four columns
char keys[ROWS][COLS] = {
  {'1','2','3','A'},
  {'4','5','6','B'},
  {'7','8','9','C'},
  {'*','0','#','D'}
};

Neste trecho, definimos o número de linhas e colunas, bem como o layout de caracteres das teclas. Essa configuração é crucial para identificar qual tecla foi pressionada com base na linha e na coluna ativadas.

void setup(){
  Serial.begin(9600);
}

OsetupA função inicializa a comunicação serial a 9600 baud. Isso é importante para enviar os dados de teclas pressionadas ao monitor serial para depuração e verificação.

void loop(){
  char key = keypad.getKey();
  if (key){
    Serial.println(key);
  } 
  if (key =='4'){
    Serial.println("Key 4 is pressed");
  }
}

Noloopfunção, verificamos continuamente se uma tecla foi pressionada usandokeypad.getKey(). Se uma tecla for pressionada, ela imprime o valor da tecla no monitor serial. Além disso, se a tecla '4' for pressionada, imprime uma mensagem específica indicando que a tecla '4' foi ativada. Esta seção do código permite interação em tempo real com base na entrada do usuário.

Demonstração / O que esperar

Uma vez que tudo esteja configurado e o código enviado para o seu Arduino, você deverá ver as teclas pressionadas exibidas no Serial Monitor. Se você pressionar a tecla '4', a mensagem "A tecla 4 está pressionada" aparecerá, confirmando que a entrada foi detectada com sucesso. Tenha cuidado com armadilhas comuns, como entradas flutuantes ou fiação incorreta, que podem levar a leituras errôneas (no vídeo em 02:30).

Marcas de Tempo do Vídeo

  • 00:00- Introdução ao teclado
  • 01:15- Instruções de fiação
  • 02:30- Explicação e demonstração do código

Imagens

4x4 soft keypdad back view
4x4 soft keypdad back view
4x4 soft keypdad
4x4 soft keypdad
4x4 soft keypdad connector
4x4 soft keypdad connector
4x4 soft keypdad
4x4 soft keypdad
Arduino wiring for 4x4 soft keypad
Arduino wiring for 4x4 soft keypad
41-Resources for this code
Idioma: C++
Copiado!

Coisas que você pode precisar

Recursos e referências

Ainda não há recursos.

Arquivos📁

Bibliotecas do Arduino (zip)