Saltar al contenido
Control Automático Educación

Teclado Matricial

Hola controleros y controleras en el día de hoy vamos a aprender a usar el Teclado Matricial con ARDUINO, y veremos cómo podremos emplear lo aprendido en cualquier tipo de teclado, por ejemplo un teclado matricial 4×4 o un teclado matricial 4×3.

Antes de comenzar, te hago la invitación para que veas nuestro CURSO GRATIS DE ARDUINO.

Teclado Matricial Arduino

El teclado matricial es un dispositivo bastante común en proyectos con sistemas microcontrolados como el Arduino y está conformado básicamente por un arreglo de pulsadores distribuidos en forma de matriz, que puede ser leído utilizando pocos pines del Arduino, utilizando el concepto de la multiplexación (el mismo que vimos en la entrada del Display 7 Segmentos con Arduino).

En el mercado podemos encontrar Teclados matriciales de diferentes tamaños, como el teclado matricial 4×4, 3×3, 4×3, entre otros. Estos teclados pueden tener una estructura de membrana o una estructura rigida.

Teclados Matriciales de Membrana
Teclados Matriciales de Membrana

Incorporar Teclados Matriciales a nuestros proyectos con Arduino es bastnate interesante debido a que puede ser empleado en proyectos que requieran la inserción de datos por parte del usuario, como por ejemplo hacer una calculadora con arduino y teclado matricial, pedir una contraseña con arduino, mover un servo con teclado matricial, usar teclas de dirección para un robot, cnc, solicitar parámetros numéricos para nuestros proyectos, solicitar información específica, entre otros.

Funcionamiento del Teclado Matricial Arduino

Por la configuración en matriz que presentan los pulsadores dentro de un teclado matricial, se puede establecer cual botón dentro del arreglo está siendo presionado de la siguiente forma:

Teclado telefonico pic 16f887
10. Manejo de Teclado Telefónico

Vamos primero a suponer que tenemos un arreglo Matricial 4×3 (el funcionamiento es el mismo para otro tipo de teclado). Donde internamente la distribución de los botones es así:

Teclado Matricial 4x3

Para programar el Teclado o Keypad en Arduino o en cualquier otro microcontrolador, basta con seguir en orden la siguiente secuencia:

  1. Inicialmente conectamos el teclado matricial en los PINES DIGITALES del ARDUINO. Para eso será importante poder identificar cuales son las columnas y las filas del teclado.
  2. Las Filas del Teclado estarán conectadas en PINES DIGITALES configurados como SALIDAS.
  3. Las Columnas del Teclado estarán conectadas en PINES DIGITALES configurados como ENTRADAS y con el PULLUP activado (por lo tanto, estas entradas siempre estarán recibiendo un 1 lógico, si ningún botón es presionado).
  4. Configuramos TODAS las SALIDAS (Filas) en 1 lógico o 5v, es decir vamos a dejarlas encendidas.
  5. Aplicamos el concepto de la MULTIPLEXACIÓN: Aquí vamos a mandar un 0 lógico por cada fila y vamos a leer todas las columnas, si se detecta que alguna columna recibió el cero lógico, indica que el botón que comparte la fila y la columna fue presionado, en caso contrario vuelvo a colocar la fila en 1 lógico y verifico la siguiente fila.

En la siguiente animación podemos ver como se establece el presionado de un botón sobre el keypad. Notarás más adelante, que cuando se programa el teclado sin librería, basicamente usamos el teclado matricial con for (ciclo) para poder preguntar por las columnas del teclado.

Teclado Matricial Animado

Librería Keypad de Arduino

Una forma rápida de usar un Teclado con Arduino, es valernos de su librería Keypad, bastante sencilla de entender, para el caso de un teclado matricial 4×4 tenemos:

TECLADO MATRICIAL 4X4
  1. Incluimos la librería en nuestro proyecto:
  • Establecemos 2 constantes que determinan el número de filas y columnas del teclado matricial
  • Establecemos el Arreglo que nos dará los caracteres de cada uno de los botones del teclado matricial.
  • Creamos dos vectores donde colocaremos los Pines del Arduino asociados a las Filas y Columnas del teclado matricial:
  • Creamos el objeto de la instancia Keypad con las variables creadas en el paso 2 y 3

NOTA: No es necesario configurar los pines conectados al teclado usando el pinMode, porque ya la propia librería del Keypad lo hace internamente.

Para leer cual tecla fue presionada usamos la siguiente instrucción:

Ejemplo del Teclado Matricial Arduino

Es hora de comenzar a realizar proyectos de teclado matricial con Arduino, y una vez finalices este proyecto estarás en la capacidad por ejemplo de crear otro proyecto usando un menu con teclado matricial y Arduino.

Vamos a ver como utilizar este periferico con Arduino, de dos formas, una será programando el Arduino y la otra será utilizando la librería Keypad

Vamos a ingresar valores con el teclado matricial y Arduino para visualizar las teclas presionadas por el puerto Serial, usando el siguiente circuito:

Teclado Arduino

>> DESCARGAR COMPILADOS Y ARCHIVO PROTEUS 8 <<

Librería

Sin Librería

Eso es todo por la entrada del dia de hoy, espero les haya gustado y hayan aprendido algo nuevo. Si te ha servido el contenido de esta entrada, de los videos y los códigos de implementación y deseas apoyar mi trabajo invitandome a un café super barato, puedes hacerlo en el siguiente link:

👉 Invitar a Sergio a un Café ☕️

Que esten muy bien, nos vemos en la siguiente entrada.