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

📄 os_cpu_c.ls1

📁 ucos2 程序代码!!!!!可用与51单片机
💻 LS1
📖 第 1 页 / 共 4 页
字号:
                     441                             ; SOURCE LINE # 90
014C A800     F      442             MOV     R0,?C_IBP
014E 08              443             INC     R0
014F 06              444             INC     @R0
0150 E6              445             MOV     A,@R0
0151 18              446             DEC     R0
0152 8606            447             MOV     AR6,@R0
0154 7001            448             JNZ     ?C0020
0156 06              449             INC     @R0
0157                 450     ?C0020:
0157 14              451             DEC     A
0158 F582            452             MOV     DPL,A
015A 8E83            453             MOV     DPH,R6
015C 7403            454             MOV     A,#03H
015E F0              455             MOVX    @DPTR,A
                     456     ;     *stk++ = 0x04;                              /* R4         */
                     457                             ; SOURCE LINE # 91
015F A800     F      458             MOV     R0,?C_IBP
0161 08              459             INC     R0
0162 06              460             INC     @R0
0163 E6              461             MOV     A,@R0
0164 18              462             DEC     R0
0165 8606            463             MOV     AR6,@R0
0167 7001            464             JNZ     ?C0021
0169 06              465             INC     @R0
016A                 466     ?C0021:
016A 14              467             DEC     A
016B F582            468             MOV     DPL,A
016D 8E83            469             MOV     DPH,R6
016F 7404            470             MOV     A,#04H
0171 F0              471             MOVX    @DPTR,A
                     472     ;     *stk++ = 0x05;                              /* R5         */
                     473                             ; SOURCE LINE # 92
0172 A800     F      474             MOV     R0,?C_IBP
0174 08              475             INC     R0
0175 06              476             INC     @R0
0176 E6              477             MOV     A,@R0
0177 18              478             DEC     R0
0178 8606            479             MOV     AR6,@R0
017A 7001            480             JNZ     ?C0022
017C 06              481             INC     @R0
017D                 482     ?C0022:
017D 14              483             DEC     A
017E F582            484             MOV     DPL,A
0180 8E83            485             MOV     DPH,R6
0182 7405            486             MOV     A,#05H
0184 F0              487             MOVX    @DPTR,A
                     488     ;     *stk++ = 0x06;                              /* R6         */
                     489                             ; SOURCE LINE # 93
0185 A800     F      490             MOV     R0,?C_IBP
0187 08              491             INC     R0
0188 06              492             INC     @R0
0189 E6              493             MOV     A,@R0
018A 18              494             DEC     R0
018B 8606            495             MOV     AR6,@R0
018D 7001            496             JNZ     ?C0023
018F 06              497             INC     @R0
A51 MACRO ASSEMBLER  OS_CPU_C                                                             03/19/2009 12:41:50 PAGE     9

0190                 498     ?C0023:
0190 14              499             DEC     A
0191 F582            500             MOV     DPL,A
0193 8E83            501             MOV     DPH,R6
0195 7406            502             MOV     A,#06H
0197 F0              503             MOVX    @DPTR,A
                     504     ;     *stk++ = 0x07;                              /* R7         */
                     505                             ; SOURCE LINE # 94
0198 A800     F      506             MOV     R0,?C_IBP
019A 08              507             INC     R0
019B 06              508             INC     @R0
019C E6              509             MOV     A,@R0
019D 18              510             DEC     R0
019E 8606            511             MOV     AR6,@R0
01A0 7001            512             JNZ     ?C0024
01A2 06              513             INC     @R0
01A3                 514     ?C0024:
01A3 14              515             DEC     A
01A4 F582            516             MOV     DPL,A
01A6 8E83            517             MOV     DPH,R6
01A8 7407            518             MOV     A,#07H
01AA F0              519             MOVX    @DPTR,A
                     520     ;                                                 
                     521     ;     return ((void DT_XDATA *)ptos);                           /* note return ptos, not st
                             k */
                     522                             ; SOURCE LINE # 96
01AB AF05            523             MOV     R7,AR5
01AD AE04            524             MOV     R6,AR4
                     525     ; }
                     526                             ; SOURCE LINE # 97
01AF                 527     ?C0001:
01AF E500     F      528             MOV     A,?C_IBP
01B1 240A            529             ADD     A,#0AH
01B3 F500     F      530             MOV     ?C_IBP,A
01B5 22              531             RET     
                     532     ; END OF _?OSTaskStkInit
                     533     
----                 534     CSEG    AT      0000BH
000B 020000   F      535             LJMP    OSTickISR
                     536     
                     537     ; 
                     538     ; /*
                     539     ; *****************************************************************************************
                             ****************
                     540     ; *                                          OS Time ISR
                     541     ; *
                     542     ; * Description: use T0.
                     543     ; *
                     544     ; * Arguments  : 
                     545     ; *
                     546     ; * Note(s)    : in default, OSTickISR using register bank 0. Register pushing code will ad
                             ded by keilC.
                     547     ; *****************************************************************************************
                             ****************
                     548     ; */
                     549     ; void OSTickISR() interrupt 1
                     550     
----                 551             RSEG  ?PR?OSTickISR?OS_CPU_C
                     552             USING   0
