Descripción
Teclado matricial de 4 filas y 4 columnas para un total de 16 teclas. El teclado es tipo membrana, por lo que entre sus ventajas se encuentra el poco espacio que requiere para ser instalado. El teclado matricial 4×4 está constituido por una matriz de pulsadores dispuestos en filas (A,B,C,D) y columnas (1,2,3,4), con la intención de reducir el número de pines necesarios para su conexión. Las 16 teclas necesitan sólo 8 pines del microcontrolador, en lugar de los 16 pines que se requerirían para la conexión de 16 teclas independientes. Para poder leer que tecla ha sido pulsada se debe de utilizar una técnica de barrido y no solo leer un pin de microcontrolador. Muy fácil de utilizar con tu microcontrolador favorito como Arduino, Teensy etc Si utilizas un Arduino, con la ayuda de su librería podrás hacerlo funcionar en cuestión de segundos y dará a tu proyecto un toque profesional.
Documentación:
Código ejemplo:
/* Source || @file CustomKeypad.pde|| @version 1.0|| @author Alexander Brevig|| @contact alexanderbrevig@gmail.coms*/ /* ##### 4x4 Membrane Keypad Arduino Interfacing #####Arduino and Keypad ConnectionKeypad Pin Arduino Pin 1 => Digital Pin 2 2 => Digital Pin 3 3 => Digital Pin 4 4 => Digital Pin 5 5 => Digital Pin 6 6 => Digital Pin 7 7 => Digital Pin 8 8 => Digital Pin 9*/ #include <Keypad.h> const byte ROWS = 4; //four rows const byte COLS = 4; //four columns // Define the Keymap char hexaKeys[ROWS][COLS] = { {'1','2','3','A'}, {'4','5','6','B'}, {'7','8','9','C'}, {'*','0','#','D'} }; byte rowPins[ROWS] = {9, 8, 7, 6}; //connect to the Rows of the keypad pin 8, 7, 6, 5 respectively byte colPins[COLS] = {5, 4, 3, 2}; //connect to the Columns of the keypad pin 4, 3, 2, 1 respectively //initialize an instance of class NewKeypad Keypad customKeypad = Keypad( makeKeymap(hexaKeys), rowPins, colPins, ROWS, COLS); void setup(){ Serial.begin(9600); } void loop(){ char customKey = customKeypad.getKey(); if (customKey){ Serial.println(customKey); // Send the pressed key value to the arduino serial monitor } }
Valoraciones
No hay valoraciones aún.