martes, 3 de septiembre de 2019

Arduino con teclado 4 × 4 y LCD I2C-tutorial


Arduino  con teclado 4 × 4 y LCD I2C-tutorial 

 https://roboticaytecnologia.com/inicio/robotica-y-programacion-nuevo-metodo-de-tecnologias/

Contenido

    Introducción
    Preparativos
        Software
    Acerca del teclado de matriz 4 × 4


        ¿Qué es el teclado?
        Caracteristicas
        Presupuesto
        Cómo funciona
        Dispare el botón presionado en el monitor serie
        USANDO UNA LCD CON EL TECLADO
        UTILICE UNA CONTRASEÑA PARA ACTIVAR UN RELÉ
Introducción

Los teclados son una excelente manera de permitir que los usuarios interactúen con su proyecto. Puede usarlos para navegar por los menús, ingresar contraseñas y controlar juegos y robots.

En este tutorial, le mostraré cómo configurar un teclado en el Arduino. Primero explicaré cómo el Arduino detecta las pulsaciones de teclas, luego le mostraré cómo encontrar el pinout de cualquier teclado. Como ejemplo simple, le mostraré cómo imprimir las pulsaciones de teclas en el monitor en serie y en una pantalla LCD. Finalmente, le mostraré cómo activar un relé de 5V cuando una contraseña se ingresa correctamente.
Hardware

    Placa Osoyoo UNO (Totalmente compatible con Arduino UNO rev.3) x 1
    Teclado Matrix 4 × 4 x 1
    I2C 1602 Pantalla LCD x 1
    Relé x 1
    Puentes
    Cable USB x 1
    PC x 1

Acerca del teclado de matriz 4 × 4
Un teclado es un conjunto de botones dispuestos en un bloque o "teclado" que llevan dígitos, símbolos o letras alfabéticas. Las almohadillas que contienen principalmente números se denominan teclado numérico.

El teclado de matriz 4 x 4 generalmente se usa como entrada en un proyecto. Tiene 16 teclas en total, lo que significa los mismos valores de entrada. Es ultrafino, fácil de interactuar con cualquier microcontrolador y tiene un respaldo adhesivo para un fácil montaje para una variedad de aplicaciones.
Caracteristicas

    Diseño ultrafino
    Respaldo adhesivo
    Excelente relación precio / rendimiento
    Interfaz fácil a cualquier microcontrolador.

Presupuesto

    Clasificación máxima: 24 V CC, 30 mA
    Interfaz: acceso de 8 pines a matriz 4 × 4
    Temperatura de funcionamiento: 32 a 122 ° F (0 a 50 ° C)
    Dimensiones: teclado, 2.7 x 3.0 in (6.9 x 7.6 cm) Cable: 0.78 x 3.5 in (2.0 x 8.8 cm)

Cómo funciona

Los teclados de matriz usan una combinación de cuatro filas y cuatro columnas para proporcionar estados de botón al dispositivo host, generalmente un microcontrolador. Debajo de cada tecla hay un botón pulsador, con un extremo conectado a una fila y el otro extremo conectado a una columna.
Para que el microcontrolador determine qué botón se presiona, primero necesita tirar de cada una de las cuatro columnas (pines 1-4), ya sea baja o alta, una a la vez, y luego sondear los estados de las cuatro filas (pines 5- 8) Dependiendo de los estados de las columnas, el microcontrolador puede decir qué botón se presiona.

Por ejemplo, supongamos que su programa tira las cuatro columnas hacia abajo y luego tira la segunda fila hacia arriba. Luego lee los estados de entrada de cada columna y lee el pin 3 alto. Esto significa que se ha hecho un contacto entre la columna 2 y la fila 2, por lo que se ha presionado el botón "5".

Aplicaciones del teclado de matriz 4 × 4:

    Sistema de seguridad de puerta protegido por contraseña.
    Robot con control remoto con cable.
    Máquina de votación electrónica.
    Generando interrupción externa.
    Teclado musical y muchos más.
   

Ejemplo
Dispare el botón presionado en el monitor serie

En este proyecto, veremos cómo integrar un teclado con una placa arduino para que el arduino pueda leer las teclas presionadas por un usuario. Al final, cuando todo está conectado correctamente y programado, cuando se presiona una tecla, aparece en el Monitor de serie de su computadora. Cada vez que presiona una tecla, aparece en el Monitor de serie.

Programa de código

Después de completar las operaciones anteriores, conecte la placa Arduino a su computadora con el cableUSB. El LED de alimentación verde (con la etiqueta PWR) debería encenderse. Abra el IDE de Arduino y elija el tipo de placa y el tipo de puerto correspondientes para su proyecto.

Aquí puede ver visualmente todas las conexiones que se escribieron anteriormente. Ahora que tenemos la configuración física, todo lo que necesitamos ahora es el código. Antes de poder ejecutar esto, debe importar la biblioteca de Teclado y luego, una vez que la importe, puede ingresarla en su programa. Una vez que se ingresa en su programa, debería ver la línea #include. Si no ve esto, significa que la biblioteca del teclado no se ha incluido correctamente en su código y no funcionará.

Esta biblioteca está disponible a través del administrador de la biblioteca Arduino IDE. Si está utilizando un IDE moderno (1.6.2 o superior), simplemente puede usar el menú:
Boceto-> Incluir biblioteca-> Administrar bibliotecas ... Luego busque Teclado.

#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <Keypad.h>

const byte ROWS = 4;
const byte COLS = 4;

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};
byte colPins[COLS] = {5, 4, 3, 2};

Keypad customKeypad = Keypad(makeKeymap(hexaKeys), rowPins, colPins, ROWS, COLS);

LiquidCrystal_I2C lcd(0x27, 16, 2); 

void setup(){
  lcd.backlight();
  lcd.init();
}

void loop(){
  char customKey = customKeypad.getKey();
  if (customKey){
    lcd.clear();
    lcd.setCursor(0, 0);
    lcd.print(customKey);
  }
}