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

📄 my51os.m51

📁 基本STC4052写的一个小的OS, 完成了任务调度功能,及堆栈空间切换, 及中断处理
💻 M51
📖 第 1 页 / 共 5 页
字号:
BL51 BANKED LINKER/LOCATER V6.00                                                        11/24/2006  11:35:22  PAGE 1


BL51 BANKED LINKER/LOCATER V6.00, INVOKED BY:
C:\KEIL3\C51\BIN\BL51.EXE .\OBJ\STARTUP.obj, .\OBJ\ir.obj, .\OBJ\uart.obj, .\OBJ\task.obj, .\OBJ\main.obj, .\OBJ\os.obj,
>>  .\OBJ\OsTimer.obj, .\OBJ\sw_int.obj TO .\OBJ\MY51OS PRINT (.\OBJ\MY51OS.m51) RAMSIZE (256) CODE (?PR?_?ISRADRFUN?SW_
>> INT (0X0003))


MEMORY MODEL: SMALL


INPUT MODULES INCLUDED:
  .\OBJ\STARTUP.obj (?C_STARTUP)
  .\OBJ\ir.obj (IR)
  .\OBJ\uart.obj (UART)
  .\OBJ\task.obj (TASK)
  .\OBJ\main.obj (MAIN)
  .\OBJ\os.obj (OS)
  .\OBJ\OsTimer.obj (OSTIMER)
  .\OBJ\sw_int.obj (SW_INT)
  C:\KEIL3\C51\LIB\C51S.LIB (?C?CLDPTR)
  C:\KEIL3\C51\LIB\C51S.LIB (?C?CSTPTR)
  C:\KEIL3\C51\LIB\C51S.LIB (?C?CSTOPTR)
  C:\KEIL3\C51\LIB\C51S.LIB (?C?ICALL)
  C:\KEIL3\C51\LIB\C51S.LIB (?C_IBP)


LINK MAP OF MODULE:  .\OBJ\MY51OS (?C_STARTUP)


            TYPE    BASE      LENGTH    RELOCATION   SEGMENT NAME
            -----------------------------------------------------

            * * * * * * *   D A T A   M E M O R Y   * * * * * * *
            REG     0000H     0008H     ABSOLUTE     "REG BANK 0"
            DATA    0008H     0009H     UNIT         ?DT?IR
            DATA    0011H     0007H     UNIT         ?DT?OSTIMER
            DATA    0018H     0004H     UNIT         ?DT?UART
            DATA    001CH     0003H     UNIT         ?DT?TASK
            DATA    001FH     0001H     UNIT         ?DT?SW_INT
            BIT     0020H.0   0000H.3   UNIT         ?BI?OS
            BIT     0020H.3   0000H.2   UNIT         ?BI?UART
            BIT     0020H.5   0000H.1   UNIT         ?BI?TASK
                    0020H.6   0000H.2                *** GAP ***
            DATA    0021H     003BH     UNIT         ?DT?OS
            DATA    005CH     0003H     UNIT         _DATA_GROUP_
            DATA    005FH     0001H     UNIT         ?C?LIB_DATA
            IDATA   0060H     006EH     UNIT         ?ID?MAIN
            IDATA   00CEH     000DH     UNIT         ?ID?UART
            IDATA   00DBH     0005H     UNIT         ?ID?IR
            IDATA   00E0H     0001H     UNIT         ?STACK

            * * * * * * *   C O D E   M E M O R Y   * * * * * * *
            CODE    0000H     0003H     ABSOLUTE     
            CODE    0003H     004EH     INBLOCK      ?PR?_?ISRADRFUN?SW_INT
            CODE    0051H     0127H     INBLOCK      ?PR?_?IR_DECODE?IR
            CODE    0178H     0106H     INBLOCK      ?PR?_?TASK_UART?TASK
            CODE    027EH     00FDH     INBLOCK      ?PR?_?OSTASKSWITCH?SW_INT
            CODE    037BH     00F3H     INBLOCK      ?PR?_?OSTASKCREATE?OS
            CODE    046EH     00B9H     INBLOCK      ?PR?_SETTIMER?OSTIMER
