📄 provmap.lst
字号:
C51 COMPILER V7.02b PROVMAP 01/18/2005 21:37:49 PAGE 1
C51 COMPILER V7.02b, COMPILATION OF MODULE PROVMAP
OBJECT MODULE PLACED IN PROVMAP.OBJ
COMPILER INVOKED BY: D:\Keil\C51\BIN\C51.EXE PROVMAP.C BROWSE DEBUG OBJECTEXTEND
stmt level source
1 /****************************************/
2 /* Copyright (c) 2004, 通信工程学院戴佳 */
3 /* All rights reserved. */
4 /* 作 者:戴佳 */
5 /****************************************/
6
7 #include <other.h>
8 struct instruction AddrToStruct(uint excur_addr);
9 //配置映射函数
10 void ProvMap(struct instruction ProMapValue)
11 {
12 1 switch (ProMapValue.ObjVal[2]) //不同的2M
13 1 {
14 2 case 1:
15 2 M1_04C=ProMapValue.ObjVal[1]; //RTUN
16 2 M1_04D=ProMapValue.ObjVal[1]; //TTUN
17 2 if (ProMapValue.ObjVal[1]!=0)
18 2 {
19 3 M1_04A=M1_04A|0x02; //RnEN=1
20 3 f[0]=1;
21 3 M1_021=M1_021|0x01; //M1 Port1 Mask
22 3 M1_053=0x02; //A Drop Bus Port n MicroProcessor-written SIGNAL LABEL =0X02
23 3 M1_055=0x02; //SIGNAL LABEL =0X02
24 3 }
25 2 else
26 2 {
27 3 M1_04A=M1_04A&0xFD;
28 3 f[0]=0;
29 3 M1_021=M1_021&0xFE; //M1 Port1 Mask
30 3 }
31 2 break;
32 2 case 2:
33 2 M1_07C=ProMapValue.ObjVal[1]; //RTUN
34 2 M1_07D=ProMapValue.ObjVal[1]; //TTUN
35 2 if (ProMapValue.ObjVal[1]!=0)
36 2 {
37 3 M1_07A=M1_07A|0x02; //RnEN=1
38 3 f[1]=1;
39 3 M1_021=M1_021|0x02; //M1 Port2 Mask
40 3 M1_083=0x02; //A Drop Bus Port n MicroProcessor-written SIGNAL LABEL =0X02
41 3 M1_085=0x02; //SIGNAL LABEL =0X02
42 3 }
43 2 else
44 2 {
45 3 M1_07A=M1_07A&0xFD;
46 3 f[1]=0;
47 3 M1_021=M1_021&0xFD; //M1 Port2 Mask
48 3 }
49 2 break;
50 2 case 3:
51 2 M1_0AC=ProMapValue.ObjVal[1]; //RTUN
52 2 M1_0AD=ProMapValue.ObjVal[1]; //TTUN
53 2 if (ProMapValue.ObjVal[1]!=0)
54 2 {
55 3 M1_0AA=M1_0AA|0x02; //RnEN=1
C51 COMPILER V7.02b PROVMAP 01/18/2005 21:37:49 PAGE 2
56 3 f[2]=1;
57 3 M1_021=M1_021|0x04; //M1 Port3 Mask
58 3 M1_0B3=0x02; //A Drop Bus Port n MicroProcessor-written SIGNAL LABEL =0X02
59 3 M1_0B5=0x02;
60 3 }
61 2 else
62 2 {
63 3 M1_0AA=M1_0AA&0xFD;
64 3 f[2]=0;
65 3 M1_021=M1_021&0xFB; //M1 Port3 Mask
66 3 }
67 2 break;
68 2 case 4:
69 2 M1_0DC=ProMapValue.ObjVal[1]; //RTUN
70 2 M1_0DD=ProMapValue.ObjVal[1]; //TTUN
71 2 if (ProMapValue.ObjVal[1]!=0)
72 2 {
73 3 M1_0DA=M1_0DA|0x02; //RnEN=1
74 3 f[3]=1;
75 3 M1_021=M1_021|0x08; //M1 Port4 Mask
76 3 M1_0E3=0x02; //A Drop Bus Port n MicroProcessor-written SIGNAL LABEL =0X02
77 3 M1_0E5=0x02;
78 3 }
79 2 else
80 2 {
81 3 M1_0DA=M1_0DA&0xFD;
82 3 f[3]=0;
83 3 M1_021=M1_021&0xF7; //M1 Port4 Mask
84 3 }
85 2 break;
86 2 case 5:
87 2 M2_04C=ProMapValue.ObjVal[1]; //RTUN
88 2 M2_04D=ProMapValue.ObjVal[1]; //TTUN
89 2 if (ProMapValue.ObjVal[1]!=0)
90 2 {
91 3 M2_04A=M2_04A|0x02; //RnEN=1
92 3 f[4]=1;
93 3 M2_021=M2_021|0x01; //M2 Port1 Mask
94 3 M2_053=0x02; //A Drop Bus Port n MicroProcessor-written SIGNAL LABEL =0X02
95 3 M2_055=0x02; //SIGNAL LABEL =0X02
96 3 }
97 2 else
98 2 {
99 3 M2_04A=M2_04A&0xFD;
100 3 f[4]=0;
101 3 M2_021=M2_021&0xFE; //M2 Port1 Mask
102 3 }
103 2 break;
104 2 case 6:
105 2 M2_07C=ProMapValue.ObjVal[1]; //RTUN
106 2 M2_07D=ProMapValue.ObjVal[1]; //TTUN
107 2 if (ProMapValue.ObjVal[1]!=0)
108 2 {
109 3 M2_07A=M2_07A|0x02; //RnEN=1
110 3 f[5]=1;
111 3 M2_021=M2_021|0x02; //M2 Port2 Mask
112 3 M2_083=0x02; //A Drop Bus Port n MicroProcessor-written SIGNAL LABEL =0X02
113 3 M2_085=0x02; //SIGNAL LABEL =0X02
114 3 }
115 2 else
116 2 {
117 3 M2_07A=M2_07A&0xFD;
C51 COMPILER V7.02b PROVMAP 01/18/2005 21:37:49 PAGE 3
118 3 f[5]=0;
119 3 M2_021=M2_021&0xFD; //M2 Port2 Mask
120 3 }
121 2 break;
122 2 case 7:
123 2 M2_0AC=ProMapValue.ObjVal[1]; //RTUN
124 2 M2_0AD=ProMapValue.ObjVal[1]; //TTUN
125 2 if (ProMapValue.ObjVal[1]!=0)
126 2 {
127 3 M2_0AA=M2_0AA|0x02; //RnEN=1
128 3 f[6]=1;
129 3 M2_021=M2_021|0x04; //M2 Port3 Mask
130 3 M2_0B3=0x02; //A Drop Bus Port n MicroProcessor-written SIGNAL LABEL =0X02
131 3 M2_0B5=0x02;
132 3 }
133 2 else
134 2 {
135 3 M2_0AA=M2_0AA&0xFD;
136 3 f[6]=0;
137 3 M2_021=M2_021&0xFB; //M2 Port3 Mask
138 3 }
139 2 break;
140 2 case 8:
141 2 M2_0DC=ProMapValue.ObjVal[1]; //RTUN
142 2 M2_0DD=ProMapValue.ObjVal[1]; //TTUN
143 2 if (ProMapValue.ObjVal[1]!=0)
144 2 {
145 3 M2_0DA=M2_0DA|0x02; //RnEN=1
146 3 f[7]=1;
147 3 M2_021=M2_021|0x08; //M2 Port4 Mask
148 3 M2_0E3=0x02; //A Drop Bus Port n MicroProcessor-written SIGNAL LABEL =0X02
149 3 M2_0E5=0x02;
150 3 }
151 2 else
152 2 {
153 3 M2_0DA=M2_0DA&0xFD;
154 3 f[7]=0;
155 3 M2_021=M2_021&0xF7; //M2 Port4 Mask
156 3 }
157 2 break;
158 2 case 9:
159 2 M3_04C=ProMapValue.ObjVal[1]; //RTUN
160 2 M3_04D=ProMapValue.ObjVal[1]; //TTUN
161 2 if (ProMapValue.ObjVal[1]!=0)
162 2 {
163 3 M3_04A=M3_04A|0x02; //RnEN=1
164 3 f[8]=1;
165 3 M3_021=M3_021|0x01; //M3 Port1 Mask
166 3 M3_053=0x02; //A Drop Bus Port n MicroProcessor-written SIGNAL LABEL =0X02
167 3 M3_055=0x02;
168 3 }
169 2 else
170 2 {
171 3 M3_04A=M3_04A&0xFD;
172 3 f[8]=0;
173 3 M3_021=M3_021&0xFE; //M3 Port1 Mask
174 3 }
175 2 break;
176 2 case 10:
177 2 M3_07C=ProMapValue.ObjVal[1]; //RTUN
178 2 M3_07D=ProMapValue.ObjVal[1]; //TTUN
179 2 if (ProMapValue.ObjVal[1]!=0)
C51 COMPILER V7.02b PROVMAP 01/18/2005 21:37:49 PAGE 4
180 2 {
181 3 M3_07A=M3_07A|0x02; //RnEN=1
182 3 f[9]=1;
183 3 M3_021=M3_021|0x02; //M3 Port2 Mask
184 3 M3_083=0x02; //A Drop Bus Port n MicroProcessor-written SIGNAL LABEL =0X02
185 3 M3_085=0x02;
186 3 }
187 2 else
188 2 {
189 3 M3_07A=M3_07A&0xFD;
190 3 f[9]=0;
191 3 M3_021=M3_021&0xFD; //M3 Port2 Mask
192 3 }
193 2 break;
194 2 case 11:
195 2 M3_0AC=ProMapValue.ObjVal[1]; //RTUN
196 2 M3_0AD=ProMapValue.ObjVal[1]; //TTUN
197 2 if (ProMapValue.ObjVal[1]!=0)
198 2 {
199 3 M3_0AA=M3_0AA|0x02; //RnEN=1
200 3 f[10]=1;
201 3 M3_021=M3_021|0x04; //M3 Port3 Mask
202 3 M3_0B3=0x02; //A Drop Bus Port n MicroProcessor-written SIGNAL LABEL =0X02
203 3 M3_0B5=0x02;
204 3 }
205 2 else
206 2 {
207 3 M3_0AA=M3_0AA&0xFD;
208 3 f[10]=0;
209 3 M3_021=M3_021&0xFB; //M3 Port3 Mask
210 3 }
211 2 break;
212 2 case 12:
213 2 M3_0DC=ProMapValue.ObjVal[1]; //RTUN
214 2 M3_0DD=ProMapValue.ObjVal[1]; //TTUN
215 2 if (ProMapValue.ObjVal[1]!=0)
216 2 {
217 3 M3_0DA=M3_0DA|0x02; //RnEN=1
218 3 f[11]=1;
219 3 M3_021=M3_021|0x08; //M3 Port4 Mask
220 3 M3_0E3=0x02; //A Drop Bus Port n MicroProcessor-written SIGNAL LABEL =0X02
221 3 M3_0E5=0x02; //SIGNAL LABEL =0X02
222 3 }
223 2 else
224 2 {
225 3 M3_0DA=M3_0DA&0xFD;
226 3 f[11]=0;
227 3 M3_021=M3_021&0xF7; //M3 Port4 Mask
228 3 }
229 2 break;
230 2 case 13:
231 2 M4_04C=ProMapValue.ObjVal[1]; //RTUN
232 2 M4_04D=ProMapValue.ObjVal[1]; //TTUN
233 2 if (ProMapValue.ObjVal[1]!=0)
234 2 {
235 3 M4_04A=M4_04A|0x02; //RnEN=1
236 3 f[12]=1;
237 3 M4_021=M4_021|0x01; //M4 Port1 Mask
238 3 M4_053=0x02; //A Drop Bus Port n MicroProcessor-written SIGNAL LABEL =0X02
239 3 M4_055=0x02; //SIGNAL LABEL =0X02
240 3 }
241 2 else
C51 COMPILER V7.02b PROVMAP 01/18/2005 21:37:49 PAGE 5
242 2 {
243 3 M4_04A=M4_04A&0xFD;
244 3 f[12]=0;
245 3 M4_021=M4_021&0xFE; //M4 Port1 Mask
246 3 }
247 2 break;
248 2 case 14:
249 2 M4_07C=ProMapValue.ObjVal[1]; //RTUN
250 2 M4_07D=ProMapValue.ObjVal[1]; //TTUN
251 2 if (ProMapValue.ObjVal[1]!=0)
252 2 {
253 3 M4_07A=M4_07A|0x02; //RnEN=1
254 3 f[13]=1;
255 3 M4_021=M4_021|0x02; //M4 Port2 Mask
256 3 M4_083=0x02; //A Drop Bus Port n MicroProcessor-written SIGNAL LABEL =0X02
257 3 M4_085=0x02; //SIGNAL LABEL =0X02
258 3 }
259 2 else
260 2 {
261 3 M4_07A=M4_07A&0xFD;
262 3 f[13]=0;
263 3 M4_021=M4_021&0xFD; //M4 Port2 Mask
264 3 }
265 2 break;
266 2 case 15:
267 2 M4_0AC=ProMapValue.ObjVal[1]; //RTUN
268 2 M4_0AD=ProMapValue.ObjVal[1]; //TTUN
269 2 if (ProMapValue.ObjVal[1]!=0)
270 2 {
271 3 M4_0AA=M4_0AA|0x02; //RnEN=1
272 3 f[14]=1;
273 3 M4_021=M4_021|0x04; //M4 Port3 Mask
274 3 M4_0B3=0x02; //A Drop Bus Port n MicroProcessor-written SIGNAL LABEL =0X02
275 3 M4_0B5=0x02; //SIGNAL LABEL =0X02
276 3 }
277 2 else
278 2 {
279 3 M4_0AA=M4_0AA&0xFD;
280 3 f[14]=0;
281 3 M4_021=M4_021&0xFB; //M4 Port3 Mask
282 3 }
283 2 break;
284 2 case 16:
285 2 M4_0DC=ProMapValue.ObjVal[1]; //RTUN
286 2 M4_0DD=ProMapValue.ObjVal[1]; //TTUN
287 2 if (ProMapValue.ObjVal[1]!=0)
288 2 {
289 3 M4_0DA=M4_0DA|0x02; //RnEN=1
290 3 f[15]=1;
291 3 M4_021=M4_021|0x08; //M4 Port4 Mask
292 3 M4_0E3=0x02; //A Drop Bus Port n MicroProcessor-written SIGNAL LABEL =0X02
293 3 M4_0E5=0x02; //SIGNAL LABEL =0X02
294 3 }
295 2 else
296 2 {
297 3 M4_0DA=M4_0DA&0xFD;
298 3 f[15]=0;
299 3 M4_021=M4_021&0xF7; //M4 Port4 Mask
300 3 }
301 2 break;
302 2 }
303 1 }
C51 COMPILER V7.02b PROVMAP 01/18/2005 21:37:49 PAGE 6
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 977 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 8
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 + -