📄 chaxun.lst
字号:
C51 COMPILER V8.02 CHAXUN 08/22/2007 21:19:20 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE CHAXUN
OBJECT MODULE PLACED IN chaxun.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE chaxun.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include<reg51.h>
2 #include<stdio.h>
3 sbit P00=0xB2;
4 sbit P01=0xB3;
5 sbit P02=0xB4;
6 sbit P03=0xB5;
7 sbit P04=0xB6;
8 sbit P05=0xB7;
9 sbit P06=0xB8;
10 sbit P07=0xB9;
11 sbit P10=0x90;
12 sbit P11=0x91;
13 sbit P12=0x92;
14 sbit P13=0x93;
15 sbit P14=0x94;
16 sbit P15=0x95;
17 sbit P16=0x96;
18 sbit P17=0x97;
19 sbit P20=0xA0;
20 sbit P21=0xA1;
21 sbit P22=0xA2;
22 sbit P23=0xA3;
23 int nKeyNumber;
24
25 void Updata_LED();
26 void GetKeyNumber();
27 void delay1s();
28 void delay10ms();
29 char Table[16]={0XC0,0XF9,0XA4,0XB0,0X99,0X92,0X82,0XF8,0X80,0X90,0X88,0X80,0X36,0XC0,0X86,0X8E};
30 main()
31 {
32 1 SCON=0x52;
33 1 TMOD=0x20;
34 1 TCON=0x69;
35 1 TH1=0xF3;
36 1
37 1 while(1)
38 1 {
39 2 nKeyNumber=0xFF;
40 2 GetKeyNumber();
41 2 Updata_LED();
42 2 }
43 1 }
44
45
46 void GetKeyNumber()
47 {
48 1 P14=0;
49 1 { delay1s();
50 2 if(P13==0) {delay10ms();if(P13==0) nKeyNumber=0x00;P0=Table[0];return;}
51 2 if(P12==0) {delay10ms();if(P12==0) nKeyNumber=0x01;P0=Table[1];return;}
52 2 if(P11==0) {delay10ms();if(P11==0) nKeyNumber=0x02;P0=Table[2];return;}
53 2 if(P10==0) {delay10ms();if(P10==0) nKeyNumber=0x03;P0=Table[3];return;}
54 2 if(nKeyNumber!=0xFF)
55 2 return;
C51 COMPILER V8.02 CHAXUN 08/22/2007 21:19:20 PAGE 2
56 2 }
57 1 P14=1;
58 1 P15=0;
59 1 {delay1s();
60 2 if(P13==0) {delay10ms();if(P13==0) nKeyNumber=0x04;P0=Table[4];return;}
61 2 if(P12==0) {delay10ms();if(P12==0) nKeyNumber=0x05;P0=Table[5];return;}
62 2 if(P11==0) {delay10ms();if(P11==0) nKeyNumber=0x06;P0=Table[6];return;}
63 2 if(P10==0) {delay10ms();if(P10==0) nKeyNumber=0x07;P0=Table[7];return;}
64 2 if(nKeyNumber!=0xFF)
65 2 return;
66 2 }
67 1 P15=1;
68 1 P16=0;
69 1 {delay1s();
70 2 if(P13==0) {delay10ms();if(P13==0) nKeyNumber=0x08;P0=Table[8];return;}
71 2 if(P12==0) {delay10ms();if(P12==0) nKeyNumber=0x09;P0=Table[9];return;}
72 2 if(P11==0) {delay10ms();if(P11==0) nKeyNumber=0x0A;P0=Table[10];return;}
73 2 if(P10==0) {delay10ms();if(P10==0) nKeyNumber=0x0B;P0=Table[11];return;}
74 2 if(nKeyNumber!=0xFF)
75 2 return;
76 2 }
77 1 P16=1;
78 1 P17=0;
79 1 {delay1s();
80 2 if(P13==0) {delay10ms();if(P13==0) nKeyNumber=0x0C;P0=Table[12];return;}
81 2 if(P12==0) {delay10ms();if(P12==0) nKeyNumber=0x0D;P0=Table[13];return;}
82 2 if(P11==0) {delay10ms();if(P11==0) nKeyNumber=0x0E;P0=Table[14];return;}
83 2 if(P10==0) {delay10ms();if(P10==0) nKeyNumber=0x0F;P0=Table[15];return;}
84 2 if(nKeyNumber!=0xFF)
85 2 return;
86 2 }
87 1 P17=1;
88 1 }
89 void Updata_LED()
90 {
91 1 //int nTemp;
92 1 P23=1;
93 1 //nKeyNumber=nTemp%10;
94 1 P0=Table[7];
95 1 P23=0;
96 1 //nTemp/=10;
97 1 P22=1;
98 1 //nKeyNumber=nTemp%10;
99 1 P0=Table[nKeyNumber];
100 1 P22=0;
101 1 //nTemp/=10;
102 1 P21=1;
103 1 //nKeyNumber=nTemp%10;
104 1 P0=Table[nKeyNumber];
105 1 P21=0;
106 1 //nTemp/=10;
107 1 P20=1;
108 1 //nKeyNumber=nTemp%10;
109 1 P0=Table[8];
110 1 P20=0;
111 1 }
112 void delay1s()
113 {
114 1 long a;
115 1 for (a=0;a<1000;a++)
116 1 {
117 2 }
C51 COMPILER V8.02 CHAXUN 08/22/2007 21:19:20 PAGE 3
118 1 }
119 void delay10ms()
120 {
121 1 int b;
122 1 for (b=0;b<100;b++)
123 1 {
124 2 }
125 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 498 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 18 4
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 + -