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

📄 os_cpu_c.s

📁 uCOS-II工程文件,使用ICC编译。
💻 S
📖 第 1 页 / 共 2 页
字号:
	sbci R21,0
	ldi R24,4
	movw R30,R2
	std z+0,R24
	.dbline 192
;     *stk-- = (INT8U)0x05;
	movw R2,R20
	subi R20,1
	sbci R21,0
	ldi R24,5
	movw R30,R2
	std z+0,R24
	.dbline 193
;     *stk-- = (INT8U)0x06;
	movw R2,R20
	subi R20,1
	sbci R21,0
	ldi R24,6
	movw R30,R2
	std z+0,R24
	.dbline 194
;     *stk-- = (INT8U)0x07;
	movw R2,R20
	subi R20,1
	sbci R21,0
	ldi R24,7
	movw R30,R2
	std z+0,R24
	.dbline 195
;     *stk-- = (INT8U)0x08;
	movw R2,R20
	subi R20,1
	sbci R21,0
	ldi R24,8
	movw R30,R2
	std z+0,R24
	.dbline 196
;     *stk-- = (INT8U)0x09;
	movw R2,R20
	subi R20,1
	sbci R21,0
	ldi R24,9
	movw R30,R2
	std z+0,R24
	.dbline 197
;     *stk-- = (INT8U)0x10;
	movw R2,R20
	subi R20,1
	sbci R21,0
	ldi R24,16
	movw R30,R2
	std z+0,R24
	.dbline 198
;     *stk-- = (INT8U)0x11;
	movw R2,R20
	subi R20,1
	sbci R21,0
	ldi R24,17
	movw R30,R2
	std z+0,R24
	.dbline 199
;     *stk-- = (INT8U)0x12;
	movw R2,R20
	subi R20,1
	sbci R21,0
	ldi R24,18
	movw R30,R2
	std z+0,R24
	.dbline 200
;     *stk-- = (INT8U)0x13;
	movw R2,R20
	subi R20,1
	sbci R21,0
	ldi R24,19
	movw R30,R2
	std z+0,R24
	.dbline 201
;     *stk-- = (INT8U)0x14;
	movw R2,R20
	subi R20,1
	sbci R21,0
	ldi R24,20
	movw R30,R2
	std z+0,R24
	.dbline 202
;     *stk-- = (INT8U)0x15;
	movw R2,R20
	subi R20,1
	sbci R21,0
	ldi R24,21
	movw R30,R2
	std z+0,R24
	.dbline 203
;     tmp    = (INT16U)pdata;
	movw R22,R18
	.dbline 204
;     *stk-- = (INT8U)tmp;	//Simulate call to function with argument
	movw R2,R20
	subi R20,1
	sbci R21,0
	movw R30,R2
	std z+0,R22
	.dbline 205
;     *stk-- = (INT8U)(tmp >> 8);
	movw R2,R20
	subi R20,1
	sbci R21,0
	movw R4,R22
	mov R4,R5
	clr R5
	movw R30,R2
	std z+0,R4
	.dbline 206
;     *stk-- = (INT8U)0x18;
	movw R2,R20
	subi R20,1
	sbci R21,0
	ldi R24,24
	movw R30,R2
	std z+0,R24
	.dbline 207
;     *stk-- = (INT8U)0x19;
	movw R2,R20
	subi R20,1
	sbci R21,0
	ldi R24,25
	movw R30,R2
	std z+0,R24
	.dbline 208
;     *stk-- = (INT8U)0x20;
	movw R2,R20
	subi R20,1
	sbci R21,0
	ldi R24,32
	movw R30,R2
	std z+0,R24
	.dbline 209
;     *stk-- = (INT8U)0x21;
	movw R2,R20
	subi R20,1
	sbci R21,0
	ldi R24,33
	movw R30,R2
	std z+0,R24
	.dbline 210
;     *stk-- = (INT8U)0x22;
	movw R2,R20
	subi R20,1
	sbci R21,0
	ldi R24,34
	movw R30,R2
	std z+0,R24
	.dbline 211
;     *stk-- = (INT8U)0x23;
	movw R2,R20
	subi R20,1
	sbci R21,0
	ldi R24,35
	movw R30,R2
	std z+0,R24
	.dbline 212
;     *stk-- = (INT8U)0x24;
	movw R2,R20
	subi R20,1
	sbci R21,0
	ldi R24,36
	movw R30,R2
	std z+0,R24
	.dbline 213
;     *stk-- = (INT8U)0x25;
	movw R2,R20
	subi R20,1
	sbci R21,0
	ldi R24,37
	movw R30,R2
	std z+0,R24
	.dbline 214
;     *stk-- = (INT8U)0x26;
	movw R2,R20
	subi R20,1
	sbci R21,0
	ldi R24,38
	movw R30,R2
	std z+0,R24
	.dbline 215
;     *stk-- = (INT8U)0x27;
	movw R2,R20
	subi R20,1
	sbci R21,0
	ldi R24,39
	movw R30,R2
	std z+0,R24
	.dbline 217
