.. note::
Hola, ¡bienvenido a la Comunidad de Entusiastas de SunFounder Raspberry Pi, Arduino y ESP32 en Facebook! Sumérgete en el mundo de Raspberry Pi, Arduino y ESP32 junto a otros entusiastas.
**¿Por qué unirte?**
- **Soporte experto**: Resuelve problemas postventa y desafíos técnicos con la ayuda de nuestra comunidad y equipo.
- **Aprende y comparte**: Intercambia consejos y tutoriales para mejorar tus habilidades.
- **Avances exclusivos**: Obtén acceso anticipado a nuevos anuncios de productos y adelantos.
- **Descuentos especiales**: Disfruta de descuentos exclusivos en nuestros productos más recientes.
- **Promociones festivas y sorteos**: Participa en sorteos y promociones especiales de temporada.
👉 ¿Listo para explorar y crear con nosotros? Haz clic en [|link_sf_facebook|] y únete hoy mismo.
.. _ar_keypad:
2.19 Teclado
==============
Resumen
----------
En esta lección, aprenderás a usar el teclado. Este puede aplicarse en varios
dispositivos, como teléfonos móviles, faxes, hornos microondas y otros.
Es comúnmente usado para la entrada de datos del usuario.
Componentes necesarios
------------------------
.. image:: img/Part_two_19.png
* :ref:`cpn_mega2560`
* :ref:`cpn_wires`
* :ref:`cpn_keypad`
Circuito Fritzing
--------------------
En este ejemplo, extendemos los pines 1~8 del teclado para conectarlos a los pines digitales 2~9.
.. image:: img/image176.png
Diagrama esquemático
----------------------
.. image:: img/image177.png
:align: center
Código
---------
.. note::
* Puedes abrir el archivo ``2.19_keypad.ino`` en la ruta ``sunfounder_vincent_kit_for_arduino\code\2.19_keypad`` directamente.
* Se utiliza la biblioteca ``Keypad`` aquí; puedes instalarla desde el **Gestor de Bibliotecas**.
.. image:: img/lib_keypad.png
:align: center
.. raw:: html
Después de cargar el código en la placa Mega2560, puedes ver en el monitor
serie el valor de la tecla que se presiona en el teclado.
Análisis del código
----------------------
Al incluir la biblioteca Keypad.h, puedes utilizar el teclado fácilmente.
.. code-block:: arduino
#include
**Funciones de la Biblioteca:**
.. code-block:: arduino
Keypad(char *userKeymap, byte *row, byte *col, byte numRows, byte numCols)
Inicializa el mapa interno de teclas igual al mapa de usuario (userKeymap).
* ``userKeymap``: Los símbolos en los botones del teclado.
* ``row, col``: Configuración de pines.
* ``numRows, numCols``: Tamaño del teclado.
.. code-block:: arduino
char getKey()
Devuelve la tecla que está siendo presionada, si hay alguna. Esta función no bloquea el programa.
Imagen del fenómeno
-----------------------
.. image:: img/image178.jpeg
:align: center