📄 os_task.ls1
字号:
00D2 120000 F 422 LCALL ?C?PSTXDATA
00D5 90000E 423 MOV DPTR,#0EH
00D8 120000 F 424 LCALL ?C?XBPOFF
00DB 120000 F 425 LCALL ?C?PLDXDATA
00DE 90001B 426 MOV DPTR,#01BH
00E1 120000 F 427 LCALL ?C?XBPOFF
00E4 E0 428 MOVX A,@DPTR
00E5 FF 429 MOV R7,A
00E6 120000 F 430 LCALL _?OS_TCBInit
00E9 900003 431 MOV DPTR,#03H
00EC 120000 F 432 LCALL ?C?XBPOFF
00EF EF 433 MOV A,R7
00F0 F0 434 MOVX @DPTR,A
435 ; if (err == OS_NO_ERR) {
436 ; SOURCE LINE # 179
00F1 900003 437 MOV DPTR,#03H
00F4 120000 F 438 LCALL ?C?XBPOFF
00F7 E0 439 MOVX A,@DPTR
00F8 7012 440 JNZ ?C0004
441 ; OS_ENTER_CRITICAL();
442 ; SOURCE LINE # 180
00FA C2AF 443 CLR EA
444 ; OSTaskCtr++; /* Increment the #tasks c
ounter */
445 ; SOURCE LINE # 181
00FC 900000 F 446 MOV DPTR,#OSTaskCtr
00FF E0 447 MOVX A,@DPTR
0100 04 448 INC A
0101 F0 449 MOVX @DPTR,A
450 ; OS_EXIT_CRITICAL();
451 ; SOURCE LINE # 182
0102 D2AF 452 SETB EA
453 ; if (OSRunning == TRUE) { /* Find highest priority task if multitaskin
g has started */
454 ; SOURCE LINE # 183
0104 300026 F 455 JNB OSRunning,?C0006
456 ; OS_Sched();
457 ; SOURCE LINE # 184
0107 120000 F 458 LCALL _?OS_Sched
459 ; }
460 ; SOURCE LINE # 185
461 ; } else {
462 ; SOURCE LINE # 186
010A 8021 463 SJMP ?C0006
010C 464 ?C0004:
465 ; OS_ENTER_CRITICAL();
466 ; SOURCE LINE # 187
010C C2AF 467 CLR EA
468 ; OSTCBPrioTbl[prio] = (OS_TCB *)0;/* Make this priority available to others
*/
469 ; SOURCE LINE # 188
010E 7B00 470 MOV R3,#00H
0110 7A00 471 MOV R2,#00H
A51 MACRO ASSEMBLER OS_TASK 05/17/2005 11:19:58 PAGE 9
0112 7900 472 MOV R1,#00H
0114 90000D 473 MOV DPTR,#0DH
0117 120000 F 474 LCALL ?C?XBPOFF
011A E0 475 MOVX A,@DPTR
011B 75F003 476 MOV B,#03H
011E A4 477 MUL AB
011F 2400 F 478 ADD A,#LOW (OSTCBPrioTbl)
0121 F582 479 MOV DPL,A
0123 E4 480 CLR A
0124 3400 F 481 ADDC A,#HIGH (OSTCBPrioTbl)
0126 F583 482 MOV DPH,A
0128 120000 F 483 LCALL ?C?PSTXDATA
484 ; OS_EXIT_CRITICAL();
485 ; SOURCE LINE # 189
012B D2AF 486 SETB EA
487 ; }
488 ; SOURCE LINE # 190
012D 489 ?C0006:
490 ; return (err);
491 ; SOURCE LINE # 191
012D 900003 492 MOV DPTR,#03H
0130 120000 F 493 LCALL ?C?XBPOFF
0133 E0 494 MOVX A,@DPTR
0134 FF 495 MOV R7,A
0135 8004 496 SJMP ?C0002
497 ; }
498 ; SOURCE LINE # 192
0137 499 ?C0003:
500 ; OS_EXIT_CRITICAL();
501 ; SOURCE LINE # 193
0137 D2AF 502 SETB EA
503 ; return (OS_PRIO_EXIST);
504 ; SOURCE LINE # 194
0139 7F28 505 MOV R7,#028H
506 ; }
507 ; SOURCE LINE # 195
013B 508 ?C0002:
013B 90000E 509 MOV DPTR,#0EH
013E 020000 F 510 LJMP ?C?ADDXBP
511 ; END OF _?OSTaskCreate
512
513 END
A51 MACRO ASSEMBLER OS_TASK 05/17/2005 11:19:58 PAGE 10
SYMBOL TABLE LISTING
------ ----- -------
N A M E T Y P E V A L U E ATTRIBUTES
?C0001 . . . . . . . . . . C ADDR 0021H R SEG=?PR?_?OSTASKCREATE?OS_TASK
?C0002 . . . . . . . . . . C ADDR 013BH R SEG=?PR?_?OSTASKCREATE?OS_TASK
?C0003 . . . . . . . . . . C ADDR 0137H R SEG=?PR?_?OSTASKCREATE?OS_TASK
?C0004 . . . . . . . . . . C ADDR 010CH R SEG=?PR?_?OSTASKCREATE?OS_TASK
?C0006 . . . . . . . . . . C ADDR 012DH R SEG=?PR?_?OSTASKCREATE?OS_TASK
?C?ADDXBP. . . . . . . . . C ADDR ----- EXT
?C?LSTKXDATA . . . . . . . C ADDR ----- EXT
?C?PLDXDATA. . . . . . . . C ADDR ----- EXT
?C?PSTXDATA. . . . . . . . C ADDR ----- EXT
?C?XBPOFF. . . . . . . . . C ADDR ----- EXT
?C_XBP . . . . . . . . . . D ADDR ----- EXT
?PR?_?OSTASKCREATE?OS_TASK C SEG 0141H REL=UNIT
AC . . . . . . . . . . . . B ADDR 00D0H.6 A
ACC. . . . . . . . . . . . D ADDR 00E0H A
B. . . . . . . . . . . . . D ADDR 00F0H A
CP_RL2 . . . . . . . . . . B ADDR 00C8H.0 A
CY . . . . . . . . . . . . B ADDR 00D0H.7 A
C_T2 . . . . . . . . . . . B ADDR 00C8H.1 A
DPH. . . . . . . . . . . . D ADDR 0083H A
DPL. . . . . . . . . . . . D ADDR 0082H A
DPS. . . . . . . . . . . . D ADDR 00A2H A
EA . . . . . . . . . . . . B ADDR 00A8H.7 A
ES . . . . . . . . . . . . B ADDR 00A8H.4 A
ET0. . . . . . . . . . . . B ADDR 00A8H.1 A
ET1. . . . . . . . . . . . B ADDR 00A8H.3 A
ET2. . . . . . . . . . . . B ADDR 00A8H.5 A
EX0. . . . . . . . . . . . B ADDR 00A8H.0 A
EX1. . . . . . . . . . . . B ADDR 00A8H.2 A
EXEN2. . . . . . . . . . . B ADDR 00C8H.3 A
EXF2 . . . . . . . . . . . B ADDR 00C8H.6 A
F0 . . . . . . . . . . . . B ADDR 00D0H.5 A
F1 . . . . . . . . . . . . B ADDR 00D0H.1 A
IE . . . . . . . . . . . . D ADDR 00A8H A
IE0. . . . . . . . . . . . B ADDR 0088H.1 A
IE1. . . . . . . . . . . . B ADDR 0088H.3 A
INT0 . . . . . . . . . . . B ADDR 00B0H.2 A
INT1 . . . . . . . . . . . B ADDR 00B0H.3 A
IP . . . . . . . . . . . . D ADDR 00B8H A
IT0. . . . . . . . . . . . B ADDR 0088H.0 A
IT1. . . . . . . . . . . . B ADDR 0088H.2 A
OSRUNNING. . . . . . . . . B ADDR ----- EXT
OSTASKCTR. . . . . . . . . X ADDR ----- EXT
OSTCBPRIOTBL . . . . . . . X ADDR ----- EXT
OS_TASK. . . . . . . . . . N NUMB -----
OV . . . . . . . . . . . . B ADDR 00D0H.2 A
P. . . . . . . . . . . . . B ADDR 00D0H.0 A
P0 . . . . . . . . . . . . D ADDR 0080H A
P0_0 . . . . . . . . . . . B ADDR 0080H.0 A
P0_1 . . . . . . . . . . . B ADDR 0080H.1 A
P0_2 . . . . . . . . . . . B ADDR 0080H.2 A
P0_3 . . . . . . . . . . . B ADDR 0080H.3 A
P0_4 . . . . . . . . . . . B ADDR 0080H.4 A
P0_5 . . . . . . . . . . . B ADDR 0080H.5 A
P0_6 . . . . . . . . . . . B ADDR 0080H.6 A
P0_7 . . . . . . . . . . . B ADDR 0080H.7 A
P1 . . . . . . . . . . . . D ADDR 0090H A
P1_0 . . . . . . . . . . . B ADDR 0090H.0 A
P1_1 . . . . . . . . . . . B ADDR 0090H.1 A
P1_2 . . . . . . . . . . . B ADDR 0090H.2 A
P1_3 . . . . . . . . . . . B ADDR 0090H.3 A
A51 MACRO ASSEMBLER OS_TASK 05/17/2005 11:19:58 PAGE 11
P1_4 . . . . . . . . . . . B ADDR 0090H.4 A
P1_5 . . . . . . . . . . . B ADDR 0090H.5 A
P1_6 . . . . . . . . . . . B ADDR 0090H.6 A
P1_7 . . . . . . . . . . . B ADDR 0090H.7 A
P2 . . . . . . . . . . . . D ADDR 00A0H A
P2_0 . . . . . . . . . . . B ADDR 00A0H.0 A
P2_1 . . . . . . . . . . . B ADDR 00A0H.1 A
P2_2 . . . . . . . . . . . B ADDR 00A0H.2 A
P2_3 . . . . . . . . . . . B ADDR 00A0H.3 A
P2_4 . . . . . . . . . . . B ADDR 00A0H.4 A
P2_5 . . . . . . . . . . . B ADDR 00A0H.5 A
P2_6 . . . . . . . . . . . B ADDR 00A0H.6 A
P2_7 . . . . . . . . . . . B ADDR 00A0H.7 A
P3 . . . . . . . . . . . . D ADDR 00B0H A
PCON . . . . . . . . . . . D ADDR 0087H A
PS . . . . . . . . . . . . B ADDR 00B8H.4 A
PSW. . . . . . . . . . . . D ADDR 00D0H A
PT0. . . . . . . . . . . . B ADDR 00B8H.1 A
PT1. . . . . . . . . . . . B ADDR 00B8H.3 A
PT2. . . . . . . . . . . . B ADDR 00B8H.5 A
PX0. . . . . . . . . . . . B ADDR 00B8H.0 A
PX1. . . . . . . . . . . . B ADDR 00B8H.2 A
RB8. . . . . . . . . . . . B ADDR 0098H.2 A
RCAP2H . . . . . . . . . . D ADDR 00CBH A
RCAP2L . . . . . . . . . . D ADDR 00CAH A
RCLK . . . . . . . . . . . B ADDR 00C8H.5 A
RD . . . . . . . . . . . . B ADDR 00B0H.7 A
REN. . . . . . . . . . . . B ADDR 0098H.4 A
RI . . . . . . . . . . . . B ADDR 0098H.0 A
RS0. . . . . . . . . . . . B ADDR 00D0H.3 A
RS1. . . . . . . . . . . . B ADDR 00D0H.4 A
RXD. . . . . . . . . . . . B ADDR 00B0H.0 A
SBUF . . . . . . . . . . . D ADDR 0099H A
SCON . . . . . . . . . . . D ADDR 0098H A
SM0. . . . . . . . . . . . B ADDR 0098H.7 A
SM1. . . . . . . . . . . . B ADDR 0098H.6 A
SM2. . . . . . . . . . . . B ADDR 0098H.5 A
SP . . . . . . . . . . . . D ADDR 0081H A
T0 . . . . . . . . . . . . B ADDR 00B0H.4 A
T1 . . . . . . . . . . . . B ADDR 00B0H.5 A
T2 . . . . . . . . . . . . B ADDR 0090H.0 A
T2CON. . . . . . . . . . . D ADDR 00C8H A
T2MOD. . . . . . . . . . . D ADDR 00C9H A
T2_EX. . . . . . . . . . . B ADDR 0090H.1 A
TB8. . . . . . . . . . . . B ADDR 0098H.3 A
TCLK . . . . . . . . . . . B ADDR 00C8H.4 A
TCON . . . . . . . . . . . D ADDR 0088H A
TF0. . . . . . . . . . . . B ADDR 0088H.5 A
TF1. . . . . . . . . . . . B ADDR 0088H.7 A
TF2. . . . . . . . . . . . B ADDR 00C8H.7 A
TH0. . . . . . . . . . . . D ADDR 008CH A
TH1. . . . . . . . . . . . D ADDR 008DH A
TH2. . . . . . . . . . . . D ADDR 00CDH A
TI . . . . . . . . . . . . B ADDR 0098H.1 A
TL0. . . . . . . . . . . . D ADDR 008AH A
TL1. . . . . . . . . . . . D ADDR 008BH A
TL2. . . . . . . . . . . . D ADDR 00CCH A
TMOD . . . . . . . . . . . D ADDR 0089H A
TR0. . . . . . . . . . . . B ADDR 0088H.4 A
TR1. . . . . . . . . . . . B ADDR 0088H.6 A
TR2. . . . . . . . . . . . B ADDR 00C8H.2 A
TXD. . . . . . . . . . . . B ADDR 00B0H.1 A
WR . . . . . . . . . . . . B ADDR 00B0H.6 A
_?OSTASKCREATE . . . . . . C ADDR 0000H R SEG=?PR?_?OSTASKCREATE?OS_TASK
_?OSTASKSTKINIT. . . . . . C ADDR ----- EXT
_?OS_SCHED . . . . . . . . C ADDR ----- EXT
A51 MACRO ASSEMBLER OS_TASK 05/17/2005 11:19:58 PAGE 12
_?OS_TCBINIT . . . . . . . C ADDR ----- EXT
REGISTER BANK(S) USED: 0
ASSEMBLY COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -