os_time.ls1

来自「在51单片机上移植成功的UCOS-II操作系统源代码,包括源代码及相关注释」· LS1 代码 · 共 1,130 行 · 第 1/5 页

LS1
1,130
字号
00AF E4              407             CLR     A
00B0 FC              408             MOV     R4,A
00B1 FD              409             MOV     R5,A
00B2 FE              410             MOV     R6,A
00B3 7B10            411             MOV     R3,#010H
00B5 7A0E            412             MOV     R2,#0EH
00B7 F9              413             MOV     R1,A
00B8 F8              414             MOV     R0,A
00B9 120000   F      415             LCALL   ?C?LMUL
00BC D003            416             POP     AR3
00BE D002            417             POP     AR2
00C0 D001            418             POP     AR1
00C2 D000            419             POP     AR0
00C4 EF              420             MOV     A,R7
00C5 2B              421             ADD     A,R3
00C6 FB              422             MOV     R3,A
00C7 EE              423             MOV     A,R6
00C8 3A              424             ADDC    A,R2
00C9 FA              425             MOV     R2,A
00CA ED              426             MOV     A,R5
00CB 39              427             ADDC    A,R1
00CC F9              428             MOV     R1,A
00CD EC              429             MOV     A,R4
A51 MACRO ASSEMBLER  OS_TIME                                                              09/09/2007 21:13:22 PAGE     8

00CE 38              430             ADDC    A,R0
00CF F8              431             MOV     R0,A
00D0 900008          432             MOV     DPTR,#08H
00D3 120000   F      433             LCALL   ?C?XBPOFF
00D6 E0              434             MOVX    A,@DPTR
00D7 FF              435             MOV     R7,A
00D8 E4              436             CLR     A
00D9 FC              437             MOV     R4,A
00DA FD              438             MOV     R5,A
00DB FE              439             MOV     R6,A
00DC EB              440             MOV     A,R3
00DD 2F              441             ADD     A,R7
00DE FF              442             MOV     R7,A
00DF EE              443             MOV     A,R6
00E0 3A              444             ADDC    A,R2
00E1 FE              445             MOV     R6,A
00E2 ED              446             MOV     A,R5
00E3 39              447             ADDC    A,R1
00E4 FD              448             MOV     R5,A
00E5 EC              449             MOV     A,R4
00E6 38              450             ADDC    A,R0
00E7 FC              451             MOV     R4,A
00E8 E4              452             CLR     A
00E9 7B32            453             MOV     R3,#032H
00EB FA              454             MOV     R2,A
00EC F9              455             MOV     R1,A
00ED F8              456             MOV     R0,A
00EE 120000   F      457             LCALL   ?C?LMUL
00F1 C004            458             PUSH    AR4
00F3 C005            459             PUSH    AR5
00F5 C006            460             PUSH    AR6
00F7 C007            461             PUSH    AR7
00F9 900009          462             MOV     DPTR,#09H
00FC 120000   F      463             LCALL   ?C?XBPOFF
00FF E0              464             MOVX    A,@DPTR
0100 FE              465             MOV     R6,A
0101 A3              466             INC     DPTR
0102 E0              467             MOVX    A,@DPTR
0103 FF              468             MOV     R7,A
0104 EF              469             MOV     A,R7
0105 240A            470             ADD     A,#0AH
0107 FF              471             MOV     R7,A
0108 E4              472             CLR     A
0109 3E              473             ADDC    A,R6
010A FE              474             MOV     R6,A
010B E4              475             CLR     A
010C 33              476             RLC     A
010D FD              477             MOV     R5,A
010E E4              478             CLR     A
010F 33              479             RLC     A
0110 FC              480             MOV     R4,A
0111 E4              481             CLR     A
0112 7B32            482             MOV     R3,#032H
0114 FA              483             MOV     R2,A
0115 F9              484             MOV     R1,A
0116 F8              485             MOV     R0,A
0117 120000   F      486             LCALL   ?C?LMUL
011A E4              487             CLR     A
011B 7BE8            488             MOV     R3,#0E8H
011D 7A03            489             MOV     R2,#03H
011F F9              490             MOV     R1,A
0120 F8              491             MOV     R0,A
0121 120000   F      492             LCALL   ?C?ULDIV
0124 D003            493             POP     AR3
0126 D002            494             POP     AR2
0128 D001            495             POP     AR1
A51 MACRO ASSEMBLER  OS_TIME                                                              09/09/2007 21:13:22 PAGE     9

012A D000            496             POP     AR0
012C EB              497             MOV     A,R3
012D 2F              498             ADD     A,R7
012E FF              499             MOV     R7,A
012F EA              500             MOV     A,R2
0130 3E              501             ADDC    A,R6
0131 FE              502             MOV     R6,A
0132 E9              503             MOV     A,R1
0133 3D              504             ADDC    A,R5
0134 FD              505             MOV     R5,A
0135 E8              506             MOV     A,R0
0136 3C              507             ADDC    A,R4
0137 FC              508             MOV     R4,A
0138 850083   F      509             MOV     DPH,?C_XBP
013B 850082   F      510             MOV     DPL,?C_XBP+01H
013E 120000   F      511             LCALL   ?C?LSTXDATA
                     512     ;         loops = ticks / 65536L;                  /* Compute the integral number of 65536 
                             tick delays   */
                     513                             ; SOURCE LINE # 95
