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

📄 ucosii.lst

📁 ucos-ii-at90S-icc-avr
💻 LST
📖 第 1 页 / 共 5 页
字号:
    0173 2DE2      MOV	R30,R2
    0174 2DF3      MOV	R31,R3
    0175 8380      STD	R24,0+Z
(0101)     *stk-- = (INT8U)0x19;
    0176 2E24      MOV	R2,R20
    0177 2E35      MOV	R3,R21
    0178 5041      SUBI	R20,1
    0179 4050      SBCI	R21,0
    017A E189      LDI	R24,0x19
    017B 2DE2      MOV	R30,R2
    017C 2DF3      MOV	R31,R3
    017D 8380      STD	R24,0+Z
(0102)     *stk-- = (INT8U)0x20;
    017E 2E24      MOV	R2,R20
    017F 2E35      MOV	R3,R21
    0180 5041      SUBI	R20,1
    0181 4050      SBCI	R21,0
    0182 E280      LDI	R24,0x20
    0183 2DE2      MOV	R30,R2
    0184 2DF3      MOV	R31,R3
    0185 8380      STD	R24,0+Z
(0103)     *stk-- = (INT8U)0x21;
    0186 2E24      MOV	R2,R20
    0187 2E35      MOV	R3,R21
    0188 5041      SUBI	R20,1
    0189 4050      SBCI	R21,0
    018A E281      LDI	R24,0x21
    018B 2DE2      MOV	R30,R2
    018C 2DF3      MOV	R31,R3
    018D 8380      STD	R24,0+Z
(0104)     *stk-- = (INT8U)0x22;
    018E 2E24      MOV	R2,R20
    018F 2E35      MOV	R3,R21
    0190 5041      SUBI	R20,1
    0191 4050      SBCI	R21,0
    0192 E282      LDI	R24,0x22
    0193 2DE2      MOV	R30,R2
    0194 2DF3      MOV	R31,R3
    0195 8380      STD	R24,0+Z
(0105)     *stk-- = (INT8U)0x23;
    0196 2E24      MOV	R2,R20
    0197 2E35      MOV	R3,R21
    0198 5041      SUBI	R20,1
    0199 4050      SBCI	R21,0
    019A E283      LDI	R24,0x23
    019B 2DE2      MOV	R30,R2
    019C 2DF3      MOV	R31,R3
    019D 8380      STD	R24,0+Z
(0106)     *stk-- = (INT8U)0x24;
    019E 2E24      MOV	R2,R20
    019F 2E35      MOV	R3,R21
    01A0 5041      SUBI	R20,1
    01A1 4050      SBCI	R21,0
    01A2 E284      LDI	R24,0x24
    01A3 2DE2      MOV	R30,R2
    01A4 2DF3      MOV	R31,R3
    01A5 8380      STD	R24,0+Z
(0107)     *stk-- = (INT8U)0x25;
    01A6 2E24      MOV	R2,R20
    01A7 2E35      MOV	R3,R21
    01A8 5041      SUBI	R20,1
    01A9 4050      SBCI	R21,0
    01AA E285      LDI	R24,0x25
    01AB 2DE2      MOV	R30,R2
    01AC 2DF3      MOV	R31,R3
    01AD 8380      STD	R24,0+Z
(0108)     *stk-- = (INT8U)0x26;
    01AE 2E24      MOV	R2,R20
    01AF 2E35      MOV	R3,R21
    01B0 5041      SUBI	R20,1
    01B1 4050      SBCI	R21,0
    01B2 E286      LDI	R24,0x26
    01B3 2DE2      MOV	R30,R2
    01B4 2DF3      MOV	R31,R3
    01B5 8380      STD	R24,0+Z
(0109)     *stk-- = (INT8U)0x27;
    01B6 2E24      MOV	R2,R20
    01B7 2E35      MOV	R3,R21
    01B8 5041      SUBI	R20,1
    01B9 4050      SBCI	R21,0
    01BA E287      LDI	R24,0x27
    01BB 2DE2      MOV	R30,R2
    01BC 2DF3      MOV	R31,R3
    01BD 8380      STD	R24,0+Z
(0110) 	// the heap pointer Y=R29:R28 will not be stored
(0111)     *stk-- = (INT8U)0x30;
    01BE 2E24      MOV	R2,R20
    01BF 2E35      MOV	R3,R21
    01C0 5041      SUBI	R20,1
    01C1 4050      SBCI	R21,0
    01C2 E380      LDI	R24,0x30
    01C3 2DE2      MOV	R30,R2
    01C4 2DF3      MOV	R31,R3
    01C5 8380      STD	R24,0+Z
(0112)     *stk-- = (INT8U)0x31;
    01C6 2E24      MOV	R2,R20
    01C7 2E35      MOV	R3,R21
    01C8 5041      SUBI	R20,1
    01C9 4050      SBCI	R21,0
    01CA E381      LDI	R24,0x31
    01CB 2DE2      MOV	R30,R2
    01CC 2DF3      MOV	R31,R3
    01CD 8380      STD	R24,0+Z