BL51 BANKED LINKER/LOCATER V6.00                                                      11/24/2006  11:35:22  PAGE 2


            CODE    0527H     009EH     INBLOCK      ?PR?_?OSSTACKINIT?OS
            CODE    05C5H     007BH     INBLOCK      ?PR?_?OSTASKKILL?OS
            CODE    0640H     0078H     INBLOCK      ?PR?_?SRL_GETREVPACK?UART
            CODE    06B8H     0075H     INBLOCK      ?PR?_?OSSENDMSG?OS
            CODE    072DH     0071H     INBLOCK      ?PR?_?IR_GETREVDATA?IR
            CODE    079EH     005DH     INBLOCK      ?PR?_?OSDEALDELAY?OS
                    07FBH     0005H                  *** GAP ***
            CODE    0800H     006FH     INBLOCK      ?PR?_?SRL_REVCHAR?UART
            CODE    086FH     006EH     INBLOCK      ?PR?IR_CAPTUREINT6?SW_INT
            CODE    08DDH     0066H     INBLOCK      ?PR?SYSTIMER0?SW_INT
            CODE    0943H     005BH     INBLOCK      ?PR?_?SRL_SENDPACK?UART
            CODE    099EH     0053H     UNIT         ?C?LIB_CODE
            CODE    09F1H     0052H     INBLOCK      ?PR?TIMER10MSPROC?OSTIMER
            CODE    0A43H     004EH     INBLOCK      ?PR?UARTISR?SW_INT
            CODE    0A91H     004DH     INBLOCK      ?PR?_?OSINIT?OS
            CODE    0ADEH     004CH     UNIT         ?CO?TASK
            CODE    0B2AH     004AH     INBLOCK      ?PR?MAIN?MAIN
            CODE    0B74H     0046H     INBLOCK      ?PR?_?OSTASKSW?SW_INT
            CODE    0BBAH     0043H     INBLOCK      ?PR?_KILLTIMER?OSTIMER
            CODE    0BFDH     0042H     INBLOCK      ?PR?_?UARTPRINT?UART
            CODE    0C3FH     0041H     INBLOCK      ?PR?_?TASK_IR?TASK
            CODE    0C80H     003AH     INBLOCK      ?PR?_?OSDELAY?OS
            CODE    0CBAH     0039H     INBLOCK      ?PR?_?IR_FINDIR?IR
            CODE    0CF3H     0030H     INBLOCK      ?PR?_?TASK_LED3?TASK
            CODE    0D23H     0028H     UNIT         ?CO?IR
            CODE    0D4BH     0027H     INBLOCK      ?PR?_?IR_INIT?IR
            CODE    0D72H     0025H     INBLOCK      ?PR?_?MCUINIT?TASK
            CODE    0D97H     0022H     INBLOCK      ?PR?_?SRL_INIT?UART
            CODE    0DB9H     0020H     INBLOCK      ?PR?_?OSWAITMSG?OS
            CODE    0DD9H     001CH     INBLOCK      ?PR?_?TASK_LED1?TASK
            CODE    0DF5H     001CH     INBLOCK      ?PR?_?TASK_LED2?TASK
            CODE    0E11H     001CH     INBLOCK      ?PR?_?OSINTEXIT?SW_INT
            CODE    0E2DH     001BH     INBLOCK      ?PR?_?OSSTART?OS
            CODE    0E48H     0016H     INBLOCK      ?PR?_?UARTREQ?UART
            CODE    0E5EH     0014H     INBLOCK      ?PR?TIMERINIT?OSTIMER
            CODE    0E72H     0011H     INBLOCK      ?PR?_?OSTASKIDLE?OS
            CODE    0E83H     000FH     UNIT         ?C_C51STARTUP
            CODE    0E92H     000EH     INBLOCK      ?PR?_?LED3TIMERPROC?TASK
            CODE    0EA0H     000CH     INBLOCK      ?PR?_?UARTFREE?UART
            CODE    0EACH     0009H     UNIT         ?CO?MAIN
            CODE    0EB5H     0009H     INBLOCK      ?PR?_OSFREERES?OS



OVERLAY MAP OF MODULE:   .\OBJ\MY51OS (?C_STARTUP)


SEGMENT                             DATA_GROUP 
  +--> CALLED SEGMENT             START    LENGTH
-------------------------------------------------
?C_C51STARTUP                     -----    -----
  +--> ?PR?MAIN?MAIN

?PR?MAIN?MAIN                     -----    -----
  +--> ?PR?_?MCUINIT?TASK
  +--> ?CO?MAIN
  +--> ?PR?_?UARTPRINT?UART
BL51 BANKED LINKER/LOCATER V6.00                                                      11/24/2006  11:35:22  PAGE 3


  +--> ?PR?TIMERINIT?OSTIMER
  +--> ?PR?_?OSINIT?OS
  +--> ?PR?_?TASK_UART?TASK
  +--> ?PR?_?OSTASKCREATE?OS
  +--> ?PR?_?TASK_IR?TASK
  +--> ?PR?_?TASK_LED3?TASK
  +--> ?PR?_?OSSTART?OS

?PR?_?MCUINIT?TASK                -----    -----
  +--> ?PR?_?ISRADRFUN?SW_INT
  +--> ?PR?_?SRL_INIT?UART
  +--> ?PR?_?IR_INIT?IR

