INCLUIR LIBRERÍAS QUE CONTROLAN TODOS LOS DISPOSITIVOS ANEXADOS A LA PLACA ARDUINO
Enviado por Rimma • 24 de Diciembre de 2018 • 1.996 Palabras (8 Páginas) • 289 Visitas
...
RTC.adjust(DateTime(__DATE__, __TIME__));
// Al ejecutar esta línea de código el reloj RTC se ajusta a la hora de la computador cuando se compila el código
}
}
LOOP EN INGLÉS SIGNIFICA LAZO O BUCLE. LA FUNCIÓN LOOP EN ARDUINO ES LA QUE SE EJECUTA UN NÚMERO INFINITO DE VECES. AL ENCENDERSE EL ARDUINO SE EJECUTA EL CÓDIGO DEL SETUP Y LUEGO SE ENTRA AL LOOP, EL CUAL SE REPITE DE FORMA INDEFINIDA HASTA QUE SE APAGUE O SE REINICIE EL MICRO CONTROLADOR.
void loop () {
Scanner.write((byte)0x55);
Scanner.write((byte)0xAA);
Scanner.write((byte)0x01);
Scanner.write((byte)0x00);
Scanner.write((byte)0x01);
Scanner.write((byte)0x00);
Scanner.write((byte)0x00);
Scanner.write((byte)0x00);
Scanner.write((byte)0x01);
Scanner.write((byte)0x00);
Scanner.write((byte)0x02);
Scanner.write((byte)0x01);
delay(100);
// El scanner del módulo biométrico inicia en el loop o secuencia repetitiva, aquí escanea 12 direccione hexadecimales para la captura de datos de la huella.
if (Scanner.available() > 0 )
{
for (f = 0; f 38; f++)
// En esta condición for el valor f declarado se compara con los 38 bytes de la cadena en buffer de datos del scanner.
{
ResponseData[f] = Scanner.read(),HEX;
// Si existe una respuesta de datos almacenados en el valor F y se compara con la lectura de escáner de las 12 direcciones hexadecimales se cumple la condición.
}
}
Lcd.print("FirmwareVersion: ");
//se imprime en pantalla la versión del firmware.
for (f = 16; f 20; f++)
En esta condición for el valor f se le da 16 bits y se compara con el valor en f si es menor a 20 y se asigna un incremento de 1 para lograr el ciclo, si se cumple continua el ciclo for.
{
lcd.print(ResponseData[f],HEX);
Si existe una respuesta de datos almacenados en el valor F y se compara con la lectura de escáner de las 12 direcciones hexadecimales se cumple la condición.
}
Lcd.println();
// salto de línea
Lcd.print("DeviceSerialNumber: ");
// se imprime el nombre del serial del dispositivo
for (f = 20; f 36; f++)
En esta condición for el valor f se le da 20 bits y se compara con el valor en f si es menor a 36 y se asigna un incremento de 1 para lograr el ciclo, si se cumple continua el ciclo for.
{
Lcd.print(ResponseData[f],HEX);
Si existe una respuesta de datos almacenados en el valor F y se compara con la lectura de escáner de las 12 direcciones hexadecimales se cumple la condición.
}
while(1){}
// Mientras se espera que el valor sea igualado a 1 para continuar con la secuencia con esta condición podremos validar si el scanner biométrico está disponible
}
z = 0;
// El valor de la pantalla LCD es asignado en la coordenada z = 0.
y = 0;
// El valor de la pantalla LCD es asignado en la coordenada x = 0.
menu();
// Aquí es donde llamamos la función inicial la cual contiene el menú principal.
delay(1000);
// Hacemos una espera de 1 segundo antes de continuar con el proceso de ciclos o loops.
tecla = customKeypad.getKey();
// la tecla asignada en el menú(); es 1 si se presiona en este retraso se activara un menú dentro de las funciones de los empleados();
delay(1000);
// se asigna un retraso de 1 segundo para la espera de la tecla
if (tecla)
// La condición espera la tecla presionada.
{
switch (tecla)
// Toma de decisión múltiple en este proyecto se asigna un solo caso para la toma de asistencia la tecla asignada es el 0.
{
case '0':
// Caso uno el valor establecido es 0.
lcd.clear();
// Limpiar pantalla.
lcd.setCursor (0, 0);
// Se setea el cursor en la posición carácter 0 fila 0.
lcd.print(" TOMAR ");
// Se imprime el texto en carácter 0 fila 0.
lcd.setCursor (0, 1);
// Se setea el cursor en la posición carácter 0 fila 1.
lcd.print(" ASISTENCIA");
...