📄 main.lst
字号:
C51 COMPILER V7.50 MAIN 07/18/2008 09:56:22 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: D:\Program Files\KEIL7.50\C51\BIN\C51.EXE main.c ROM(COMPACT) BROWSE DEBUG OBJECTEXTEND
line level source
1 //******************************
2 //本程序所使用到的头文件
3 //******************************
4 #define main_c
5 #include "main.h"
6
7
8 //******************************
9 //主程序开始
10 //******************************
11 void main(void)
12 {
13 1 uint i;
14 1 uchar j;
15 1 porta=0x00;
16 1 portb=0xff;
17 1 bitset(porta,3);
18 1 bitclr(portb,4);
19 1 award_num[1]=Rand();
20 1 j=Check(i);
21 1 ////////////////////
22 1 Power_set();
23 1 hour=0x13;
24 1 minute=0x14;
25 1 // second=0x00;
26 1 while(1)
27 1 {
28 2 Timer();
29 2 Keyscan();
30 2 Display();
31 2 Clock();
32 2 //
33 2 if(sta>0x10){soft_reset();} //软件复位示例
34 2 //
35 2 if(sta==sta2){sta1=sta;} //important data 2:1
36 2 else if(sta1==sta2){sta=sta1;}
37 2 else if(sta==sta1){sta2=sta;}
38 2 else{sta=sta1=sta2=0x00;}
39 2 switch(sta)
40 2 {
41 3 case 0: /*时钟走时 */
42 3 dsbuf[0]=hour;
43 3 dsbuf[1]=minute;
44 3 if(seccounter&0x80)
45 3 {dspoint|=0x06;}
46 3 else
47 3 {dspoint&=0xf9;}
48 3 if(key.b.k3)
49 3 {
50 4 dspoint=0xc6;
51 4 sta=0x02;
52 4 }
53 3 if(key.b.k0)
54 3 {
55 4 dspoint=0x06;
C51 COMPILER V7.50 MAIN 07/18/2008 09:56:22 PAGE 2
56 4 sta=0x01;
57 4 }
58 3 break;
59 3 case 1: /*时钟显示秒*/
60 3 dsbuf[0]=0xaa;
61 3 dsbuf[1]=second;
62 3 if(key.b.k0)
63 3 {
64 4 sta=0x00;
65 4 }
66 3 break;
67 3 break;
68 3 case 2: /*时钟调整*/
69 3 if(key.b.k2)
70 3 {
71 4 if(dspoint==0xc6)
72 4 {
73 5 dsbuf[1]++;
74 5 if((dsbuf[1]&0x0f)==0x0a)
75 5 {
76 6 dsbuf[1]+=0x06;
77 6 if(dsbuf[1]==0x60)
78 6 {dsbuf[1]=0x00;}
79 6 }
80 5 }
81 4 else
82 4 {
83 5 dsbuf[0]++;
84 5 if((dsbuf[0]&0x0f)==0x0a)
85 5 {
86 6 dsbuf[0]+=0x06;
87 6 }
88 5 if(dsbuf[0]==0x24)
89 5 {dsbuf[0]=0x00;}
90 5 }
91 4 }
92 3 if(key.b.k1)
93 3 {
94 4 if(dspoint==0xc6)
95 4 {
96 5 dsbuf[1]--;
97 5 if((dsbuf[1]&0x0f)==0x0f)
98 5 {
99 6 dsbuf[1]-=0x06;
100 6 if(dsbuf[1]==0xf9)
101 6 {dsbuf[1]=0x59;}
102 6 }
103 5 }
104 4 else
105 4 {
106 5 dsbuf[0]--;
107 5 if((dsbuf[0]&0x0f)==0x0f)
108 5 {
109 6 dsbuf[0]-=0x06;
110 6 if(dsbuf[0]==0xf9)
111 6 {dsbuf[0]=0x23;}
112 6 }
113 5 }
114 4 }
115 3 if(key.b.k0)
116 3 {
117 4 if(dspoint==0x36)
C51 COMPILER V7.50 MAIN 07/18/2008 09:56:22 PAGE 3
118 4 {dspoint=0xc6;}
119 4 else{dspoint=0x36;}
120 4 }
121 3 if(key.b.k3)
122 3 {
123 4 hour=dsbuf[0];
124 4 minute=dsbuf[1];
125 4 dspoint&=0x0f;
126 4 sta=0x00;
127 4 }
128 3 break;
129 3 }
130 2 sta1=sta2=sta;
131 2 }
132 1 }
133
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 388 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 68 3
IDATA SIZE = 120 ----
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 + -