Jjaja
Dependencies: mbed FXOS8700Q TextLCD
main.cpp
- Committer:
- thesad
- Date:
- 2020-06-11
- Revision:
- 0:421257dc3042
File content as of revision 0:421257dc3042:
#include "mbed.h" #include "C12832.h" DigitalOut L1(p8); DigitalOut L2(p9); DigitalOut L3(p10); AnalogIn pot(p15); C12832 lcd(SPI_MOSI, SPI_SCK, SPI_MISO, p8, p11); //Contadores para cada dígito int seg1=0; //Variable para contador de unidades de segundo int seg2=0; //Variable para contador de décimas de segundo int min1=0; //Variable para contador de unidades de minuto int min2=0; //Variable para contador de décimas de minuto int hor1=0; //Variable para contador de unidades de hora int hor2=0; //Variable para contador de décimas de hora void reloj(){//Subrutina para generar reloj de 6 segmentos lcd.locate(21,1);//Posicionamiento de las unidades de segundo lcd.printf("%i", seg1); lcd.locate(11,1);//Posicionamiento de las décimas de segundo lcd.printf("%i",seg2); lcd.locate(26,1);//Posicionamiento del doble punto lcd.printf(":"); lcd.locate(42,1);//Posicionamiento de las unidades de minuto lcd.printf("%i",min1); lcd.locate(32,1);//Posicionamiento de las décimas de minuto lcd.printf("%i",min2); lcd.locate(49,1);//Posicionamiento del punto doble lcd.printf(":"); lcd.locate(63,1);//Posicionamiento de las unidades de minuto lcd.printf("%i",hor1); lcd.locate(53,1);//Posicionamiento de las décimas de minuto lcd.printf("%i",hor2); } int main() { printf("Proyecto, equipo 3\n"); printf("Contraseña: 8569 \n"); float x; lcd.cls(); while(1){ x = 5*pot.read(); if(x<3.5){ lcd.cls(); //Limpia el LCD lcd.locate(15, 15); //Posiciona en columna 2, fila 0) lcd.printf("Tiempo de inactividad"); //Imprime en LCD "Reloj digital" lcd.copy_to_lcd(); reloj(); //Llama a subrutina seg1++; //Inician el primer contador de unidades de segundo wait(1); //Genera tiempo de un segundo if (seg1==10){ seg2++;//Contador décimas de segundo seg1=0; if (seg2==6){ min1++;//Contador unidades de minuto seg2=0; if (min1==10){ min2++;//Contador décimas de minuto min1=0; if(min2==6){ hor1++;//Contador unidades de hora min2=0; if(hor1==10){ hor2++;//Contador décimas de hora hor1=0; if((hor2==2)&&(hor1==4)){/*Cuando el contador llega a 24hrs, este se reinicia*/ hor2=0; hor1=0; } } } } } } } if(x>=3.5){ int valida = 8569; int clave; lcd.cls(); lcd.locate(1,1); lcd.printf( "Introduzca su clave: "); scanf("%i", &clave) ; wait(1); if(clave != valida) { lcd.locate(1,15); lcd.printf("No valida!"); lcd.copy_to_lcd(); L1 = 1; wait(0.3); L1 = 0; wait(0.3); L1 = 1; wait(0.3); L1 = 0; wait(0.3); L1 = 1; wait(0.3); L1 = 0; lcd.cls(); clave=0; } if (clave == valida){ lcd.locate(1,15); lcd.printf("Aceptada."); L2 = 1; L3 = 1; wait(0.3); L2 = 0; wait(0.3); L2 = 1; wait(0.3); L2 = 0; wait(0.3); L2 = 1; wait(0.3); L2 = 0; wait(15); L3 = 0; } if (clave == 0){ lcd.cls(); lcd.locate(1,1); lcd.printf( "No ha introducido ninguna clave"); } } } }