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

📄 os_cpu_a.lst

📁 UCOS在51上的移植,绝对经典!可以较少开发人员的工作量
💻 LST
字号:
A51 MACRO ASSEMBLER  OS_CPU_A                                                             04/25/2005 23:03:52 PAGE     1


MACRO ASSEMBLER A51 V7.10
OBJECT MODULE PLACED IN OS_CPU_A.obj
ASSEMBLER INVOKED BY: D:\tools\Keil\C51\BIN\A51.EXE Port\OS_CPU_A.ASM SET(LARGE) DEBUG PRINT(.\OS_CPU_A.lst) OBJECT(OS_C
                      PU_A.obj) EP

LOC  OBJ            LINE     SOURCE

                       1     ;******************************************************************************************
                             **************
                       2     ;                                               uC/OS-II
                       3     ;                                         The Real-Time Kernel
                       4     ;
                       5     ;                          (c) Copyright 1992-2002, Jean J. Labrosse, Weston, FL
                       6     ;                                          All Rights Reserved
                       7     ;
                       8     ;
                       9     ;                                       at89c55wd Specific code
                      10     ;                                          LARGE MEMORY MODEL
                      11     ;
                      12     ;                                           keil C/C++ V4.51
                      13     ;                                       (at89c55wd Compatible Target)
                      14     ;
                      15     ; File         : OS_CPU_A.ASM
                      16     ; By           : Jean J. Labrosse
                      17     ;******************************************************************************************
                             **************
                      18     
                      19     ;******************************************************************************************
                             **************
                      20     ;                                    要使用的外部函数和公共数据
                      21     ;******************************************************************************************
                             **************
                      22     
                      23     ;            EXTRN  _OSIntExit:FAR
                      24     ;            EXTRN  _OSTimeTick:FAR
                      25                 EXTRN CODE  (_?OSTaskSwHook)
                      26     
                      27                 EXTRN DATA  (?C_XBP)
                      28     ;            EXTRN  _OSIntNesting:BYTE
                      29     ;            EXTRN  _OSTickDOSCtr:BYTE
                      30      ;           EXTRN  _OSPrioHighRdy:BYTE
                      31      ;           EXTRN  _OSPrioCur:BYTE
                      32                 EXTRN BIT   (_OSRunning)
                      33     ;            EXTRN  _OSTCBCur:DWORD
                      34     ;            EXTRN  _OSTCBHighRdy:DWORD
                      35     
                      36     ;******************************************************************************************
                             **************
                      37     ;                                    MACRO DEFINE
                      38     ;******************************************************************************************
                             **************
                      39     PUSHALL MACRO
                      40             ;PUSH   PC      
                      41             PUSH    ACC
                      42             PUSH    B
                      43             PUSH    DPH
                      44             PUSH    DPL
                      45             PUSH    PSW
                      46             PUSH    AR0
                      47             PUSH    AR1
                      48             PUSH    AR2
                      49             PUSH    AR3
                      50             PUSH    AR4
                      51             PUSH    AR5
A51 MACRO ASSEMBLER  OS_CPU_A                                                             04/25/2005 23:03:52 PAGE     2

                      52             PUSH    AR6
                      53             PUSH    AR7
                      54             ENDM
                      55     POPALL  MACRO
                      56             POP     AR7
                      57             POP     AR6
                      58             POP     AR5
                      59             POP     AR4
                      60             POP     AR3
                      61             POP     AR2
                      62             POP     AR1
                      63             POP     AR0
                      64             POP     PSW
                      65             POP     DPL
                      66             POP     DPH
                      67             POP     B
                      68             POP     ACC
                      69             ;RET/RETI
                      70             ENDM
                      71     ;******************************************************************************************
                             **************
                      72     ;                                    供外部使用的函数
                      73     ;******************************************************************************************
                             **************
                      74     ;            PUBLIC _OSTickISR
                      75                  PUBLIC _?OSStartHighRdy
                      76                  PUBLIC _?OSCtxSw
                      77     ;            PUBLIC _OSIntCtxSw
                      78     ;******************************************************************************************
                             **************
                      79     ;                                    数据段
                      80     ;******************************************************************************************
                             **************
                      81     
                      82     
                      83     
                      84     ;******************************************************************************************
                             **************
                      85     ;                                    函数体段
                      86     ;******************************************************************************************
                             **************
                      87     ;******************************************************************************************
                             ***************
                      88     ;                                          START MULTITASKING
                      89     ;                                       void OSStartHighRdy(void) LG_REENTRANT
                      90     ;出栈后就意味着启动了第一个任务
                      91     ; The stack frame is assumed to look as follows:
                      92     ;
                      93     ;                       出      /\                      出栈:task底\高         (高内存)
                      94     ;                       栈      ||                      出栈:ACC
                      95     ;                       顺      ||                      出栈:B
                      96     ;                       序      ||                      出栈:DPH               //暂时忽略

⌨️ 快捷键说明

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