📄 main.lst
字号:
C51 COMPILER V8.08 MAIN 05/20/2007 19:05:54 PAGE 1
C51 COMPILER V8.08, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: D:\Program Files\Keil 8.08\C51\BIN\C51.EXE main.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include <reg51.h>
2 #include <intrins.h>
3
4 typedef unsigned char BYTE;
5
6 #define TICK 10000
7 #define T100us 256-100
8
9 BYTE LEDBUF[6];
10 BYTE HOUR;
11 BYTE MINUTE;
12 BYTE SECOND;
13 BYTE C100us[2]; //计数值
14
15
16 BYTE code LEDMAP[]={0x3F,0x06,0x5B,0x4F,
17 0x66,0x6D,0x7D,0x07,
18 0x7F,0x6F,0x77,0x7C,
19 0x39,0x5E,0x79,0x71};
20
21 void DELAY(BYTE in)
22 {
23 1 BYTE i=0xFF;
24 1
25 1 do
26 1 {
27 2 do
28 2 {}while(--i);
29 2 }while(--in);
30 1 }
31
32
33 void DISPLAYLED()
34 {
35 1 BYTE data *point=LEDBUF;
36 1 BYTE num=6;
37 1 BYTE scan=0x7F;
38 1
39 1 do
40 1 {
41 2 P0=0x00;
42 2 P0=*point;
43 2 P3=scan;
44 2 DELAY(1);
45 2 scan=_cror_(scan,1);
46 2 point++;
47 2 }while(--num);
48 1 }
49
50 void T0INT() interrupt 1
51 {
52 1 if(C100us[1]==0) C100us[0]--;
53 1 C100us[1]--;
54 1
55 1 if(C100us[0]|C100us[1])
C51 COMPILER V8.08 MAIN 05/20/2007 19:05:54 PAGE 2
56 1 {
57 2 return;
58 2 }
59 1 else
60 1 {
61 2 C100us[0]=TICK/256;
62 2 C100us[1]=TICK%256;
63 2 SECOND++;
64 2
65 2 if(SECOND==60)
66 2 {
67 3 SECOND=0x00;
68 3 MINUTE++;
69 3 if(MINUTE==60)
70 3 {
71 4 MINUTE=0x00;
72 4 HOUR++;
73 4 if(HOUR==24)
74 4 {
75 5 HOUR=0x00;
76 5 }
77 4 }
78 3 }
79 2 }
80 1 }
81
82 main()
83 {
84 1 TMOD=0x02;
85 1 TH0=T100us;
86 1 TL0=T100us;
87 1 IE=0x82;
88 1 HOUR=0;
89 1 MINUTE=0;
90 1 SECOND=0;
91 1 C100us[0]=TICK/256;
92 1 C100us[1]=TICK%256;
93 1 TR0=1;
94 1
95 1 while(1)
96 1 {
97 2 LEDBUF[0]=LEDMAP[HOUR/10];
98 2 LEDBUF[1]=LEDMAP[HOUR%10]|0x80;
99 2
100 2 LEDBUF[2]=LEDMAP[MINUTE/10];
101 2 LEDBUF[3]=LEDMAP[MINUTE%10]|0x80;
102 2
103 2 LEDBUF[4]=LEDMAP[SECOND/10];
104 2 LEDBUF[5]=LEDMAP[SECOND%10]|0x80;
105 2
106 2 DISPLAYLED();
107 2 }
108 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 204 ----
CONSTANT SIZE = 16 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 11 ----
IDATA SIZE = ---- ----
C51 COMPILER V8.08 MAIN 05/20/2007 19:05:54 PAGE 3
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 + -