?PR?_?ISRADRFUN?SW_INT            -----    -----
  +--> ?PR?SYSTIMER0?SW_INT
  +--> ?PR?UARTISR?SW_INT
  +--> ?PR?IR_CAPTUREINT6?SW_INT

?PR?SYSTIMER0?SW_INT              -----    -----
  +--> ?PR?_?OSDEALDELAY?OS
  +--> ?PR?TIMER10MSPROC?OSTIMER
  +--> ?PR?_?OSINTEXIT?SW_INT

?PR?TIMER10MSPROC?OSTIMER         005CH    0001H

?PR?_?OSINTEXIT?SW_INT            -----    -----
  +--> ?PR?_?OSTASKSWITCH?SW_INT

?PR?UARTISR?SW_INT                -----    -----
  +--> ?PR?_?SRL_REVCHAR?UART
  +--> ?PR?_?OSINTEXIT?SW_INT

?PR?_?SRL_REVCHAR?UART            -----    -----
  +--> ?PR?_?OSSENDMSG?OS

?PR?_?OSSENDMSG?OS                -----    -----
  +--> ?PR?_?OSTASKSW?SW_INT

?PR?_?OSTASKSW?SW_INT             -----    -----
  +--> ?PR?_?OSTASKSWITCH?SW_INT

?PR?IR_CAPTUREINT6?SW_INT         -----    -----
  +--> ?PR?_?IR_DECODE?IR
  +--> ?PR?_?OSINTEXIT?SW_INT

?PR?_?IR_DECODE?IR                -----    -----
  +--> ?PR?_?OSSENDMSG?OS

?PR?_?OSINIT?OS                   -----    -----
  +--> ?PR?_?OSTASKIDLE?OS
  +--> ?PR?_?OSTASKCREATE?OS

?PR?_?OSTASKIDLE?OS               -----    -----
  +--> ?PR?_?OSTASKSW?SW_INT

?PR?_?OSTASKCREATE?OS             -----    -----
  +--> ?PR?_?OSSTACKINIT?OS
BL51 BANKED LINKER/LOCATER V6.00                                                      11/24/2006  11:35:22  PAGE 4



?PR?_?TASK_UART?TASK              -----    -----
  +--> ?PR?_?UARTREQ?UART
  +--> ?CO?TASK
  +--> ?PR?_?UARTPRINT?UART
  +--> ?PR?_?UARTFREE?UART
  +--> ?PR?_?SRL_GETREVPACK?UART
  +--> ?PR?_?SRL_SENDPACK?UART
  +--> ?PR?_?OSTASKKILL?OS
  +--> ?PR?_?TASK_LED2?TASK
  +--> ?PR?_?TASK_LED1?TASK
  +--> ?PR?_?TASK_LED3?TASK
  +--> ?PR?_?OSTASKCREATE?OS
  +--> ?PR?_?OSWAITMSG?OS

?PR?_?UARTREQ?UART                -----    -----
  +--> ?PR?_?OSDELAY?OS

?PR?_?OSDELAY?OS                  -----    -----
  +--> ?PR?_?OSTASKSW?SW_INT

?PR?_?UARTFREE?UART               -----    -----
  +--> ?PR?_?OSDELAY?OS

?PR?_?OSTASKKILL?OS               -----    -----
  +--> ?PR?_OSFREERES?OS
  +--> ?PR?_?OSTASKSW?SW_INT

?PR?_?TASK_LED2?TASK              -----    -----
  +--> ?PR?_?UARTREQ?UART
  +--> ?CO?TASK
  +--> ?PR?_?UARTPRINT?UART
  +--> ?PR?_?UARTFREE?UART
  +--> ?PR?_?OSDELAY?OS

?PR?_?TASK_LED1?TASK              -----    -----
  +--> ?PR?_?UARTREQ?UART
  +--> ?CO?TASK
  +--> ?PR?_?UARTPRINT?UART
  +--> ?PR?_?UARTFREE?UART
  +--> ?PR?_?OSDELAY?OS

?PR?_?TASK_LED3?TASK              -----    -----
  +--> ?PR?_?UARTREQ?UART
  +--> ?CO?TASK
  +--> ?PR?_?UARTPRINT?UART
  +--> ?PR?_?UARTFREE?UART
  +--> ?PR?_?LED3TIMERPROC?TASK
  +--> ?PR?_SETTIMER?OSTIMER
  +--> ?PR?_?OSDELAY?OS

?PR?_?LED3TIMERPROC?TASK          -----    -----
  +--> ?PR?_KILLTIMER?OSTIMER

?PR?_KILLTIMER?OSTIMER            005CH    0003H

?PR?_SETTIMER?OSTIMER             005CH    0003H
BL51 BANKED LINKER/LOCATER V6.00                                                      11/24/2006  11:35:22  PAGE 5



