
Contador digital de 24 horas mediante display LCD 16x2
main.cpp
- Committer:
- Zarandaja
- Date:
- 2014-09-09
- Revision:
- 0:34d51311d7e7
File content as of revision 0:34d51311d7e7:
//Reloj Digital #include "mbed.h" #include "TextLCD.h" //Librería para control de display LCD TextLCD lcd(p15, p16, p17, p18, p19, p20); /* Asignación de pines para rs, e, d4, d5. d6,d7*/ //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(11,1);//Posicionamiento de las unidades de segundo lcd.printf("%i", seg1); lcd.locate(10,1);//Posicionamiento de las décimas de segundo lcd.printf("%i",seg2); lcd.locate(9,1);//Posicionamiento del doble punto lcd.printf(":"); lcd.locate(8,1);//Posicionamiento de las unidades de minuto lcd.printf("%i",min1); lcd.locate(7,1);//Posicionamiento de las décimas de minuto lcd.printf("%i",min2); lcd.locate(6,1);//Posicionamiento del punto doble lcd.printf(":"); lcd.locate(5,1);//Posicionamiento de las unidades de minuto lcd.printf("%i",hor1); lcd.locate(4,1);//Posicionamiento de las décimas de minuto lcd.printf("%i",hor2); } int main() { lcd.cls(); //Limpia el LCD lcd.locate(2, 0); //Posiciona en columna 2, fila 0) lcd.printf("Reloj digital"); //Imprime en LCD "Reloj digital" while (1){ 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; } } } } } } } }