📄 e51pro.ls1
字号:
217 ; {
218 ; SOURCE LINE # 41
219 ; BYTE n=0;
220 ; SOURCE LINE # 42
221 ;---- Variable 'n?242' assigned to Register 'R7' ----
0000 E4 222 CLR A
0001 FF 223 MOV R7,A
0002 224 ?C0003:
225 ; while(!RI){}
226 ; SOURCE LINE # 43
0002 3098FD 227 JNB RI,?C0003
0005 228 ?C0004:
229 ; ComBuf[n]=SBUF;
230 ; SOURCE LINE # 44
0005 7400 F 231 MOV A,#LOW (ComBuf)
0007 2F 232 ADD A,R7
0008 F8 233 MOV R0,A
0009 A699 234 MOV @R0,SBUF
235 ; RI=0;
236 ; SOURCE LINE # 45
000B C298 237 CLR RI
238 ; n++;
239 ; SOURCE LINE # 46
000D 0F 240 INC R7
241 ; for(n;n<=17;n++)
242 ; SOURCE LINE # 47
000E 243 ?C0005:
000E EF 244 MOV A,R7
000F D3 245 SETB C
0010 9411 246 SUBB A,#011H
0012 5029 247 JNC ?C0006
248 ; {
249 ; SOURCE LINE # 48
250 ; nTimeOut=0;
251 ; SOURCE LINE # 49
0014 E4 252 CLR A
0015 F500 F 253 MOV nTimeOut,A
0017 F500 F 254 MOV nTimeOut+01H,A
0019 255 ?C0008:
A51 MACRO ASSEMBLER E51PRO 10/11/2003 21:18:36 PAGE 5
256 ; while(!RI)
257 ; SOURCE LINE # 50
0019 209816 258 JB RI,?C0009
259 ; {
260 ; SOURCE LINE # 51
261 ; if(nTimeOut>10000)
262 ; SOURCE LINE # 52
001C D3 263 SETB C
001D E500 F 264 MOV A,nTimeOut+01H
001F 9410 265 SUBB A,#010H
0021 E500 F 266 MOV A,nTimeOut
0023 9427 267 SUBB A,#027H
0025 4001 268 JC ?C0010
269 ; return 0;
270 ; SOURCE LINE # 53
0027 22 271 RET
0028 272 ?C0010:
273 ; nTimeOut++;
274 ; SOURCE LINE # 54
0028 0500 F 275 INC nTimeOut+01H
002A E500 F 276 MOV A,nTimeOut+01H
002C 7002 277 JNZ ?C0044
002E 0500 F 278 INC nTimeOut
0030 279 ?C0044:
280 ; }
281 ; SOURCE LINE # 55
0030 80E7 282 SJMP ?C0008
0032 283 ?C0009:
284 ; ComBuf[n]=SBUF;
285 ; SOURCE LINE # 56
0032 7400 F 286 MOV A,#LOW (ComBuf)
0034 2F 287 ADD A,R7
0035 F8 288 MOV R0,A
0036 A699 289 MOV @R0,SBUF
290 ; RI=0;
291 ; SOURCE LINE # 57
0038 C298 292 CLR RI
293 ; }
294 ; SOURCE LINE # 58
003A 0F 295 INC R7
003B 80D1 296 SJMP ?C0005
003D 297 ?C0006:
298 ; return 1;
299 ; SOURCE LINE # 59
003D D3 300 SETB C
301 ; }
302 ; SOURCE LINE # 60
003E 303 ?C0011:
003E 22 304 RET
305 ; END OF WaitComm
306
307 ;
308 ; BOOL WaitResp()
309
---- 310 RSEG ?PR?WaitResp?E51PRO
0000 311 WaitResp:
312 ; SOURCE LINE # 62
313 ; {
314 ; SOURCE LINE # 63
315 ; nTimeOut=0;
316 ; SOURCE LINE # 64
0000 E4 317 CLR A
0001 F500 F 318 MOV nTimeOut,A
0003 F500 F 319 MOV nTimeOut+01H,A
0005 320 ?C0012:
321 ; while(!RI)
A51 MACRO ASSEMBLER E51PRO 10/11/2003 21:18:36 PAGE 6
322 ; SOURCE LINE # 65
0005 209816 323 JB RI,?C0013
324 ; {
325 ; SOURCE LINE # 66
326 ; if(nTimeOut>10000)
327 ; SOURCE LINE # 67
0008 D3 328 SETB C
0009 E500 F 329 MOV A,nTimeOut+01H
000B 9410 330 SUBB A,#010H
000D E500 F 331 MOV A,nTimeOut
000F 9427 332 SUBB A,#027H
0011 4001 333 JC ?C0014
334 ; return 0;
335 ; SOURCE LINE # 68
0013 22 336 RET
0014 337 ?C0014:
338 ; nTimeOut++;
339 ; SOURCE LINE # 69
0014 0500 F 340 INC nTimeOut+01H
0016 E500 F 341 MOV A,nTimeOut+01H
0018 7002 342 JNZ ?C0045
001A 0500 F 343 INC nTimeOut
001C 344 ?C0045:
345 ; }
346 ; SOURCE LINE # 70
001C 80E7 347 SJMP ?C0012
001E 348 ?C0013:
349 ; ComBuf[0]=SBUF;
350 ; SOURCE LINE # 71
001E 859900 F 351 MOV ComBuf,SBUF
352 ; RI=0;
353 ; SOURCE LINE # 72
0021 C298 354 CLR RI
355 ; return 1;
356 ; SOURCE LINE # 73
0023 D3 357 SETB C
358 ; }
359 ; SOURCE LINE # 74
0024 360 ?C0015:
0024 22 361 RET
362 ; END OF WaitResp
363
364 ;
365 ; BOOL WaitData()
366
---- 367 RSEG ?PR?WaitData?E51PRO
0000 368 WaitData:
369 USING 0
370 ; SOURCE LINE # 76
371 ; {
372 ; SOURCE LINE # 77
373 ;
374 ; for(n;n<=17;n++)
375 ; SOURCE LINE # 79
0000 376 ?C0016:
0000 E500 F 377 MOV A,n
0002 D3 378 SETB C
0003 9411 379 SUBB A,#011H
0005 502B 380 JNC ?C0017
381 ; {
382 ; SOURCE LINE # 80
383 ; nTimeOut=0;
384 ; SOURCE LINE # 81
0007 E4 385 CLR A
0008 F500 F 386 MOV nTimeOut,A
000A F500 F 387 MOV nTimeOut+01H,A
A51 MACRO ASSEMBLER E51PRO 10/11/2003 21:18:36 PAGE 7
000C 388 ?C0019:
389 ; while(!RI)
390 ; SOURCE LINE # 82
000C 209816 391 JB RI,?C0020
392 ; {
393 ; SOURCE LINE # 83
394 ; if(nTimeOut>10000)
395 ; SOURCE LINE # 84
000F D3 396 SETB C
0010 E500 F 397 MOV A,nTimeOut+01H
0012 9410 398 SUBB A,#010H
0014 E500 F 399 MOV A,nTimeOut
0016 9427 400 SUBB A,#027H
0018 4001 401 JC ?C0021
402 ; return 0;
403 ; SOURCE LINE # 85
001A 22 404 RET
001B 405 ?C0021:
406 ; nTimeOut++;
407 ; SOURCE LINE # 86
001B 0500 F 408 INC nTimeOut+01H
001D E500 F 409 MOV A,nTimeOut+01H
001F 7002 410 JNZ ?C0046
0021 0500 F 411 INC nTimeOut
0023 412 ?C0046:
413 ; }
414 ; SOURCE LINE # 87
0023 80E7 415 SJMP ?C0019
0025 416 ?C0020:
417 ; ComBuf[n]=SBUF;
418 ; SOURCE LINE # 88
0025 7400 F 419 MOV A,#LOW (ComBuf)
0027 2500 F 420 ADD A,n
0029 F8 421 MOV R0,A
002A A699 422 MOV @R0,SBUF
423 ; RI=0;
424 ; SOURCE LINE # 89
002C C298 425 CLR RI
426 ; }
427 ; SOURCE LINE # 90
002E 0500 F 428 INC n
0030 80CE 429 SJMP ?C0016
0032 430 ?C0017:
431 ; return 1;
432 ; SOURCE LINE # 91
0032 D3 433 SETB C
434 ; }
435 ; SOURCE LINE # 92
0033 436 ?C0022:
0033 22 437 RET
438 ; END OF WaitData
439
440 ;
441 ; void SendData()
442
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -