Teclado "chiclete" no Arduino

Toda vez que eu tenho que ligar aquele teclado clássico do Arduino (esse aí da foto abaixo) eu apanho da prá achar como conectar, procurando net afora.


Eu tenho a impressão que isso pode variar, mas esse teclado aí da foto é assim:

- O pino 8 é o mais próximo da tecla # e, claro, o pino 1 fica mais perto do 0.

Conectei-o assim:

Arduino        Teclado
----------------------
5                   8
6                   7
7                   6
8                   5
9                   4
10                 3
11                 2
12                 1

Abaixo, o "pograminha" correspondente. Se prá vc as teclas aparecerem diferentes, altere a tabela de teclas no programa.


#include "Keypad.h"

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

byte rowPins[ROWS] = {5, 6, 7, 8};
byte colPins[COLS] = {9, 10, 11, 12}; 

Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );

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

void loop(){
  char key = keypad.getKey();

  if (key){
    Serial.println(key);
  }
}


É isso.

Comentários

Postagens mais visitadas deste blog

Controle PID de Potência em Corrente Alternada - Arduino e TRIAC - Parte III

Dividindo um programa (sketch) do Arduino em mais de um arquivo

Controle PID de Potência em Corrente Alternada - Arduino e TRIAC - Parte I