📄 ex4-5.lst
字号:
C51 COMPILER V8.05a EX4_5 10/02/2008 15:50:29 PAGE 1
C51 COMPILER V8.05a, COMPILATION OF MODULE EX4_5
OBJECT MODULE PLACED IN ex4-5.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE ex4-5.c DEBUG OBJECTEXTEND
line level source
1 #include <reg51.h>
2 #include <stdio.h>
3
4 #define byte unsigned char
5
6 //中断服务程序
7 void keyinterrupt() interrupt 2
8 {
9 1 int t;
10 1 byte keycode,scancode,flag=0xff;
11 1 t=5000;
12 1 while(t--);
13 1 if(INT1==1)
14 1 return;
15 1 EX1=0;
16 1 scancode=0xef;
17 1 while(scancode!=0xff)
18 1 {
19 2 P1=scancode;
20 2 keycode=P1;
21 2 if((keycode&0x0f)!=0x0f)
22 2 break;
23 2 scancode=(keycode<<1)|0x0f;
24 2 }
25 1 keycode=~keycode;
26 1
27 1 P2=keycode; //将扫描码输出,数码管采用具有译码功能的数码管
28 1 P1=0X0F;
29 1 while(1)
30 1 {
31 2 if(INT1==1)
32 2 {
33 3 flag=~flag;
34 3 if(flag==0)
35 3 break;
36 3 }
37 2 t=10000;
38 2 while(t--);
39 2 }
40 1 EX1=1;
41 1 return;
42 1 }
43
44 void main(void)
45 {
46 1 IE=0;
47 1 EX1=1;
48 1 EA=1; //中断open
49 1 P2=0XFF;
50 1 P1=0X0F;
51 1 while(1)
52 1 {
53 2 }
54 1 }
C51 COMPILER V8.05a EX4_5 10/02/2008 15:50:29 PAGE 2
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 132 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
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 + -