3.lst
来自「刚学时编的小程序」· LST 代码 · 共 99 行
LST
99 行
C51 COMPILER V8.02 3 01/03/2007 12:24:40 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE 3
OBJECT MODULE PLACED IN 3.OBJ
COMPILER INVOKED BY: d:\Keil 8\C51\BIN\C51.EXE 3.C BROWSE DEBUG OBJECTEXTEND
line level source
1 #include <AT89X51.H>
2 unsigned char code dispcode[]={0x3f,0x06,0x5b,0x4f,
3 0x66,0x6d,0x7d,0x07,
4 0x7f,0x6f,0x77,0x7c,
5 0x39,0x5e,0x79,0x71,0x40};
6 unsigned char dispbitcode[]={0xfe,0xfd,0xfb,0xf7,
7 0xef,0xdf,0xbf,0x7f};
8 unsigned char dispbuf[8]={0,0,16,0,0,16,0,0};
9 unsigned char dispbitcnt;
10
11 unsigned char second;
12 unsigned char minite;
13 unsigned char hour;
14 unsigned int tcnt;
15 unsigned char mstcnt;
16
17
18 void main()
19 {
20 1 TMOD=0x02;
21 1 TH0=0x06;
22 1 TL0=0x06;
23 1 TR0=1;
24 1 ET0=1;
25 1 EA=1;
26 1 P1=dispcode[dispbuf[dispbitcnt]] ;
27 1 P2=dispbitcode[dispbitcnt] ;
28 1 while(1);
29 1
30 1 }
31
32 void t0(void) interrupt 1 using 0
33 {
34 1 mstcnt++;
35 1 if(mstcnt==8)
36 1 {
37 2 mstcnt=0;
38 2 P1=dispcode[dispbuf[dispbitcnt]] ;
39 2 P2=dispbitcode[dispbitcnt] ;
40 2 dispbitcnt++;
41 2 if(dispbitcnt==8)
42 2 {
43 3 dispbitcnt=0;
44 3 }
45 2 }
46 1 tcnt++;
47 1 if(tcnt==4000)
48 1 { tcnt=0;
49 2 second++;
50 2 if(second==60)
51 2 {
52 3 minite++;
53 3 if(minite==60)
54 3 {
55 4 hour++;
C51 COMPILER V8.02 3 01/03/2007 12:24:40 PAGE 2
56 4 if(hour==24)
57 4 {
58 5 hour=0;
59 5 }
60 4 minite=0;
61 4 }
62 3 second=0;
63 3 }
64 2 dispbuf[0]=second%10;
65 2 dispbuf[1]=second/10;
66 2 dispbuf[3]=minite%10;
67 2 dispbuf[4]=minite/10;
68 2 dispbuf[6]=hour%10;
69 2 dispbuf[7]=hour/10;
70 2 }
71 1
72 1
73 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 204 ----
CONSTANT SIZE = 17 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 23 ----
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?