; 	// the heap pointer Y=R29:R28 will not be stored
;     *stk-- = (INT8U)0x30;
	movw R2,R20
	subi R20,1
	sbci R21,0
	ldi R24,48
	movw R30,R2
	std z+0,R24
	.dbline 218
;     *stk-- = (INT8U)0x31;
	movw R2,R20
	subi R20,1
	sbci R21,0
	ldi R24,49
	movw R30,R2
	std z+0,R24
	.dbline 220
; //    *stk-- = (INT8U)0x3B;
;     *stk-- = (INT8U)0x80;	//SREG = Interrupts enabled
	movw R2,R20
	subi R20,1
	sbci R21,0
	ldi R24,128
	movw R30,R2
	std z+0,R24
	.dbline 222
; 
;     tmp    = (INT16U)(stks);
	movw R22,R10
	.dbline 223
;     *stk-- = (INT8U)(tmp >> 8);
	movw R2,R20
	subi R20,1
	sbci R21,0
	movw R4,R22
	mov R4,R5
	clr R5
	movw R30,R2
	std z+0,R4
	.dbline 224
;     *stk   = (INT8U)(tmp);
	movw R30,R20
	std z+0,R22
	.dbline 225
;     return ((void *)stk);
	movw R16,R30
	.dbline -2
L7:
	xcall pop_gset3
	.dbline 0 ; func end
	ret
	.dbsym r stks 10 pc
	.dbsym r tmp 22 i
	.dbsym r stk 20 pc
	.dbsym l opt 8 i
	.dbsym l ptos 6 pc
	.dbsym r pdata 18 pV
	.dbsym r task 16 pfV
	.dbend
	.dbfunc e OSTaskSwHook _OSTaskSwHook fV
	.even
_OSTaskSwHook::
	.dbline -1
	.dbline 245
; }
; /*$PAGE*/
; /*
; *********************************************************************************************************
; *                                           TASK SWITCH HOOK
; *
; * Description: This function is called when a task switch is performed.  This allows you to perform other
; *              operations during a context switch.
; *
; * Arguments  : none
; *
; * Note(s)    : 1) Interrupts are disabled during this call.
; *              2) It is assumed that the global pointer 'OSTCBHighRdy' points to the TCB of the task that
; *                 will be 'switched in' (i.e. the highest priority task) and, 'OSTCBCur' points to the 
; *                 task being switched out (i.e. the preempted task).
; *********************************************************************************************************
; */
; #if (OS_CPU_HOOKS_EN > 0) && (OS_TASK_SW_HOOK_EN > 0)
; void  OSTaskSwHook (void)
; {
	.dbline -2
L8:
	.dbline 0 ; func end
	ret
	.dbend
	.dbfunc e OSTCBInitHook _OSTCBInitHook fV
;           ptcb -> R16,R17
	.even
_OSTCBInitHook::
	.dbline -1
	.dbline 265
; #ifdef OS_VIEW_MODULE
;     OSView_TaskSwHook();
; #endif
; }
; #endif
; 
; /*
; *********************************************************************************************************
; *                                           OS_TCBInit() HOOK
; *
; * Description: This function is called by OS_TCBInit() after setting up most of the TCB.
; *
; * Arguments  : ptcb    is a pointer to the TCB of the task being created.
; *
; * Note(s)    : 1) Interrupts may or may not be ENABLED during this call.
; *********************************************************************************************************
; */
; #if OS_CPU_HOOKS_EN > 0 && OS_VERSION > 203
; void  OSTCBInitHook (OS_TCB *ptcb)
; {
	.dbline 266
;     ptcb = ptcb;                                           /* Prevent Compiler warning                 */
	.dbline -2
L9:
	.dbline 0 ; func end
	ret
	.dbsym r ptcb 16 pS[os_tcb]
	.dbend
	.dbfunc e OSTimeTickHook _OSTimeTickHook fV
	.even
_OSTimeTickHook::
	.dbline -1
	.dbline 284
; }
; #endif
; 
; 
; /*
; *********************************************************************************************************
; *                                               TICK HOOK
; *
; * Description: This function is called every tick.
; *
; * Arguments  : none
; *
; * Note(s)    : 1) Interrupts may or may not be ENABLED during this call.
; *********************************************************************************************************
; */
; #if (OS_CPU_HOOKS_EN > 0) && (OS_TIME_TICK_HOOK_EN > 0)
; void  OSTimeTickHook (void)
; {
	.dbline -2
L10:
	.dbline 0 ; func end
	ret
	.dbend
	.area bss(ram, con, rel)
	.dbfile C:\DOCUME~1\qihaijun\桌面\17_uCOSⅡ\ICC\os_cpu_c.c
_OSTaskHardStkSize::
	.blkb 2
	.dbfile C:/DOCUME~1/qihaijun/桌面/17_uCOSⅡ/ICC/os_cpu.h
	.dbsym e OSTaskHardStkSize _OSTaskHardStkSize i
_OSTaskStkSize::
	.blkb 2
	.dbsym e OSTaskStkSize _OSTaskStkSize i

⌨️ 快捷键说明

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