📄 subtask.lst
字号:
C51 COMPILER V7.20 SUBTASK 08/16/2002 00:44:16 PAGE 1
C51 COMPILER V7.20, COMPILATION OF MODULE SUBTASK
OBJECT MODULE PLACED IN subTask.OBJ
COMPILER INVOKED BY: D:\软件目录\keil软件\C51\BIN\C51.EXE subTask.c BROWSE DEBUG OBJECTEXTEND
line level source
1
2 #include "reg51.h"
3 #include "Head.h"
4
5 /************************************************************/
6 sbit g_ledClk = P1^0;
7 sbit g_ledDat = P1^1;
8 #define d_SetClk() g_ledClk=1
9 #define d_ClrClk() g_ledClk=0
10 #define d_SetDat() g_ledDat=1
11 #define d_ClrDat() g_ledDat=0
12
13 code unsigned char LED_TAB[]={
14 0xfc,0x60,0xda,0xf2,0x66,0xb6,0xbe,0xe0,0xfe,0xf6,0xee,0x3e,0x1a,0x7a,0x9e,0x8e, //0-f 不带小数点,码为0x00
--0x0f
15 0xfd,0x61,0xdb,0xf3,0x67,0xb7,0xbf,0xe1,0xff,0xf7,0xef,0x3f,0x1b,0x7b,0x9f,0x8f, //0-f 带小数点,码为0x10-0
-x1f
16 0x00};//不显,码为0x20
17
18 void LedSendByte(unsigned char ch)
19 {
20 1 unsigned char i;
21 1 ch=LED_TAB[ch];
22 1 for(i=0;i<8;i++)
23 1 {
24 2 if(ch & 0x01)
25 2 d_SetDat();
26 2 else
27 2 d_ClrDat();
28 2 d_ClrClk();
29 2 d_SetClk();
30 2 ch >>=1;
31 2 }
32 1 }
33 /************************************************************/
34 char xdata PortAL _at_ 0x2000;
35 char xdata PortAR _at_ 0xe000;
36 char xdata PortBL _at_ 0x8000;
37 char xdata PortBR _at_ 0xb000;
38
39 sbit PortCL = P2^3;
40 sbit PortCR = P2^2;
41 sbit PortDL = P2^1;
42 sbit PortDR = P2^0;
43
44 char ReadAL(void)
45 {
46 1 return PortAL;
47 1 }
48
49 char ReadAR(void)
50 {
51 1 return PortAR;
52 1 }
53
C51 COMPILER V7.20 SUBTASK 08/16/2002 00:44:16 PAGE 2
54 char ReadBL(void)
55 {
56 1 return PortBL;
57 1 }
58
59 char ReadBR(void)
60 {
61 1 return PortBR;
62 1 }
63
64 void WriteCL(char ch)
65 {
66 1 PortCL = 1;
67 1 P0 = ch;
68 1 PortCL = 0;
69 1 P0 = 0xff;
70 1 }
71
72 void WriteCR(char ch)
73 {
74 1 PortCR = 1;
75 1 P0 = ch;
76 1 PortCR = 0;
77 1 P0 = 0xff;
78 1 }
79
80 void WriteDL(char ch)
81 {
82 1 PortDL = 1;
83 1 P0 = ch;
84 1 PortDL = 0;
85 1 P0 = 0xff;
86 1 }
87
88 void WriteDR(char ch)
89 {
90 1 PortDR = 1;
91 1 P0 = ch;
92 1 PortDR = 0;
93 1 P0 = 0xff;
94 1 }
95 /************************************************************/
96 char g_portCL = 0;
97 char g_portCR = 0;
98 char g_portDL = 0;
99 char g_portDR = 0;
100 /************************************************************/
101 void InitSystem(void)
102 {
103 1 g_portCL = 0;
104 1 g_portCR = 0;
105 1 g_portDL = 0;
106 1 g_portDR = 0;
107 1 WriteCL(g_portCL);
108 1 WriteCR(g_portCR);
109 1 WriteDL(g_portDL);
110 1 WriteDR(g_portDR);
111 1 }
112
113 void Door(char num)
114 {
115 1 g_portCL &= ~L_OPEN;
C51 COMPILER V7.20 SUBTASK 08/16/2002 00:44:16 PAGE 3
116 1 g_portCR &= ~R_CLOSE;
117 1 g_portCL |= L_DOORSPEED;
118 1 switch(num)
119 1 {
120 2 case 1:
121 2 g_portCL |= L_OPEN;
122 2 break;
123 2 case 2:
124 2 g_portCR |= R_CLOSE;
125 2 break;
126 2 }
127 1 WriteCL(g_portCL);
128 1 WriteCR(g_portCR);
129 1 }
130
131 void Box(char num)
132 {
133 1 g_portCL &= ~L_DOWN;
134 1 g_portCR &= ~R_UP;
135 1 g_portCR |= R_BOXSPEED;
136 1 switch(num)
137 1 {
138 2 case 1:
139 2 g_portCR |= R_UP;
140 2 break;
141 2 case 2:
142 2 g_portCL |= L_DOWN;
143 2 break;
144 2 }
145 1 WriteCL(g_portCL);
146 1 WriteCR(g_portCR);
147 1 }
148
149
150 void LED_UpDown(char upDown)//0为不显示
151 {
152 1 g_portDL &= ~L_RUNUP;
153 1 g_portDR &= ~R_RUNDOWN;
154 1 switch(upDown)
155 1 {
156 2 case 1:
157 2 g_portDL |= L_RUNUP;
158 2 break;
159 2 case 2:
160 2 g_portDR |= R_RUNDOWN;
161 2 break;
162 2 }
163 1 WriteDL(g_portDL);
164 1 WriteDR(g_portDR);
165 1 }
166
167 void LED_floor(char floor)//0为不显示
168 {
169 1 g_portDL &= ~L_1FLOOR;
170 1 g_portDR &= ~R_2FLOOR;
171 1 g_portDL &= ~L_3FLOOR;
172 1 g_portDR &= ~R_4FLOOR;
173 1 switch(floor)
174 1 {
175 2 case 1:
176 2 g_portDL |= L_1FLOOR;
177 2 break;
C51 COMPILER V7.20 SUBTASK 08/16/2002 00:44:16 PAGE 4
178 2 case 2:
179 2 g_portDR |= R_2FLOOR;
180 2 break;
181 2 case 3:
182 2 g_portDL |= L_3FLOOR;
183 2 break;
184 2 case 4:
185 2 g_portDR |= R_4FLOOR;
186 2 break;
187 2 }
188 1 WriteDL(g_portDL);
189 1 WriteDR(g_portDR);
190 1 }
191
192
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 281 ----
CONSTANT SIZE = 33 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 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 + -