/*This software is provided in “AS IS” condition,NO WARRANTIES in any form apply to this software. picmicrolab.com *************************************************************************************************************** Digital Clock with 1602 LCD Shield Board for Arduino SELECT - 3.0855 V - Adj Hours LEFT - 1.9778 V - Adj Minutes DOWN - 1.2446 V UP - 0.4918 V RIGHT - 0 V */ // include the library code: #include // initialize the library by associating any needed LCD interface pin // with the arduino pin number it is connected to const int rs = 8, en = 9, d4 = 4, d5 = 5, d6 = 6, d7 = 7; LiquidCrystal lcd(rs, en, d4, d5, d6, d7); //----Time Var---------- int TimeHours10s = 0; int TimeHours1s = 0; int TimeMinutes10s = 0; int TimeMinutes1s = 0; int TimeSeconds10s = 0; int TimeSeconds1s = 0; //---------------------- //----Alarm Var--------- int AlarmHours10s = 0; int AlarmHours1s = 0; int AlarmMinutes10s = 0; int AlarmMinutes1s = 0; int AlarmSeconds10s = 0; int AlarmSeconds1s = 0; //---------------------- void setup() { // set up the LCD's number of columns and rows: lcd.begin(16, 2); } void loop() { CalculateTime(); ShowTime(); //ShowAlarm(); delay(1000); //-------------------------------------Adj Time Value-------------- while(analogRead(A0)* 4.88 < 4500) { CalculateTime(); ShowTime(); if(analogRead(A0)* 4.88 > 1700 && analogRead(A0)* 4.88 < 2100) { TimeMinutes1s++; delay(500); CalculateTime(); } if(analogRead(A0)* 4.88 > 2800 && analogRead(A0)* 4.88 < 3200) { TimeHours1s++; delay(500); CalculateTime(); } } } void ShowTime() { //-------------------------------------------- // Turn on the display lcd.display(); lcd.setCursor(0, 0); // top left lcd.print("Time ");// if(TimeHours10s == 0) lcd.print(" ");// else lcd.print(TimeHours10s);// lcd.print(TimeHours1s);// lcd.print(":");// lcd.print(TimeMinutes10s);// lcd.print(TimeMinutes1s);// lcd.print(":");// lcd.print(TimeSeconds10s);// lcd.print(TimeSeconds1s);// lcd.setCursor(0, 0); // top left } void CalculateTime() { TimeSeconds1s++; if(TimeSeconds1s == 10) { TimeSeconds1s = 0; TimeSeconds10s++; } if(TimeSeconds10s == 6) { TimeSeconds10s = 0; TimeSeconds1s = 0; TimeMinutes1s++; } if(TimeMinutes1s == 10) { TimeMinutes1s = 0; TimeSeconds10s = 0; TimeSeconds1s = 0; TimeMinutes10s++; } if(TimeMinutes10s == 6) { TimeMinutes10s = 0; TimeMinutes1s = 0; TimeSeconds10s = 0; TimeSeconds1s = 0; TimeHours1s++; } if(TimeHours1s == 10) { TimeHours1s=0; TimeMinutes10s = 0; TimeMinutes1s = 0; TimeSeconds10s = 0; TimeSeconds1s = 0; TimeHours10s++; } if(TimeHours10s == 2 && TimeHours1s == 4) { TimeHours10s=0; TimeHours1s=0; TimeMinutes10s = 0; TimeMinutes1s = 0; TimeSeconds10s = 0; TimeSeconds1s = 0; } }