0141 E4              514             CLR     A
0142 FB              515             MOV     R3,A
0143 FA              516             MOV     R2,A
0144 7901            517             MOV     R1,#01H
0146 F8              518             MOV     R0,A
0147 850083   F      519             MOV     DPH,?C_XBP
014A 850082   F      520             MOV     DPL,?C_XBP+01H
014D E0              521             MOVX    A,@DPTR
014E FC              522             MOV     R4,A
014F A3              523             INC     DPTR
0150 E0              524             MOVX    A,@DPTR
0151 FD              525             MOV     R5,A
0152 A3              526             INC     DPTR
0153 E0              527             MOVX    A,@DPTR
0154 FE              528             MOV     R6,A
0155 A3              529             INC     DPTR
0156 E0              530             MOVX    A,@DPTR
0157 FF              531             MOV     R7,A
0158 120000   F      532             LCALL   ?C?ULDIV
015B 900004          533             MOV     DPTR,#04H
015E 120000   F      534             LCALL   ?C?XBPOFF
0161 EE              535             MOV     A,R6
0162 F0              536             MOVX    @DPTR,A
0163 A3              537             INC     DPTR
0164 EF              538             MOV     A,R7
0165 F0              539             MOVX    @DPTR,A
                     540     ;         ticks = ticks % 65536L;                  /* Obtain  the fractional number of tick
                             s             */
                     541                             ; SOURCE LINE # 96
0166 850083   F      542             MOV     DPH,?C_XBP
0169 850082   F      543             MOV     DPL,?C_XBP+01H
016C C083            544             PUSH    DPH
016E C082            545             PUSH    DPL
0170 A3              546             INC     DPTR
0171 A3              547             INC     DPTR
0172 E0              548             MOVX    A,@DPTR
0173 FE              549             MOV     R6,A
0174 A3              550             INC     DPTR
0175 E0              551             MOVX    A,@DPTR
0176 FF              552             MOV     R7,A
0177 E4              553             CLR     A
0178 FD              554             MOV     R5,A
0179 FC              555             MOV     R4,A
017A D082            556             POP     DPL
017C D083            557             POP     DPH
017E 120000   F      558             LCALL   ?C?LSTXDATA
                     559     ;         OSTimeDly(ticks);
A51 MACRO ASSEMBLER  OS_TIME                                                              09/09/2007 21:13:22 PAGE    10

                     560                             ; SOURCE LINE # 97
0181 850083   F      561             MOV     DPH,?C_XBP
0184 850082   F      562             MOV     DPL,?C_XBP+01H
0187 A3              563             INC     DPTR
0188 A3              564             INC     DPTR
0189 E0              565             MOVX    A,@DPTR
018A FE              566             MOV     R6,A
018B A3              567             INC     DPTR
018C E0              568             MOVX    A,@DPTR
018D FF              569             MOV     R7,A
018E 120000   F      570             LCALL   _?OSTimeDly
0191                 571     ?C0010:
                     572     ;         while (loops > 0) {
                     573                             ; SOURCE LINE # 98
0191 900004          574             MOV     DPTR,#04H
0194 120000   F      575             LCALL   ?C?XBPOFF
0197 E0              576             MOVX    A,@DPTR
0198 FE              577             MOV     R6,A
0199 A3              578             INC     DPTR
019A E0              579             MOVX    A,@DPTR
019B D3              580             SETB    C
019C 9400            581             SUBB    A,#00H
019E EE              582             MOV     A,R6
019F 9400            583             SUBB    A,#00H
01A1 401D            584             JC      ?C0011
                     585     ;             OSTimeDly(32768);
                     586                             ; SOURCE LINE # 99
01A3 7E80            587             MOV     R6,#080H
01A5 7F00            588             MOV     R7,#00H
01A7 120000   F      589             LCALL   _?OSTimeDly
                     590     ;             OSTimeDly(32768);
                     591                             ; SOURCE LINE # 100
01AA 7E80            592             MOV     R6,#080H
01AC 7F00            593             MOV     R7,#00H
01AE 120000   F      594             LCALL   _?OSTimeDly
                     595     ;             loops--;
                     596                             ; SOURCE LINE # 101
01B1 900004          597             MOV     DPTR,#04H
01B4 120000   F      598             LCALL   ?C?XBPOFF
01B7 74FF            599             MOV     A,#0FFH
01B9 F5F0            600             MOV     B,A
01BB 120000   F      601             LCALL   ?C?IILDX
                     602     ;         }
                     603                             ; SOURCE LINE # 102
01BE 80D1            604             SJMP    ?C0010
01C0                 605     ?C0011:
                     606     ;         return (OS_NO_ERR);
                     607                             ; SOURCE LINE # 103
01C0 7F00            608             MOV     R7,#00H
01C2 8002            609             SJMP    ?C0007
                     610     ;     } else {
                     611                             ; SOURCE LINE # 104
01C4                 612     ?C0004:
                     613     ;         return (OS_TIME_ZERO_DLY);
                     614                             ; SOURCE LINE # 105
01C4 7F54            615             MOV     R7,#054H
                     616     ;     }
                     617                             ; SOURCE LINE # 106
                     618     ; }
                     619                             ; SOURCE LINE # 107
01C6                 620     ?C0007:
01C6 90000B          621             MOV     DPTR,#0BH
01C9 020000   F      622             LJMP    ?C?ADDXBP
                     623     ; END OF _?OSTimeDlyHMSM
                     624     

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?