?PR?_?OSWAITMSG?OS                -----    -----
  +--> ?PR?_?OSTASKSW?SW_INT

?PR?_?TASK_IR?TASK                -----    -----
  +--> ?PR?_?UARTREQ?UART
  +--> ?CO?TASK
  +--> ?PR?_?UARTPRINT?UART
  +--> ?PR?_?UARTFREE?UART
  +--> ?PR?_?IR_GETREVDATA?IR
  +--> ?PR?_?SRL_SENDPACK?UART
  +--> ?PR?_?OSWAITMSG?OS

?PR?_?IR_GETREVDATA?IR            -----    -----
  +--> ?PR?_?IR_FINDIR?IR

?PR?_?IR_FINDIR?IR                -----    -----
  +--> ?CO?IR



SYMBOL TABLE OF MODULE:  .\OBJ\MY51OS (?C_STARTUP)

  VALUE           TYPE          NAME
  ----------------------------------

  -------         MODULE        ?C_STARTUP
  C:0E83H         SEGMENT       ?C_C51STARTUP
  I:00E0H         SEGMENT       ?STACK
  C:0000H         PUBLIC        ?C_STARTUP
  D:00E0H         SYMBOL        ACC
  D:00F0H         SYMBOL        B
  D:0083H         SYMBOL        DPH
  D:0082H         SYMBOL        DPL
  N:0001H         SYMBOL        IBPSTACK
  N:0100H         SYMBOL        IBPSTACKTOP
  N:0080H         SYMBOL        IDATALEN
  C:0E86H         SYMBOL        IDATALOOP
  N:0000H         SYMBOL        PBPSTACK
  N:0100H         SYMBOL        PBPSTACKTOP
  N:0000H         SYMBOL        PDATALEN
  N:0000H         SYMBOL        PDATASTART
  N:0000H         SYMBOL        PPAGE
  N:0000H         SYMBOL        PPAGEENABLE
  D:00A0H         SYMBOL        PPAGE_SFR
  D:0081H         SYMBOL        SP
  C:0E83H         SYMBOL        STARTUP1
  N:0000H         SYMBOL        XBPSTACK
  N:0000H         SYMBOL        XBPSTACKTOP
  N:0000H         SYMBOL        XDATALEN
  N:0000H         SYMBOL        XDATASTART
  C:0000H         LINE#         127
  C:0E83H         LINE#         134
  C:0E85H         LINE#         135
  C:0E86H         LINE#         136
  C:0E87H         LINE#         137
  C:0E89H         LINE#         171
BL51 BANKED LINKER/LOCATER V6.00                                                      11/24/2006  11:35:22  PAGE 6


  C:0E8CH         LINE#         186
  C:0E8FH         LINE#         197
  -------         ENDMOD        ?C_STARTUP

  -------         MODULE        IR
  C:0000H         SYMBOL        _ICE_DUMMY_
  D:0090H         PUBLIC        P1
  D:00F9H         PUBLIC        CH
  D:00A8H         PUBLIC        IE
  D:00E9H         PUBLIC        CL
  D:00FAH         PUBLIC        CCAP0H
  D:00FBH         PUBLIC        CCAP1H
  B:00D8H.6       PUBLIC        CR
  D:00EAH         PUBLIC        CCAP0L
  D:00EBH         PUBLIC        CCAP1L
  D:00DAH         PUBLIC        CCAPM0
  D:00DBH         PUBLIC        CCAPM1
  D:00D9H         PUBLIC        CMOD
  D:00D8H         PUBLIC        CCON
  I:00DBH         PUBLIC        gu8IRData
  C:0D4BH         PUBLIC        _?IR_Init
  D:0008H         PUBLIC        lIrFirst
  D:0009H         PUBLIC        gu8IRState
  C:0CBAH         SYMBOL        _?IR_FindIR
  I:00DCH         PUBLIC        gu8IRBuf
  C:0051H         PUBLIC        _?IR_Decode
  D:000AH         PUBLIC        lIrSubTime
  C:072DH         PUBLIC        _?IR_GetRevData
  C:0D23H         PUBLIC        gIRTable
  D:000CH         PUBLIC        lIrOldCnt
  D:000EH         PUBLIC        lIrBitCnt
  D:000FH         PUBLIC        lIrNewCnt
  -------         PROC          _?IR_FINDIR
  i:0001H         SYMBOL        cmd
  -------         DO            
  i:0000H         SYMBOL        i
  -------         ENDDO         
  C:0CBAH         LINE#         46
  C:0CC2H         LINE#         48
  C:0CC6H         LINE#         49
  C:0CD8H         LINE#         50
  C:0CD8H         LINE#         51

⌨️ 快捷键说明

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