Está en la página 1de 2

#include <Keypad.

h>
const byte ROWS = 4; //CUATRO FILAS
const byte COLS = 3; //TRES COLUMNAS
char keys[ROWS][COLS] = {
{'1','2','3'},
{'4','5','6'},
{'7','8','9'},
{'*','0','#'},
};
byte rowPins[ROWS] = {4, 3, 2,1}; //conectarse a las patillas de salida de las f
ilas del teclado
byte colPins[COLS] = {8, 7, 6}; //conectarse a las patillas de conexin de columna
del teclado
Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );
byte ledPin = A1;
boolean blink = false;
boolean ledPin_state;
void setup(){
Serial.begin(9600);
pinMode(ledPin, OUTPUT); // Establece el pin digital como salid
a.
digitalWrite(ledPin, HIGH); // Gire el LED.
ledPin_state = digitalRead(ledPin); // Guarde estado LED inicial. ALTO cua
ndo el LED est encendido
keypad.addEventListener(keypadEvent); // Aadir un detector de eventos para es
te teclado
}
void loop(){
char key = keypad.getKey();
if (key) {
Serial.println(key);
}
if (blink){
digitalWrite(ledPin,!digitalRead(ledPin)); // Cambie el ledPin de Hi2
Lo o Lo2Hi.
delay(100);
}
}
// El cuidado de algunos eventos especiales.
void keypadEvent(KeypadEvent key){
switch (keypad.getState()){
case PRESSED:
if (key == '#') {
digitalWrite(ledPin,!digitalRead(ledPin));
ledPin_state = digitalRead(ledPin); // Recuerde estado del LE
D, encendido o apagado.
}
break;
case RELEASED:
if (key == '*') {
digitalWrite(ledPin,ledPin_state); // Restaurar el estado del LED
de antes de que empezara a parpadear.
blink = false;
}
break;
case HOLD:
if (key == '*') {
blink = true; // Blink el LED cuando se mantiene pulsada la tecla
*.
}
break;
}
}

También podría gustarte