0000                 553     OSTickISR:
0000 C0E0            554             PUSH    ACC
0002 C0F0            555             PUSH    B
0004 C083            556             PUSH    DPH
0006 C082            557             PUSH    DPL
0008 C0D0            558             PUSH    PSW
000A 75D000          559             MOV     PSW,#00H
A51 MACRO ASSEMBLER  OS_CPU_C                                                             03/19/2009 12:41:50 PAGE    10

000D C000            560             PUSH    AR0
000F C001            561             PUSH    AR1
0011 C002            562             PUSH    AR2
0013 C003            563             PUSH    AR3
0015 C004            564             PUSH    AR4
0017 C005            565             PUSH    AR5
0019 C006            566             PUSH    AR6
001B C007            567             PUSH    AR7
                     568             USING   0
                     569                             ; SOURCE LINE # 110
                     570     ; {
                     571     ;       TL0 = TIMER_24M_25MS_L;
                     572                             ; SOURCE LINE # 112
001D 758AAA          573             MOV     TL0,#0AAH
                     574     ;       TH0 = TIMER_24M_25MS_H;
                     575                             ; SOURCE LINE # 113
0020 758C3C          576             MOV     TH0,#03CH
                     577     ; 
                     578     ;       OSIntEnter();
                     579                             ; SOURCE LINE # 115
0023 120000   F      580             LCALL   _?OSIntEnter
                     581     ;       OSTimeTick();
                     582                             ; SOURCE LINE # 116
0026 120000   F      583             LCALL   _?OSTimeTick
                     584     ;       OSIntExit();
                     585                             ; SOURCE LINE # 117
0029 120000   F      586             LCALL   _?OSIntExit
                     587     ; }
                     588                             ; SOURCE LINE # 118
002C D007            589             POP     AR7
002E D006            590             POP     AR6
0030 D005            591             POP     AR5
0032 D004            592             POP     AR4
0034 D003            593             POP     AR3
0036 D002            594             POP     AR2
0038 D001            595             POP     AR1
003A D000            596             POP     AR0
003C D0D0            597             POP     PSW
003E D082            598             POP     DPL
0040 D083            599             POP     DPH
0042 D0F0            600             POP     B
0044 D0E0            601             POP     ACC
0046 32              602             RETI    
                     603     ; END OF OSTickISR
                     604     
                     605     ; 
                     606     ; 
                     607     ; /*$PAGE*/
                     608     ; #if OS_CPU_HOOKS_EN
                     609     ; /*
                     610     ; *****************************************************************************************
                             ****************
                     611     ; *                                          TASK CREATION HOOK
                     612     ; *
                     613     ; * Description: This function is called when a task is created.
                     614     ; *
                     615     ; * Arguments  : ptcb   is a pointer to the task control block of the task being created.
                     616     ; *
                     617     ; * Note(s)    : 1) Interrupts are disabled during this call.
                     618     ; *****************************************************************************************
                             ****************
                     619     ; */
                     620     ; void OSTaskCreateHook (OS_TCB DT_XDATA *ptcb) REENTRANT
                     621     
----                 622             RSEG  ?PR?_?OSTaskCreateHook?OS_CPU_C
0000                 623     _?OSTaskCreateHook:
A51 MACRO ASSEMBLER  OS_CPU_C                                                             03/19/2009 12:41:50 PAGE    11

                     624             USING   0
                     625                             ; SOURCE LINE # 134
0000 1500     F      626             DEC     ?C_IBP
0002 1500     F      627             DEC     ?C_IBP
0004 A800     F      628             MOV     R0,?C_IBP
0006 A606            629             MOV     @R0,AR6
0008 08              630             INC     R0
0009 A607            631             MOV     @R0,AR7
                     632     ; {
                     633     ;     ptcb = ptcb;                       /* Prevent compiler warning                       
                                           */
                     634                             ; SOURCE LINE # 136
000B A800     F      635             MOV     R0,?C_IBP
000D E6              636             MOV     A,@R0
000E FE              637             MOV     R6,A
000F 08              638             INC     R0
0010 E6              639             MOV     A,@R0
0011 FF              640             MOV     R7,A
0012 A800     F      641             MOV     R0,?C_IBP
0014 A606            642             MOV     @R0,AR6
0016 08              643             INC     R0
0017 A607            644             MOV     @R0,AR7
                     645     ; }
                     646                             ; SOURCE LINE # 137
0019 0500     F      647             INC     ?C_IBP
001B 0500     F      648             INC     ?C_IBP
001D 22              649             RET     
                     650     ; END OF _?OSTaskCreateHook
                     651     
                     652     ; 
                     653     ; 
                     654     ; /*
                     655     ; *****************************************************************************************
                             ****************
                     656     ; *                                           TASK DELETION HOOK
                     657     ; *
                     658     ; * Description: This function is called when a task is deleted.
                     659     ; *
                     660     ; * Arguments  : ptcb   is a pointer to the task control block of the task being deleted.
                     661     ; *
                     662     ; * Note(s)    : 1) Interrupts are disabled during this call.
                     663     ; *****************************************************************************************
                             ****************
                     664     ; */
                     665     ; void OSTaskDelHook (OS_TCB DT_XDATA *ptcb) REENTRANT
                     666     
----                 667             RSEG  ?PR?_?OSTaskDelHook?OS_CPU_C
0000                 668     _?OSTaskDelHook:

⌨️ 快捷键说明

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