Usando um teclado 4x3 com Arduino

Usando um teclado 4x3 com Arduino

Neste tutorial, exploraremos como usar um teclado matricial 4x3 com um Arduino para ler os pressionamentos de tecla. Este teclado pode ser utilizado em vários projetos, como criar uma interface de entrada simples para um sistema de segurança ou qualquer aplicação que exija entrada do usuário. Ao final deste guia, você será capaz de ler os pressionamentos de tecla e responder a teclas específicas.

Certifique-se de assistir ao vídeo complementar para uma demonstração visual da fiação e da implementação do código (no vídeo em 00:00).

Hardware Explicado

Os principais componentes deste projeto incluem o teclado 4x3 e a placa Arduino. O teclado consiste em uma matriz de botões dispostos em 4 linhas e 3 colunas. Quando um botão é pressionado, ele conecta uma linha específica a uma coluna específica, permitindo que o Arduino identifique qual botão foi pressionado.

A placa Arduino atua como o controlador central que lê as entradas do teclado. Ela utiliza a biblioteca Keypad, que simplifica o processo de gerenciamento do teclado matricial e facilita a detecção de pressionamentos de tecla.

Detalhes da ficha técnica

FabricanteDiversos
Número da peçaTeclado matricial 4x3
Tensão lógica5 V
Corrente de operação≤ 20 mA
Vida útil da chave≥ 1,000,000 pressionamentos
PacoteTeclado Matricial

  • Conecte os pinos do teclado corretamente aos pinos digitais do Arduino.
  • Use resistores pull-up ou pull-down, se necessário, dependendo da sua configuração.
  • Certifique-se de que a biblioteca Keypad esteja incluída no IDE do Arduino.
  • Implemente o debounce dos pressionamentos de tecla no software para evitar leituras múltiplas.
  • Teste cada tecla para confirmar o cabeamento e o funcionamento adequados.

Instruções de fiação

Arduino_wiring_4x3_keypad

Para ligar o teclado 4x3 ao Arduino, você deve conectar os pinos das linhas e das colunas do teclado aos pinos digitais do Arduino. Conecte os pinos das linhas (normalmente 4 pinos) aos pinos2,3,4, e5no Arduino. Os pinos das colunas (normalmente 3 pinos) devem ser conectados aos pinos6,7, e8.

Certifique-se de conectar o pino de aterramento do teclado ao terra do Arduino e o pino de alimentação ao pino de 5V. Essa configuração permitirá que o Arduino leia o estado de cada tecla quando pressionada, usando a biblioteca Keypad para lidar com a varredura da matriz.

Exemplos de código e guia passo a passo

O código a seguir inicializa o teclado matricial e imprime a tecla pressionada no monitor serial. Os valores das teclas são armazenados em um array de caracteres.

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

OkeysO array define o layout do teclado, que corresponde à disposição física das teclas. Cada caractere representa um botão no teclado.

Em seguida, configuramos o teclado emsetup()função:

void setup(){
  Serial.begin(9600);
  Serial.println("Robojax 4x3 keypad");
}

Este segmento inicializa a comunicação serial a 9600 baud, permitindo que vejamos as teclas pressionadas no monitor serial.

Por fim, o loop verifica pressionamentos de teclas e responde de acordo:

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

Aqui, o programa verifica se alguma tecla está pressionada usandokeypad.getKey(). Se uma tecla for pressionada, imprime o valor da tecla. Além disso, se a tecla '4' for pressionada, uma mensagem específica é exibida.

Demonstração / O que esperar

Quando a configuração estiver completa, pressionar qualquer tecla no teclado deve enviar o caractere correspondente ao monitor serial. Se a tecla '4' for pressionada, uma mensagem especial será exibida indicando a ativação dessa tecla. Essa funcionalidade permite que você construa sobre essa base aplicações mais complexas.

Tenha cuidado com entradas flutuantes que podem levar a um comportamento errático. Certifique-se de que todas as conexões estejam seguras e teste cada tecla para confirmar o funcionamento adequado (no vídeo em 00:00).

Imagens

4x3_kaypad-1
4x3_kaypad-1
4x3_kaypad-2
4x3_kaypad-2
4x3_kaypad-3
4x3_kaypad-3
4x3_kaypad-4
4x3_kaypad-4
4x3_kaypad-5
4x3_kaypad-5
Arduino_wiring_4x3_keypad
Arduino_wiring_4x3_keypad
128-Ardunino code for 4x3 keypad
Idioma: C++
Copiado!

Coisas que você pode precisar

Recursos e referências

Ainda não há recursos.

Arquivos📁

Arquivo Fritzing

Outros arquivos