📄 series_all.lst
字号:
C51 COMPILER V7.50 SERIES_ALL 10/02/2007 08:57:52 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE SERIES_ALL
OBJECT MODULE PLACED IN series_all.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE series_all.c BROWSE DEBUG OBJECTEXTEND
line level source
1 /*********************************************
2 本程序意在检测按键,将按键对应的值指从串口输出
3 **********************************************/
4 #include "STC89C51.h"
5 #define uch unsigned char
6
7 sbit P20=P2^0;
8 sbit P21=P2^1;
9 sbit P22=P2^2;
10 sbit P23=P2^3;
11 uch key=0;
12
13 void init()
14 {
15 1 P20=1;
16 1 P21=1;
17 1 P22=1;
18 1 P23=1;
19 1 }
20
21 void keyscan()
22 {
23 1 {
24 2 P23=0;
25 2 if (P23==0)
26 2 {
27 3 if (P22==0)
28 3 key=3;
29 3 if (P21==0)
30 3 key=5;
31 3 if (P20==0)
32 3 key=1;
33 3 init();
34 3 }
35 2 P22=0;
36 2 if (P22==0)
37 2 {
38 3 if (P21==0)
39 3 key=4;
40 3 if (P20==0)
41 3 key=2;
42 3 init();
43 3 }
44 2 }
45 1
46 1 }
47
48 void series()
49 {
50 1 TMOD=0X20; //t1工作于方式2自动重装8位计数器
51 1 TL1=0xfd;
52 1 TH1=0xfd;
53 1 SCON=0x50; //01010000,方式一,允许接收
54 1 PCON=0x00;
55 1 TR1=1; //允许T1运行
C51 COMPILER V7.50 SERIES_ALL 10/02/2007 08:57:52 PAGE 2
56 1 SBUF=key; /*启动数据发送*/
57 1 while(TI==0);//检测发送状态
58 1 TI=0;
59 1 }
60
61
62 void main()
63 {
64 1 if (RI==1)
65 1 {
66 2 key=SBUF;
67 2 RI=0;
68 2 }
69 1 keyscan();
70 1 if (key==1)
71 1 series();
72 1
73 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 102 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 1 ----
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 + -