(0113)     *stk-- = (INT8U)0x3B;
    01CE 2E24      MOV	R2,R20
    01CF 2E35      MOV	R3,R21
    01D0 5041      SUBI	R20,1
    01D1 4050      SBCI	R21,0
    01D2 E38B      LDI	R24,0x3B
    01D3 2DE2      MOV	R30,R2
    01D4 2DF3      MOV	R31,R3
    01D5 8380      STD	R24,0+Z
(0114)     *stk-- = (INT8U)0x80;	//SREG = Interrupts enabled
    01D6 2E24      MOV	R2,R20
    01D7 2E35      MOV	R3,R21
    01D8 5041      SUBI	R20,1
    01D9 4050      SBCI	R21,0
    01DA E880      LDI	R24,0x80
    01DB 2DE2      MOV	R30,R2
    01DC 2DF3      MOV	R31,R3
    01DD 8380      STD	R24,0+Z
(0115) 
(0116)     tmp    = (INT16U)(stks);
    01DE 2D6A      MOV	R22,R10
    01DF 2D7B      MOV	R23,R11
(0117)     *stk-- = (INT8U)(tmp >> 8);
    01E0 2E24      MOV	R2,R20
    01E1 2E35      MOV	R3,R21
    01E2 5041      SUBI	R20,1
    01E3 4050      SBCI	R21,0
    01E4 2E46      MOV	R4,R22
    01E5 2E57      MOV	R5,R23
    01E6 2C45      MOV	R4,R5
    01E7 2455      CLR	R5
    01E8 2DE2      MOV	R30,R2
    01E9 2DF3      MOV	R31,R3
    01EA 8240      STD	R4,0+Z
(0118)     *stk   = (INT8U)(tmp);
    01EB 2FE4      MOV	R30,R20
    01EC 2FF5      MOV	R31,R21
    01ED 8360      STD	R22,0+Z
(0119)     return ((void *)stk);
    01EE 2F04      MOV	R16,R20
    01EF 2F15      MOV	R17,R21
    01F0 DB30      RCALL	pop_gset4
    01F1 9508      RET
(0120) }
(0121) 
(0122) #if OS_CPU_HOOKS_EN
(0123) /*
(0124) ********************************************************************************
(0125) *                       TASK CREATION HOOK
(0126) *
(0127) * Description: This function is called when a task is created.
(0128) *
(0129) * Arguments:
(0130) *		ptcb is a pointer to the task control block of the task being created.
(0131) *
(0132) * Note(s):	1) Interrupts are disabled during this call.
(0133) ********************************************************************************
(0134) */
(0135) void OSTaskCreateHook (OS_TCB *ptcb)
(0136) {
(0137)     ptcb = ptcb;		// Prevent compiler warning
(0138) }
_OSTaskCreateHook:
  ptcb                 --> R16
    01F2 9508      RET
(0139) 
(0140) 
(0141) /*
(0142) ********************************************************************************
(0143) *                      TASK DELETION HOOK
(0144) *
(0145) * Description: This function is called when a task is deleted.
(0146) *
(0147) * Arguments: 
(0148) *		ptcb is a pointer to the task control block of the task being deleted.
(0149) *
(0150) * Note(s):	1) Interrupts are disabled during this call.
(0151) ********************************************************************************
(0152) */
(0153) void OSTaskDelHook (OS_TCB *ptcb)
(0154) {
(0155)     ptcb = ptcb;		// Prevent compiler warning
(0156) }
_OSTaskDelHook:
  ptcb                 --> R16
    01F3 9508      RET
(0157) 
(0158) /*
(0159) ********************************************************************************
(0160) *                       TASK SWITCH HOOK
(0161) *
(0162) * Description:
(0163) *	This function is called when a task switch is performed.  This allows you to
(0164) *	perform other operations during a context switch.
(0165) *
(0166) * Arguments:	none
(0167) *
(0168) * Note(s):
(0169) *	1) Interrupts are disabled during this call.
(0170) *	2) It is assumed that the global pointer 'OSTCBHighRdy' points to the TCB
(0171) *		of the task that will be 'switched in' (i.e. the highest priority task)
(0172) *		and, 'OSTCBCur' points to the task being switched out (i.e. the 
(0173) *		preempted task).
(0174) ********************************************************************************
(0175) */
(0176) void OSTaskSwHook (void)
(0177) {
(0178) }
_OSTaskSwHook:
    01F4 9508      RET
