17 de mar. de 2014

Projeto 26 - Teclado matricial 4x4 básico

Projeto 26 - Teclado matricial 4x4 básico

Olá pessoal, hoje vamos aprender como utilizar o teclado matricial 4x4 (4 colunas por 4 linhas. Com este teclado podemos ligar LED, motores entre outros, basta apenas configurar as funções para cada botão do teclado, simples e fácil. Então vamos lá galera! 

Os códigos serão todos comentados para melhor entendimento, podendo ser retirados após a compreensão de cada linha. Bom trabalho !!!


Componentes necessários

1 Arduino Uno R3
1 Protobord
1 Resistor de 220Ω
1 Teclado matricial 4x4
1 LED (Qualquer cor)
Fios jumpers

Conectando os componentes

Primeiro, certifique-se de que seu Arduino esteja desligado, desconectando-o do cabo USB. Agora, siga o modelo como mostra a figura abaixo.





Fazendo o download e importando a biblioteca do LCD Nokia 5110:

2) Faça o download do arquivo Keypad;
3) Descompacte o arquivo;
4) Agora entre no diretório (C:) e na pasta Arquivos de Programas, Arduino, libraries, copie o arquivo descompactado nesta pasta;
5) Pronto para utilizar;


Agora vamos ao código


// Projeto 26 - Teclado matricial 4x4 básico

#include <Keypad.h>  // Biblioteca para controle do teclado de matrizes.

const byte ROWS = 4;  // Quatro linhas por...
const byte COLS = 4; //  Quatro colunas.

// Define o Keypad (mapa do circuito do teclado).
char keys[ROWS][COLS] = {
  {'1','2','3','A'},
  {'4','5','6','B'},
  {'7','8','9','C'},
  {'*','0','#','D'}
};

// Conecta o teclado matricial em linha 0, linha 1, linha 2, linha 3 e linha 4 dos pinos do arduino.
byte rowPins[ROWS] = { 9, 8, 7, 6 };

// Conecta o teclado matricial em coluna 0, coluna 1, coluna 2, coluna 3 e coluna 4 do arduino.
byte colPins[COLS] = { 12, 11, 10, 5 };

// Cria um objto Keypad.
Keypad kpd = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );

#define ledpin 13  // Led conectado no pino 13 do arduino.

void setup()
{
  pinMode(ledpin,OUTPUT);  // Define o pino 13 como sendo de saída.
  digitalWrite(ledpin, HIGH);  // incializa com o led ligado.
  Serial.begin(9600);  // Inicia o Serial Monitor.
}

void loop()
{
  char key = kpd.getKey();
  if(key)  // Checa se um botão foi pressionado.
  {
    switch (key)
    {
      case '*':  // Se for pressionado...
        digitalWrite(ledpin, LOW);  // o led apaga.
        break;  // Parada, aguardando pressionar outro botão.
      case '#':  // Se for pressionado...
        digitalWrite(ledpin, HIGH);  // o led ascende.
        break;
        case 'A':
        digitalWrite(ledpin, HIGH);
        break;
        case 'B':
        digitalWrite(ledpin, LOW);
        break;
        case 'C':
        digitalWrite(ledpin, HIGH);
        break;
        case 'D':
        digitalWrite(ledpin, LOW);
        break;
        default:
        Serial.println(key);
    }
  }
}

  

Para confirmar se está tudo certo aperto o botão Verify/Upload. Se estiver correto você pode abrir o Serial Monitor em Tools, Serial Monitor ou selecionando simultaneamente os botões Ctrl+Shift+M, aperte os botões numéricos do teclado e este será impresso na tela, dá para utilizar como um “controle remoto”.


Tela do Serial Monitor









Vídeo do projeto pronto









- Se você gostou do post, por favor comente! Nos dê um feedback, isto nos incentiva a continuar! :)
- Inscreva-se na fan page !
- Curta nossa fan page !
- Baixe o APP Faça Com Arduino e carregue para onde você for os projetos. É simples. É fácil !!


Comentários
0 Comentários

0 comentários:

Postar um comentário