📄 实验2.lst
字号:
C51 COMPILER V7.50 实验2 07/20/2008 14:00:24 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE 实验2
OBJECT MODULE PLACED IN 实验2.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE 实验2.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include<reg52.h>
2 #define uchar unsigned char
3 #define uint unsigned int
4 sbit dula=P2^6;
5 sbit wela=P2^7;
6 uchar code table[]={
7 0x3f,0x06,0x5b,0x4f,
8 0x66,0x6d,0x7d,0x07,
9 0x7f,0x6f,0x77,0x7c,
10 0x39,0x5e,0x79,0x71};
11 uchar temp,num;
12 delay(uchar);
13 display(uchar);
14 void main()
15 {
16 1 while(1)
17 1 {
18 2 P3=0xfe;
19 2 temp=P3;
20 2 temp=temp&0xf0;
21 2 if(temp!=0xf0)
22 2 {
23 3 delay(50);
24 3 if(temp!=0xf0)
25 3 {
26 4 switch(temp)
27 4 {
28 5 case 0xe0: num=0;
29 5 break;
30 5 case 0xd0: num=1;
31 5 break;
32 5 case 0xb0: num=2;
33 5 break;
34 5 case 0x70: num=3;
35 5 break;
36 5
37 5 }
38 4 }
39 3 }
40 2
41 2 P3=0xfd;
42 2 temp=P3;
43 2 temp=temp&0xf0;
44 2 if(temp!=0xf0)
45 2 {
46 3 delay(50);
47 3 if(temp!=0xf0)
48 3 {
49 4 switch(temp)
50 4 {
51 5 case 0xe0: num=4;
52 5 break;
53 5 case 0xd0: num=5;
54 5 break;
55 5 case 0xb0: num=6;
C51 COMPILER V7.50 实验2 07/20/2008 14:00:24 PAGE 2
56 5 break;
57 5 case 0x70: num=7;
58 5 break;
59 5
60 5 }
61 4 }
62 3 }
63 2
64 2 P3=0xfb;
65 2 temp=P3;
66 2 temp=temp&0xf0;
67 2 if(temp!=0xf0)
68 2 {
69 3 delay(50);
70 3 if(temp!=0xf0)
71 3 {
72 4 switch(temp)
73 4 {
74 5 case 0xe0: num=8;
75 5 break;
76 5 case 0xd0: num=9;
77 5 break;
78 5 case 0xb0: num=10;
79 5 break;
80 5 case 0x70: num=11;
81 5 break;
82 5
83 5 }
84 4 }
85 3 }
86 2
87 2 P3=0xf7;
88 2 temp=P3;
89 2 temp=temp&0xf0;
90 2 if(temp!=0xf0)
91 2 {
92 3 delay(50);
93 3 if(temp!=0xf0)
94 3 {
95 4 switch(temp)
96 4 {
97 5 case 0xe0: num=12;
98 5 break;
99 5 case 0xd0: num=13;
100 5 break;
101 5 case 0xb0: num=14;
102 5 break;
103 5 case 0x70: num=15;
104 5 break;
105 5
106 5 }
107 4 }
108 3 }
109 2 display(num);
110 2 }
111 1 }
112
113 delay(uchar x)
114 {
115 1 uchar a,b;
116 1 for(a=x;a>0;a--)
117 1 for(b=200;b>0;b--);
C51 COMPILER V7.50 实验2 07/20/2008 14:00:24 PAGE 3
118 1 }
119 display(uchar num1)
120 {
121 1 P0=table[num1];
122 1 dula=1;
123 1 dula=0;
124 1 P0=0xc0;
125 1 wela=1;
126 1 wela=0;
127 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 289 ----
CONSTANT SIZE = 16 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 2 ----
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 + -