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

📄 os_core.ls1

📁 uCOS-II_2.52在51上的移植程序
💻 LS1
📖 第 1 页 / 共 5 页
字号:
00E1 01              425             DB      001H
00E2 00              426             DB      000H
00E3 02              427             DB      002H
00E4 00              428             DB      000H
00E5 01              429             DB      001H
00E6 00              430             DB      000H
00E7 03              431             DB      003H
00E8 00              432             DB      000H
00E9 01              433             DB      001H
00EA 00              434             DB      000H
00EB 02              435             DB      002H
00EC 00              436             DB      000H
00ED 01              437             DB      001H
00EE 00              438             DB      000H
00EF 05              439             DB      005H
00F0 00              440             DB      000H
00F1 01              441             DB      001H
00F2 00              442             DB      000H
00F3 02              443             DB      002H
00F4 00              444             DB      000H
00F5 01              445             DB      001H
00F6 00              446             DB      000H
00F7 03              447             DB      003H
00F8 00              448             DB      000H
00F9 01              449             DB      001H
00FA 00              450             DB      000H
00FB 02              451             DB      002H
00FC 00              452             DB      000H
00FD 01              453             DB      001H
A51 MACRO ASSEMBLER  OS_CORE                                                              08/08/2005 12:35:32 PAGE     8

00FE 00              454             DB      000H
00FF 04              455             DB      004H
0100 00              456             DB      000H
0101 01              457             DB      001H
0102 00              458             DB      000H
0103 02              459             DB      002H
0104 00              460             DB      000H
0105 01              461             DB      001H
0106 00              462             DB      000H
0107 03              463             DB      003H
0108 00              464             DB      000H
0109 01              465             DB      001H
010A 00              466             DB      000H
010B 02              467             DB      002H
010C 00              468             DB      000H
010D 01              469             DB      001H
010E 00              470             DB      000H
                     471     
                     472     ; /*
                     473     ; *****************************************************************************************
                             ****************
                     474     ; *                                                uC/OS-II
                     475     ; *                                          The Real-Time Kernel
                     476     ; *                                             CORE FUNCTIONS
                     477     ; *
                     478     ; *                          (c) Copyright 1992-2002, Jean J. Labrosse, Weston, FL
                     479     ; *                                           All Rights Reserved
                     480     ; *
                     481     ; * File : OS_CORE.C
                     482     ; * By   : Jean J. Labrosse
                     483     ; *****************************************************************************************
                             ****************
                     484     ; */
                     485     ; 
                     486     ; #ifndef  OS_MASTER_FILE
                     487     ; #define  OS_GLOBALS
                     488     ; #include "includes.h"
                     489     ; #endif
                     490     ; 
                     491     ; /*
                     492     ; *****************************************************************************************
                             ****************
                     493     ; *                              MAPPING TABLE TO MAP BIT POSITION TO BIT MASK
                     494     ; *
                     495     ; * Note: Index into table is desired bit position, 0..7
                     496     ; *       Indexed value corresponds to bit mask
                     497     ; *****************************************************************************************
                             ****************
                     498     ; */
                     499     ; 
                     500     ; INT8U  const  OSMapTbl[]   = {0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80};
                     501     ; 
                     502     ; /*
                     503     ; *****************************************************************************************
                             ****************
                     504     ; *                                       PRIORITY RESOLUTION TABLE
                     505     ; *
                     506     ; * Note: Index into table is bit pattern to resolve highest priority
                     507     ; *       Indexed value corresponds to highest priority bit position (i.e. 0..7)
                     508     ; *****************************************************************************************
                             ****************
                     509     ; */
                     510     ; 
                     511     ; INT8U  const  OSUnMapTbl[] = {
                     512     ;     0, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,       /* 0x00 to 0x0F                
                                          */
A51 MACRO ASSEMBLER  OS_CORE                                                              08/08/2005 12:35:32 PAGE     9

                     513     ;     4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,       /* 0x10 to 0x1F                
                                          */
                     514     ;     5, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,       /* 0x20 to 0x2F                
                                          */
                     515     ;     4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,       /* 0x30 to 0x3F                
                                          */
                     516     ;     6, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,       /* 0x40 to 0x4F                
                                          */
                     517     ;     4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,       /* 0x50 to 0x5F                
                                          */
                     518     ;     5, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,       /* 0x60 to 0x6F                
                                          */
                     519     ;     4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,       /* 0x70 to 0x7F                
                                          */
                     520     ;     7, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,       /* 0x80 to 0x8F                
                                          */
                     521     ;     4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,       /* 0x90 to 0x9F                
                                          */
                     522     ;     5, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,       /* 0xA0 to 0xAF                
                                          */
                     523     ;     4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,       /* 0xB0 to 0xBF                
                                          */
                     524     ;     6, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,       /* 0xC0 to 0xCF                
                                          */
                     525     ;     4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,       /* 0xD0 to 0xDF                
                                          */
                     526     ;     5, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,       /* 0xE0 to 0xEF                
                                          */
                     527     ;     4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0        /* 0xF0 to 0xFF                
                                          */
                     528     ; };
                     529     ; 
                     530     ; /*
                     531     ; *****************************************************************************************
                             ****************
                     532     ; *                                       FUNCTION PROTOTYPES
                     533     ; *****************************************************************************************
                             ****************
                     534     ; */
                     535     ; static  void  OS_InitEventList(void);
                     536     ; static  void  OS_InitMisc(void);
                     537     ; static  void  OS_InitRdyList(void);
                     538     ; static  void  OS_InitTaskIdle(void);
                     539     ; static  void  OS_InitTaskStat(void);
                     540     ; static  void  OS_InitTCBList(void);
                     541     ; 
                     542     ; /*$PAGE*/
                     543     ; /*
                     544     ; *****************************************************************************************
                             ****************
                     545     ; *                                             INITIALIZATION
                     546     ; *
                     547     ; * Description: This function is used to initialize the internals of uC/OS-II and MUST be 
                             called prior to
                     548     ; *              creating any uC/OS-II object and, prior to calling OSStart().
                     549     ; *
                     550     ; * Arguments  : none
                     551     ; *
                     552     ; * Returns    : none
                     553     ; *****************************************************************************************
                             ****************
                     554     ; */
                     555     ; 
                     556     ; void  OSInit (void) reentrant
                     557     
----                 558             RSEG  ?PR?_?OSInit?OS_CORE
A51 MACRO ASSEMBLER  OS_CORE                                                              08/08/2005 12:35:32 PAGE    10

0000                 559     _?OSInit:
                     560             USING   0
                     561                             ; SOURCE LINE # 85
                     562     ; {
                     563     ; #if OS_VERSION >= 204
                     564     ;     OSInitHookBegin();                                           /* Call port specific in
                             itialization code   */
                     565                             ; SOURCE LINE # 88
0000 120000   F      566             LCALL   OSInitHookBegin
                     567     ; #endif
                     568     ; 
                     569     ;     OS_InitMisc();                                               /* Initialize miscellane
                             ous variables       */
                     570                             ; SOURCE LINE # 91
0003 120000   F      571             LCALL   OS_InitMisc
                     572     ; 
                     573     ;     OS_InitRdyList();                                            /* Initialize the Ready 
                             List                */
                     574                             ; SOURCE LINE # 93
0006 120000   F      575             LCALL   OS_InitRdyList
                     576     ;     OS_InitTCBList();                                            /* Initialize the free l
                             ist of OS_TCBs      */
                     577                             ; SOURCE LINE # 94
0009 120000   F      578             LCALL   OS_InitTCBList
                     579     ;     OS_InitEventList();                                          /* Initialize the free l
                             ist of OS_EVENTs    */
                     580                             ; SOURCE LINE # 95
000C 120000   F      581             LCALL   OS_InitEventList
                     582     ; 
                     583     ; #if (OS_VERSION >= 251) && (OS_FLAG_EN > 0) && (OS_MAX_FLAGS > 0)
                     584     ;     OS_FlagInit();                                               /* Initialize the event 
                             flag structures     */
                     585     ; #endif
                     586     ; 
                     587     ; #if (OS_MEM_EN > 0) && (OS_MAX_MEM_PART > 0)
                     588     ;     OS_MemInit();                                                /* Initialize the memory
                              manager            */
                     589     ; #endif
                     590     ; 
                     591     ; #if (OS_Q_EN > 0) && (OS_MAX_QS > 0)
                     592     ;     OS_QInit();                                                  /* Initialize the messag
                             e queue structures  */
                     593     ; #endif
                     594     ; 
                     595     ;     OS_InitTaskIdle();                                           /* Create the Idle Task 
                                                 */
                     596                             ; SOURCE LINE # 109
000F 120000   F      597             LCALL   OS_InitTaskIdle
                     598     ; #if OS_TASK_STAT_EN > 0
                     599     ;     OS_InitTaskStat();                                           /* Create the Statistic 
                             Task                */
                     600     ; #endif
                     601     ; 
                     602     ; #if OS_VERSION >= 204
                     603     ;     OSInitHookEnd();                                             /* Call port specific in
                             it. code            */

⌨️ 快捷键说明

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