⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 os_task.ls1

📁 UCOS在51上的移植,绝对经典!可以较少开发人员的工作量
💻 LS1
📖 第 1 页 / 共 3 页
字号:
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 + -