(0179) 
(0180) /*
(0181) ********************************************************************************
(0182) *                       STATISTIC TASK HOOK
(0183) *
(0184) * Description:
(0185) *	This function is called every second by uC/OS-II's statistics task.  This 
(0186) *	allows your application to add functionality to the statistics task.
(0187) *
(0188) * Arguments:	none
(0189) ********************************************************************************
(0190) */
(0191) void OSTaskStatHook (void)
(0192) {
(0193) }
_OSTaskStatHook:
    01F5 9508      RET
(0194) 
(0195) /*
(0196) ********************************************************************************
(0197) *                 TICK HOOK
(0198) *
(0199) * Description: This function is called every tick.
(0200) *
(0201) * Arguments  : none
(0202) *
(0203) * Note(s)    : 1) Interrupts may or may not be ENABLED during this call.
(0204) ********************************************************************************
(0205) */
(0206) void OSTimeTickHook (void)
(0207) {
(0208) }
_OSTimeTickHook:
    01F6 9508      RET
(0209) #endif
(0210) 
(0211) //by zhaowd
(0212) void Init_Timer1_CompareA()
(0213) { 	    					   
(0214)     TCCR0       = 0x05;                                 /* Set TIMER0 prescaler to CLK/1024                 */
_Init_Timer1_CompareA:
    01F7 E085      LDI	R24,5
    01F8 BF83      OUT	P33,R24
(0215)     TIMSK       = 0x02;                                 /* Enable TIMER0 overflow interrupt                 */
    01F9 E082      LDI	R24,2
    01FA BF89      OUT	P39,R24
(0216) //    UBRR        = 23;                                   /* 19200 BAUD at 7.3728MHz                          */
(0217) //    MCUCR      |= 0x80;                                 /* Enable external RAM                              */
(0218) //    UCR         = 0x08;                                 /* Enable UART transmitter                          */
(0219) }
    01FB 9508      RET
(0220) //*****************************************************************************
(0221) //			TickISR
(0222) //*****************************************************************************
(0223) // Init Timer/Counter2 fuer Takterzeugung
(0224) void TC2_Init (void){	
(0225)     Init_Timer1_CompareA();	
(0226) //    UBRR        = 23;                                   /* 19200 BAUD at 7.3728MHz                          */
(0227) //    MCUCR      |= 0x80;                                 /* Enable external RAM                              */
(0228) //    UCR         = 0x08;                                 /* Enable UART transmitter                          */
(0229) //    UartTxCount = 0;                                    /* Clear number of characters to send               */
(0230) //    UartTxRdPtr = 0;                                    /* Initialize transmit buffer read pointer          */
(0231) //    UartTxWrPtr = 0;                                    /* Initialize transmit buffer write pointer         */
(0232) 	/**/
(0233)     //not SEI!!
(0234) 	//SEI();
(0235) }
_TC2_Init:
    01FC CFFA      RJMP	_Init_Timer1_CompareA
FILE: C:\software\UCOS-II\ucos2_iccavr\iccavr\source\default_hook_functions.c
(0001) /* default no op hook functions */
(0002) void OSInitHookBegin(void) {}
_OSInitHookBegin:
    01FD 9508      RET
(0003) void OSTCBInitHook(void *junk) {}
_OSTCBInitHook:
  junk                 --> Y+0
    01FE 9508      RET
(0004) void OSInitHookEnd(void) {}_OSInitHookEnd:
    01FF 9508      RET
_OSEventTaskRdy:
  prio                 --> R12
  bity                 --> R10
  bitx                 --> R20
  x                    --> R12
  ptcb                 --> R12
  y                    --> R22
  msk                  --> Y+8
  msg                  --> R18
  pevent               --> R16
    0200 DB19      RCALL	push_gset4
FILE: C:\software\UCOS-II\ucos2_iccavr\iccavr\source\os_core.c
(0001) /*
(0002) *********************************************************************************************************
(0003) *                                                uC/OS-II
(0004) *                                          The Real-Time Kernel
(0005) *                                             CORE FUNCTIONS
(0006) *
(0007) *                        (c) Copyright 1992-1998, Jean J. Labrosse, Plantation, FL
(0008) *                                           All Rights Reserved
(0009) *
(0010) *                                                  V2.00
(0011) *
(0012) * File : OS_CORE.C
(0013) * By   : Jean J. Labrosse
(0014) *********************************************************************************************************
(0015) */
(0016) 
(0017) #ifndef  OS_MASTER_FILE
(0018) #define  OS_GLOBALS
(0019) #include "includes.h"
(0020) #endif
(0021) 
(0022) /*
(0023) *********************************************************************************************************
(0024) *                                         LOCAL GLOBAL VARIABLES
(0025) *********************************************************************************************************
(0026) */
(0027)                                        
(0028) static  INT8U        OSIntExitY;               /* Variable used by 'OSIntExit' to prevent using locals */
(0029) 
(0030) static  OS_STK       OSTaskIdleStk[OS_TASK_IDLE_STK_SIZE];       /* Idle       task stack              */

⌨️ 快捷键说明

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