Sunteți pe pagina 1din 4

Un array está constituido por un número de valores a los que se accede con un número de índice

En el primer caso se declara una variable de tipo array, es de tipo array por tener los paréntesis
cuadrados, ese es el indicador principal de que tenemos un array, como podemos ver dentro de
los paréntesis le vamos a dar el tamaño de almacenamiento que puede tener, entonces va a ser
una variable que tiene seris posiciones donde nosotros podemos guardar la información.

El índice se puede mover a través de toda la longitud del array, en el segundo caso podemos ver
como llenamos la información dentro del array, se hace de esa manera.

Y después con ese método donde se usa el índice podemos leer los valores donde queramos.

#include <Keypad.h> // importa libreria Keypad

const byte FILAS = 4; // define numero de filas

const byte COLUMNAS = 4; // define numero de columnas

char keys[FILAS][COLUMNAS] = { // define la distribucion de teclas

{'1','2','3','A'},
{'4','5','6','B'},

{'7','8','9','C'},

{'*','0','#','D'}

};

byte pinesFilas[FILAS] = {9,8,7,6}; // pines correspondientes a las filas

byte pinesColumnas[COLUMNAS] = {5,4,3,2}; // pines correspondientes a las columnas

Keypad teclado = Keypad(makeKeymap(keys), pinesFilas, pinesColumnas, FILAS,


COLUMNAS); // crea objeto

char TECLA; // almacena la tecla presionada

char CLAVE[7]; // almacena en un array 6 digitos ingresados

char CLAVE_MAESTRA[7] = "123456"; // almacena en un array la contraseña maestra

byte INDICE = 0; // indice del array

void setup()
{

Serial.begin(9600); // inicializa comunicacion serie

void loop(){

TECLA = teclado.getKey(); // obtiene tecla presionada y asigna a variable

if (TECLA) // comprueba que se haya presionado una tecla

CLAVE[INDICE] = TECLA; // almacena en array la tecla presionada

INDICE++; // incrementa indice en uno

Serial.print(TECLA); // envia a monitor serial la tecla presionada

if(INDICE == 6) // si ya se almacenaron los 6 digitos

if(!strcmp(CLAVE, CLAVE_MAESTRA)) // compara clave ingresada con clave maestra

Serial.println(" Correcta"); // imprime en monitor serial que es correcta la clave


else

Serial.println(" Incorrecta"); // imprime en monitor serial que es incorrecta la clave

INDICE = 0;

}
Ahora no además de almacenar una tecla también vamos a almacenar una cantidad de
posiciones lo cual nos va a permitir hacer una comparación con la clave maestra.
Básicamente los que se hace es que se guarda la contraseña que nosotros queramos, el
primer if no se activa hasta que metas una cantidad de números que no sea 6, por lo que
primero tenemos que meter esta información de contraseña.
Después que ya tienes seis dígitos los va a comparar, si son iguales va a imprimir que la
contraseña es correcta y si no, no se va a poder

S-ar putea să vă placă și