📄 shizhong.lst
字号:
C51 COMPILER V7.00 SHIZHONG 07/21/2005 07:34:16 PAGE 1
C51 COMPILER V7.00, COMPILATION OF MODULE SHIZHONG
OBJECT MODULE PLACED IN shizhong.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE shizhong.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 #include<reg52.h>
2 #define uchar unsigned char
3 #define uint unsigned int
4 uchar code table[]=" 2008-08-20 MON";
5 uchar code table1[]=" 10-10-10";
6 uchar code table2[]=" LIU TIAN WEI";
7
8 uchar ci,miao=10 ,fen=10 ,shi=10,jianci ,gao,di,zen,jian;
9 sbit RS=P2^0;
10 sbit RW=P2^1;
11 sbit E=P2^2;
12 sbit AA=P2^6;
13 sbit BB=P2^7;
14 sbit CC=P3^0;
15 void delay(uint x) /*延时函数*/
16 {
17 1 uint i,j;
18 1 for(i=x;i>0;i--)
19 1 for(j=110;j>0;j--);
20 1 }
21 void write_cod(uchar cod) /*写指令函数*/
22 {
23 1 E=0;
24 1 RS=0;
25 1 RW=0;
26 1 P0=cod;
27 1 delay(5);
28 1 E=1;
29 1 delay(5);
30 1 E=0;
31 1
32 1 }
33 void write_date(uchar date) /*写数据函数*/
34 {
35 1 E=0;
36 1 RS=1;
37 1 RW=0;
38 1 P0=date;
39 1 delay(5);
40 1 E=1;
41 1 delay(5);
42 1 E=0;
43 1
44 1 }
45 void init() /*初始化函数*/
46 {
47 1 uchar num;
48 1 write_cod(0x38); /*液晶工作状态定义*/
49 1 write_cod(0x0c);
50 1 write_cod(0x06);
51 1 write_cod(0x01);
52 1 write_cod(0x80+0x16); /*第一行*/
53 1 for(num=0;num<14;num++)
54 1 {
55 2 write_date(table2[num]);
C51 COMPILER V7.00 SHIZHONG 07/21/2005 07:34:16 PAGE 2
56 2 delay(5);
57 2 }
58 1 write_cod(0x80+0x56); /*第二行*/
59 1
60 1 for(num=0;num<20;num++)
61 1 {
62 2 write_cod(0x1c);
63 2 delay(100);
64 2 }
65 1 delay(1000);
66 1 write_cod(0x01);
67 1 write_cod(0x06);
68 1 write_cod(0x80);
69 1 for(num=0;num<15;num++)
70 1 {
71 2 write_date(table[num]);
72 2 delay(80);
73 2 }
74 1 write_cod(0x80+0x40);
75 1 for(num=0;num<12;num++)
76 1 {
77 2 write_date(table1[num]);
78 2 delay(80);
79 2 }
80 1 TMOD=0x01;
81 1 TH0=(65536-50000)/256;
82 1 TL0=(65536-50000)%256;
83 1 EA=1;
84 1 ET0=1;
85 1 TR0=1;
86 1 }
87 void xianshi(uchar add,uchar shu)
88 {
89 1 gao=shu/10;
90 1 di=shu%10;
91 1 write_cod(0x80+0x40+add);
92 1 write_date(0x30+gao);
93 1 write_date(0x30+di);
94 1 }
95 zenjian(uchar xx)
96 {
97 1 zen=xx;
98 1 if(BB==0)
99 1 delay(15);
100 1 if(BB==0)
101 1 {
102 2 while(!BB);
103 2 zen++;
104 2 if(zen==60)
105 2 zen=0;
106 2 //miao=zen;
107 2
108 2 }
109 1 if(CC==0)
110 1 delay(15);
111 1 if(CC==0)
112 1 {
113 2 while(!CC);
114 2 zen--;
115 2 if(zen==0)
116 2 zen=59;
117 2 //miao=zen;
C51 COMPILER V7.00 SHIZHONG 07/21/2005 07:34:16 PAGE 3
118 2
119 2 }
120 1
121 1 return zen;
122 1 }
123 void key()
124 {
125 1 if(AA==0)
126 1 delay(15);
127 1 if(AA==0)
128 1 { while(!AA);
129 2 TR0=0;
130 2 jianci++;
131 2 }
132 1 if(jianci==1)
133 1 {
134 2
135 2 write_cod(0x80+0x40+9);
136 2 write_cod(0x0e);
137 2 miao=zenjian( miao);
138 2 xianshi(9,miao);
139 2
140 2
141 2
142 2
143 2 }
144 1 if(jianci==2)
145 1 {
146 2 write_cod(0x80+0x40+6);
147 2 write_cod(0x0e);
148 2 fen=zenjian(fen);
149 2
150 2 xianshi(6,fen);
151 2
152 2 }
153 1 if(jianci==3)
154 1 {
155 2 write_cod(0x80+0x40+3);
156 2 write_cod(0x0e);
157 2 shi=zenjian(shi);
158 2 xianshi(3,shi);
159 2
160 2 }
161 1 if(jianci==4)
162 1 {
163 2 jianci=0;
164 2 //write_cod(0x80+0x40+7);
165 2 write_cod(0x0c);
166 2 TR0=1;
167 2 }
168 1
169 1 }
170
171 void main()
172 {
173 1 init();
174 1 while(1)
175 1 {
176 2 key();
177 2 if(ci==20)
178 2 {
179 3 ci=0;
C51 COMPILER V7.00 SHIZHONG 07/21/2005 07:34:16 PAGE 4
180 3 miao++;
181 3 if(miao==60)
182 3 {
183 4 miao=0;
184 4 fen++;
185 4 if(fen==60)
186 4 {
187 5 fen=0;
188 5 shi++;
189 5 if(shi==24)
190 5 shi=0;
191 5 xianshi(3,shi);
192 5
193 5 }
194 4 xianshi(6,fen);
195 4 }
196 3 xianshi(9,miao);
197 3 }
198 2
199 2 }
200 1
201 1 }
202 void timer0() interrupt 1
203 {
204 1 EA=0;
205 1 ET0=0;
206 1 TR0=0;
207 1 ci++;
208 1 TH0=(65536-50000)/256;
209 1 TL0=(65536-50000)%256;
210 1 EA=1;
211 1 ET0=1;
212 1 TR0=1;
213 1
214 1
215 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 511 ----
CONSTANT SIZE = 43 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 9 ----
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -