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

📄 os_core.lis

📁 把UCOSII移植到AVR MEGA8上的程序 应用程序为驱动1602显示器,虽说有些简单,但可测试UCOS的运行
💻 LIS
📖 第 1 页 / 共 5 页
字号:
                        .module OS_CORE.c
                        .area lit(rom, con, rel)
 0000           _OSMapTbl::
 0000 0102              .byte 1,2
 0002 0408              .byte 4,8
 0004 1020              .byte 16,32
 0006 4080              .byte 64,128
 0008                   .dbfile F:\AVRPRA~1\ucosii-port2-mega8\OS_CORE.c
 0008                   .dbsym e OSMapTbl _OSMapTbl A[8:8]kc
 0008           _OSUnMapTbl::
 0008 0000              .byte 0,0
 000A 0100              .byte 1,0
 000C 0200              .byte 2,0
 000E 0100              .byte 1,0
 0010 0300              .byte 3,0
 0012 0100              .byte 1,0
 0014 0200              .byte 2,0
 0016 0100              .byte 1,0
 0018 0400              .byte 4,0
 001A 0100              .byte 1,0
 001C 0200              .byte 2,0
 001E 0100              .byte 1,0
 0020 0300              .byte 3,0
 0022 0100              .byte 1,0
 0024 0200              .byte 2,0
 0026 0100              .byte 1,0
 0028 0500              .byte 5,0
 002A 0100              .byte 1,0
 002C 0200              .byte 2,0
 002E 0100              .byte 1,0
 0030 0300              .byte 3,0
 0032 0100              .byte 1,0
 0034 0200              .byte 2,0
 0036 0100              .byte 1,0
 0038 0400              .byte 4,0
 003A 0100              .byte 1,0
 003C 0200              .byte 2,0
 003E 0100              .byte 1,0
 0040 0300              .byte 3,0
 0042 0100              .byte 1,0
 0044 0200              .byte 2,0
 0046 0100              .byte 1,0
 0048 0600              .byte 6,0
 004A 0100              .byte 1,0
 004C 0200              .byte 2,0
 004E 0100              .byte 1,0
 0050 0300              .byte 3,0
 0052 0100              .byte 1,0
 0054 0200              .byte 2,0
 0056 0100              .byte 1,0
 0058 0400              .byte 4,0
 005A 0100              .byte 1,0
 005C 0200              .byte 2,0
 005E 0100              .byte 1,0
 0060 0300              .byte 3,0
 0062 0100              .byte 1,0
 0064 0200              .byte 2,0
 0066 0100              .byte 1,0
 0068 0500              .byte 5,0
 006A 0100              .byte 1,0
 006C 0200              .byte 2,0
 006E 0100              .byte 1,0
 0070 0300              .byte 3,0
 0072 0100              .byte 1,0
 0074 0200              .byte 2,0
 0076 0100              .byte 1,0
 0078 0400              .byte 4,0
 007A 0100              .byte 1,0
 007C 0200              .byte 2,0
 007E 0100              .byte 1,0
 0080 0300              .byte 3,0
 0082 0100              .byte 1,0
 0084 0200              .byte 2,0
 0086 0100              .byte 1,0
 0088 0700              .byte 7,0
 008A 0100              .byte 1,0
 008C 0200              .byte 2,0
 008E 0100              .byte 1,0
 0090 0300              .byte 3,0
 0092 0100              .byte 1,0
 0094 0200              .byte 2,0
 0096 0100              .byte 1,0
 0098 0400              .byte 4,0
 009A 0100              .byte 1,0
 009C 0200              .byte 2,0
 009E 0100              .byte 1,0
 00A0 0300              .byte 3,0
 00A2 0100              .byte 1,0
 00A4 0200              .byte 2,0
 00A6 0100              .byte 1,0
 00A8 0500              .byte 5,0
 00AA 0100              .byte 1,0
 00AC 0200              .byte 2,0
 00AE 0100              .byte 1,0
 00B0 0300              .byte 3,0
 00B2 0100              .byte 1,0
 00B4 0200              .byte 2,0
 00B6 0100              .byte 1,0
 00B8 0400              .byte 4,0
 00BA 0100              .byte 1,0
 00BC 0200              .byte 2,0
 00BE 0100              .byte 1,0
 00C0 0300              .byte 3,0
 00C2 0100              .byte 1,0
 00C4 0200              .byte 2,0
 00C6 0100              .byte 1,0
 00C8 0600              .byte 6,0
 00CA 0100              .byte 1,0
 00CC 0200              .byte 2,0
 00CE 0100              .byte 1,0
 00D0 0300              .byte 3,0
 00D2 0100              .byte 1,0
 00D4 0200              .byte 2,0
 00D6 0100              .byte 1,0
 00D8 0400              .byte 4,0
 00DA 0100              .byte 1,0
 00DC 0200              .byte 2,0
 00DE 0100              .byte 1,0
 00E0 0300              .byte 3,0
 00E2 0100              .byte 1,0
 00E4 0200              .byte 2,0
 00E6 0100              .byte 1,0
 00E8 0500              .byte 5,0
 00EA 0100              .byte 1,0
 00EC 0200              .byte 2,0
 00EE 0100              .byte 1,0
 00F0 0300              .byte 3,0
 00F2 0100              .byte 1,0
 00F4 0200              .byte 2,0
 00F6 0100              .byte 1,0
 00F8 0400              .byte 4,0
 00FA 0100              .byte 1,0
 00FC 0200              .byte 2,0
 00FE 0100              .byte 1,0
 0100 0300              .byte 3,0
 0102 0100              .byte 1,0
 0104 0200              .byte 2,0
 0106 0100              .byte 1,0
 0108                   .dbsym e OSUnMapTbl _OSUnMapTbl A[256:256]kc
                        .area text(rom, con, rel)
 0000                   .dbfile F:\AVRPRA~1\ucosii-port2-mega8\OS_CORE.c
 0000                   .dbfunc e OSInit _OSInit fV
 0000                   .dbstruct 0 9 .1
 0000                   .dbfield 0 OSEventType c
 0000                   .dbfield 1 OSEventGrp c
 0000                   .dbfield 2 OSEventCnt i
 0000                   .dbfield 4 OSEventPtr pV
 0000                   .dbfield 6 OSEventTbl A[3:3]c
 0000                   .dbend
 0000                   .dbstruct 0 16 os_tcb
 0000                   .dbfield 0 OSTCBStkPtr pc
 0000                   .dbfield 2 OSTCBNext pS[os_tcb]
 0000                   .dbfield 4 OSTCBPrev pS[os_tcb]
 0000                   .dbfield 6 OSTCBEventPtr pS[.1]
 0000                   .dbfield 8 OSTCBDly i
 0000                   .dbfield 10 OSTCBStat c
 0000                   .dbfield 11 OSTCBPrio c
 0000                   .dbfield 12 OSTCBX c
 0000                   .dbfield 13 OSTCBY c
 0000                   .dbfield 14 OSTCBBitX c
 0000                   .dbfield 15 OSTCBBitY c
 0000                   .dbend
 0000           ;        prdytbl -> y+5
 0000           ;        pevent2 -> R12,R13
 0000           ;          ptcb2 -> y+3
 0000           ;          ptcb1 -> R14,R15
 0000           ;        pevent1 -> R10,R11
 0000           ;              i -> R4,R5
                        .even
 0000           _OSInit::
 0000 00D0              rcall push_gset5
 0002 2797              sbiw R28,7
 0004                   .dbline -1
 0004                   .dbline 73
 0004           ; /*
 0004           ; *********************************************************************************************************
 0004           ; *                                                uC/OS-II
 0004           ; *                                          The Real-Time Kernel
 0004           ; *                                             CORE FUNCTIONS
 0004           ; *
 0004           ; *                          (c) Copyright 1992-2001, Jean J. Labrosse, Weston, FL
 0004           ; *                                           All Rights Reserved
 0004           ; *
 0004           ; * File : OS_CORE.C
 0004           ; * By   : Jean J. Labrosse
 0004           ; *********************************************************************************************************
 0004           ; */
 0004           ; 
 0004           ; #ifndef  OS_MASTER_FILE
 0004           ; #define  OS_GLOBALS
 0004           ; #include "includes.h"
 0004           ; #endif
 0004           ; 
 0004           ; /*
 0004           ; *********************************************************************************************************
 0004           ; *                              MAPPING TABLE TO MAP BIT POSITION TO BIT MASK
 0004           ; *
 0004           ; * Note: Index into table is desired bit position, 0..7
 0004           ; *       Indexed value corresponds to bit mask
 0004           ; *********************************************************************************************************
 0004           ; */
 0004           ; 
 0004           ; INT8U  const  OSMapTbl[]   = {0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80};
 0004           ; 
 0004           ; /*
 0004           ; *********************************************************************************************************
 0004           ; *                                       PRIORITY RESOLUTION TABLE
 0004           ; *
 0004           ; * Note: Index into table is bit pattern to resolve highest priority
 0004           ; *       Indexed value corresponds to highest priority bit position (i.e. 0..7)
 0004           ; *********************************************************************************************************
 0004           ; */
 0004           ; 
 0004           ; INT8U  const  OSUnMapTbl[] = {
 0004           ;     0, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,
 0004           ;     4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,
 0004           ;     5, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,
 0004           ;     4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,
 0004           ;     6, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,
 0004           ;     4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,
 0004           ;     5, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,
 0004           ;     4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,
 0004           ;     7, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,
 0004           ;     4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,
 0004           ;     5, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,
 0004           ;     4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,
 0004           ;     6, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,
 0004           ;     4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,
 0004           ;     5, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,
 0004           ;     4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0
 0004           ; };
 0004           ; /*$PAGE*/
 0004           ; /*
 0004           ; *********************************************************************************************************
 0004           ; *                                             INITIALIZATION
 0004           ; *
 0004           ; * Description: This function is used to initialize the internals of uC/OS-II and MUST be called prior to
 0004           ; *              creating any uC/OS-II object and, prior to calling OSStart().
 0004           ; *
 0004           ; * Arguments  : none
 0004           ; *
 0004           ; * Returns    : none
 0004           ; *********************************************************************************************************
 0004           ; */
 0004           ; 
 0004           ; void  OSInit (void)
 0004           ; {
 0004                   .dbline 85
 0004           ;     INT16U     i;
 0004           ;     INT8U     *prdytbl;
 0004           ;     OS_TCB    *ptcb1;
 0004           ;     OS_TCB    *ptcb2;
 0004           ; #if (OS_EVENT_EN > 0) && (OS_MAX_EVENTS > 1)
 0004           ;     OS_EVENT  *pevent1;
 0004           ;     OS_EVENT  *pevent2;
 0004           ; #endif
 0004           ; 
 0004           ; 
 0004           ; #if OS_VERSION >= 204
 0004           ;     OSInitHookBegin();                                           /* Call port specific initialization code   */
 0004 00D0              rcall _OSInitHookBegin
 0006                   .dbline 89
 0006           ; #endif
 0006           ; 
 0006           ; #if OS_TIME_GET_SET_EN > 0   
 0006           ;     OSTime        = 0L;                                          /* Clear the 32-bit system clock            */
 0006 40E0              ldi R20,0
 0008 50E0              ldi R21,0
 000A 60E0              ldi R22,0
 000C 70E0              ldi R23,0
 000E 50930100          sts _OSTime+1,R21
 0012 40930000          sts _OSTime,R20
 0016 70930300          sts _OSTime+2+1,R23

⌨️ 快捷键说明

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