1 #include <REGX51.
H>
2 #include <stdio.H>
3
4 extern void INIT_LCD(void);
5 extern void LCD_PUT_CMD(char CMD);
6 extern void LCD_PUT_CHAR(char X);
7 void LCD_PUTS (char *ST);
8 void LCD_SELECT(unsigned char LINE, unsigned char COL);
9 void DELAY_ms(int T);
10 //void TimeOf( int IN);
11
12 char LINE2[17] ="TIME: 0 ";
13 unsigned long int SECs = 0;
14 void main (void)
15 {
16 char x;
17 INIT_LCD();
18 LCD_SELECT(1,0);
19 LCD_PUTS("Hello Class :-)");
20
21 while(1)
22 {
23 LCD_SELECT(2,0);
24 LCD_PUTS(LINE2);
25 DELAY_ms(1000);
26 x = sprintf(LINE2+6,"%ld",++SECs);
27 x+=6;
28 while (x<15)
29 {
30 LINE2[x]=' ';
31 x++;
32 }
33 }
34 }
35 //void TimeOf( int IN)
36 //{
37 // unsigned char j=15,k=0;
38 // while (IN)
39 // {
40 // LINE2[j++]=(IN%10)+0x030;
41 // IN/=10;
42 // }
43 // k=j-1;
44 // while(j)
45 // {
46 // LINE2[k+j]=LINE2[j-k];
47 // j--;
48 // }
49 //}
50
51 void LCD_PUTS (char *ST)
52 {
53 while (*ST)LCD_PUT_CHAR (*ST++);
54 }
55
56 void LCD_SELECT(unsigned char LINE, unsigned char COL)
57 {
58 char CMND;
59 if (LINE==1)CMND=0x080+COL;
60 else CMND=0x0C0+COL;
61 LCD_PUT_CMD(CMND);
62 }
63 void DELAY_ms(int T)
64 {
65 int i;
66 while(T--)
67 {
68 for(i=0;i<70;i++);
69 }
70 }
71