Está en la página 1de 4

Nombre:

Cristian Mañay

Curso:
Cuarto “A”

Sección:
Nocturna

Ingeniero:
Michael Carrión

Materia:
Microcontroladores

Tema:
Ensayo teclado matricial
Introducción:

Un teclado es una matriz d teclas organizadas en filas y columnas suelen ser de 4x4

Desarrollo:

Un teclado matricial es un simple arreglo de botones conectados en filas y columnas, de


modo que se pueden leer varios botones con el mínimo número de pines requeridos. Un
teclado matricial 4×4 solamente ocupa 4 líneas de un puerto para las filas y otras 4 líneas
para las columnas, de este modo se pueden leer 16 teclas utilizando solamente 8 líneas
de un microcontrolador. Si asumimos que todas las columnas y filas inicialmente están
en alto (1 lógico),la pulsación de un botón se puede detectar al poner cada fila a en bajo
(0 lógico) y checar cada columna en busca de un cero, si ninguna columna está en bajo
entonces el 0 de las filas se recorre hacia la siguiente y así secuencialmente.
Un modo simple de detectar la tecla presionada es incrementar una variable con la cuenta
de las teclas revisadas, de este modo al detectar una pulsación el valor de la cuenta será
el valor de la tecla presionada. Si al final no se presionó ninguna tecla la variable se pone
a cero y la cuenta vuelve a comenzar.
Esquema de conexión. -
El esquema de conexión es sencillo. Simplemente conectamos todos los pines a entradas
digitales de Arduino. Por ejemplo, en el ejemplo de un teclado de 4×4 el esquema
quedaría de la siguiente forma.

Existen varias librerías diseñaras para facilitar la lectura de teclados matriciales en


Arduino. Por ejemplo, la librería Keypad, disponible en este enlace. La librería
proporciona ejemplos de código, que resulta aconsejable revisar.
El siguiente ejemplo es una modificación a partir de los disponibles en la librería.

#include <Keypad.h>

const byte rowsCount = 4;


const byte columsCount = 4;

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

const byte rowPins[rowsCount] = { 11, 10, 9, 8 };


const byte columnPins[columsCount] = { 7, 6, 5, 4 };
Keypad keypad = Keypad(makeKeymap(keys), rowPins, columnPins, rowsCount,
columsCount);
void setup() {
Serial.begin(9600);
}
void loop() {
char key = keypad.getKey();
if (key) {
Serial.println(key);
}}
Conclusiones:
Con el tema tomado podemos conocer el uso del teclado 4x4 y su respectiva conexión con
un Arduino uno y respectivo código.
Lo implementamos para que muestro en un lcd 16x2.

Bibliografía:
https://pygmalion.tech/tutoriales/arduino-innobot/tutorial-innobot-arduino-teclado-
matricial/

También podría gustarte