📄 kicontm.lst
字号:
C51 COMPILER V8.08 KICONTM 04/28/2009 16:23:02 PAGE 1
C51 COMPILER V8.08, COMPILATION OF MODULE KICONTM
OBJECT MODULE PLACED IN kicontm.OBJ
COMPILER INVOKED BY: D:\Program Files\KEIL\C51\BIN\C51.EXE kicontm.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include <reg52.h>
2 #define uchar unsigned char
3 #define uint unsigned int
4
5 sbit P10=P1^0;
6 sbit P11=P1^1;
7 sbit P12=P1^2;
8 sbit P13=P1^3;
9
10 void init();
11 void key_contorl();
12 void convert();
13 void display();
14 void delay(uint z);
15
16 uchar temp,t0,shi,shi,fen,miao,shi1,shi2,fen1,fen2,miao1,miao2;
17 /*
18 uchar code table[]=
19 {
20 0xc0,0xf9,0xa4,
21 0xb0,0x99,0x92,
22 0x82,0xf8,0x80,0x90 //共阳数码管显示的0~9
23 };
24 */
25 uchar code table[]=
26 {
27 0x3f,0x06,0x5b,
28 0x4f,0x66,0x6d,
29 0x7d,0x07,0x7f,0x6f
30 };
31
32 void main()
33 {
34 1 init();
35 1 // delay(50);
36 1 while(1)
37 1 {
38 2 convert();
39 2 display();
40 2
41 2 }
42 1 }
43
44 void key_contorl()
45 {
46 1 if(P12==0) //调节秒钟
47 1 {
48 2 miao++;
49 2 if(miao==60)
50 2 {miao=0;}
51 2 delay(350);
52 2 }
53 1 if(P11==0) //调分钟
54 1 {
55 2 fen++;
C51 COMPILER V8.08 KICONTM 04/28/2009 16:23:02 PAGE 2
56 2 if(fen==60)
57 2 {fen=0;}
58 2 delay(350);
59 2 }
60 1 if(P10==0) //调小时
61 1 {
62 2 shi++;
63 2 if(shi==24)
64 2 {shi=0;}
65 2 delay(350);
66 2 }
67 1 if(P13==0) //特殊时间看会不会正常进位
68 1 {
69 2 shi=23;
70 2 fen=59;
71 2 miao=50;
72 2 }
73 1 }
74 void init()
75 {
76 1
77 1 TMOD=0x11;
78 1 TH0=(65536-50000)/256;
79 1 TL0=(65536-50000)%256;
80 1 EA=1;
81 1 ET0=1;
82 1 TR0=1;
83 1
84 1 }
85 void convert()
86 {
87 1 shi2=shi/10;
88 1 shi1=shi%10;
89 1 fen2=fen/10;
90 1 fen1=fen%10;
91 1 miao2=miao/10;
92 1 miao1=miao%10;
93 1
94 1 }
95
96 void display()
97 {
98 1 P3=0xfe; //显示小时
99 1 P0=table[shi2];
100 1 delay(1);
101 1 P3=0xfd;
102 1 P0=table[shi1];
103 1 delay(1);
104 1
105 1 P3=0xfb; //显示一杠“——”
106 1 P0=0x40;
107 1 delay(1);
108 1
109 1 P3=0xf7; //显示分钟
110 1 P0=table[fen2];
111 1 delay(1);
112 1 P3=0xef;
113 1 P0=table[fen1];
114 1 delay(1);
115 1
116 1 P3=0xdf; //显示一杠“——”
117 1 P0=0x40;
C51 COMPILER V8.08 KICONTM 04/28/2009 16:23:02 PAGE 3
118 1 delay(1);
119 1
120 1 P3=0xbf; //显示秒钟
121 1 P0=table[miao2];
122 1 delay(1);
123 1 P3=0x7f;
124 1 P0=table[miao1];
125 1 delay(1);
126 1 }
127
128 void timer0() interrupt 1
129 {
130 1 TH0=(65536-50000)/256;
131 1 TL0=(65536-50000)%256;
132 1 key_contorl();
133 1 t0++;
134 1 if(t0==20)
135 1 {
136 2 t0=0;
137 2 miao++;
138 2 if(miao==60)
139 2 {
140 3 miao=0;
141 3 fen++;
142 3 if(fen==60)
143 3 {
144 4 fen=0;
145 4 shi++;
146 4 if(shi==24)
147 4 {
148 5 shi=0;
149 5 }
150 4 }
151 3 }
152 2 }
153 1
154 1
155 1
156 1 }
157
158 void delay(uint z)
159 {
160 1 uint x,y;
161 1 for(x=z;x>0;x--)
162 1 for(y=110;y>0;y--);
163 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 373 ----
CONSTANT SIZE = 10 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 11 ----
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 + -