?? os_cpu_c.lis
字號:
014A F101 movw R30,R2
014C 8083 std z+0,R24
014E .dbline 206
014E ; *psoft_stk-- = (INT8U)0x21; /* R21 = 0x21 */
014E 1A01 movw R2,R20
0150 4150 subi R20,1
0152 5040 sbci R21,0
0154 81E2 ldi R24,33
0156 F101 movw R30,R2
0158 8083 std z+0,R24
015A .dbline 207
015A ; *psoft_stk-- = (INT8U)0x22; /* R22 = 0x22 */
015A 1A01 movw R2,R20
015C 4150 subi R20,1
015E 5040 sbci R21,0
0160 82E2 ldi R24,34
0162 F101 movw R30,R2
0164 8083 std z+0,R24
0166 .dbline 208
0166 ; *psoft_stk-- = (INT8U)0x23; /* R23 = 0x23 */
0166 1A01 movw R2,R20
0168 4150 subi R20,1
016A 5040 sbci R21,0
016C 83E2 ldi R24,35
016E F101 movw R30,R2
0170 8083 std z+0,R24
0172 .dbline 209
0172 ; *psoft_stk-- = (INT8U)0x24; /* R24 = 0x24 */
0172 1A01 movw R2,R20
0174 4150 subi R20,1
0176 5040 sbci R21,0
0178 84E2 ldi R24,36
017A F101 movw R30,R2
017C 8083 std z+0,R24
017E .dbline 210
017E ; *psoft_stk-- = (INT8U)0x25; /* R25 = 0x25 */
017E 1A01 movw R2,R20
0180 4150 subi R20,1
0182 5040 sbci R21,0
0184 85E2 ldi R24,37
0186 F101 movw R30,R2
0188 8083 std z+0,R24
018A .dbline 211
018A ; *psoft_stk-- = (INT8U)0x26; /* R26 = 0x26 */
018A 1A01 movw R2,R20
018C 4150 subi R20,1
018E 5040 sbci R21,0
0190 86E2 ldi R24,38
0192 F101 movw R30,R2
0194 8083 std z+0,R24
0196 .dbline 212
0196 ; *psoft_stk-- = (INT8U)0x27; /* R27 = 0x27 */
0196 1A01 movw R2,R20
0198 4150 subi R20,1
019A 5040 sbci R21,0
019C 87E2 ldi R24,39
019E F101 movw R30,R2
01A0 8083 std z+0,R24
01A2 .dbline 215
01A2 ; /* R28 R29:R28 is the software stack which gets ... */
01A2 ; /* R29 ... stored in the task's OS_TCB. */
01A2 ; *psoft_stk-- = (INT8U)0x30; /* R30 = 0x30 */
01A2 1A01 movw R2,R20
01A4 4150 subi R20,1
01A6 5040 sbci R21,0
01A8 80E3 ldi R24,48
01AA F101 movw R30,R2
01AC 8083 std z+0,R24
01AE .dbline 216
01AE ; *psoft_stk-- = (INT8U)0x31; /* R31 = 0x31 */
01AE 1A01 movw R2,R20
01B0 4150 subi R20,1
01B2 5040 sbci R21,0
01B4 81E3 ldi R24,49
01B6 F101 movw R30,R2
01B8 8083 std z+0,R24
01BA .dbline 217
01BA ; *psoft_stk-- = (INT8U)0x00; /* RAMPZ = 0x00 */
01BA 1A01 movw R2,R20
01BC 4150 subi R20,1
01BE 5040 sbci R21,0
01C0 4424 clr R4
01C2 F101 movw R30,R2
01C4 4082 std z+0,R4
01C6 .dbline 218
01C6 ; *psoft_stk-- = (INT8U)0x80; /* SREG = Interrupts enabled */
01C6 1A01 movw R2,R20
01C8 4150 subi R20,1
01CA 5040 sbci R21,0
01CC 80E8 ldi R24,128
01CE F101 movw R30,R2
01D0 8083 std z+0,R24
01D2 .dbline 219
01D2 ; tmp = (INT16U)phard_stk;
01D2 B501 movw R22,R10
01D4 .dbline 220
01D4 ; *psoft_stk-- = (INT8U)(tmp >> 8); /* SPH */
01D4 1A01 movw R2,R20
01D6 4150 subi R20,1
01D8 5040 sbci R21,0
01DA 2B01 movw R4,R22
01DC 452C mov R4,R5
01DE 5524 clr R5
01E0 F101 movw R30,R2
01E2 4082 std z+0,R4
01E4 .dbline 221
01E4 ; *psoft_stk = (INT8U) tmp; /* SPL */
01E4 FA01 movw R30,R20
01E6 6083 std z+0,R22
01E8 .dbline 222
01E8 ; return ((void *)psoft_stk);
01E8 8F01 movw R16,R30
01EA .dbline -2
01EA L7:
01EA 0E940000 xcall pop_gset3
01EE .dbline 0 ; func end
01EE 0895 ret
01F0 .dbsym r phard_stk 10 pc
01F0 .dbsym r tmp 22 i
01F0 .dbsym r psoft_stk 20 pc
01F0 .dbsym l opt 8 i
01F0 .dbsym l ptos 6 pc
01F0 .dbsym r p_arg 18 pV
01F0 .dbsym r task 16 pfV
01F0 .dbend
01F0 .dbfunc e OSTaskSwHook _OSTaskSwHook fV
.even
01F0 _OSTaskSwHook::
01F0 .dbline -1
01F0 .dbline 243
01F0 ; }
01F0 ;
01F0 ; /*$PAGE*/
01F0 ; /*
01F0 ; *********************************************************************************************************
01F0 ; * TASK SWITCH HOOK
01F0 ; *
01F0 ; * Description: This function is called when a task switch is performed. This allows you to perform other
01F0 ; * operations during a context switch.
01F0 ; *
01F0 ; * Arguments : none
01F0 ; *
01F0 ; * Note(s) : 1) Interrupts are disabled during this call.
01F0 ; * 2) It is assumed that the global pointer 'OSTCBHighRdy' points to the TCB of the task that
01F0 ; * will be 'switched in' (i.e. the highest priority task) and, 'OSTCBCur' points to the
01F0 ; * task being switched out (i.e. the preempted task).
01F0 ; *********************************************************************************************************
01F0 ; */
01F0 ; #if (OS_CPU_HOOKS_EN > 0) && (OS_TASK_SW_HOOK_EN > 0)
01F0 ; void OSTaskSwHook (void)
01F0 ; {
01F0 .dbline -2
01F0 .dbline 247
01F0 ; #ifdef OS_VIEW_MODULE
01F0 ; OSView_TaskSwHook();
01F0 ; #endif
01F0 ; }
01F0 L8:
01F0 .dbline 0 ; func end
01F0 0895 ret
01F2 .dbend
01F2 .dbfunc e OSTCBInitHook _OSTCBInitHook fV
01F2 ; ptcb -> R16,R17
.even
01F2 _OSTCBInitHook::
01F2 .dbline -1
01F2 .dbline 263
01F2 ; #endif
01F2 ;
01F2 ; /*
01F2 ; *********************************************************************************************************
01F2 ; * OS_TCBInit() HOOK
01F2 ; *
01F2 ; * Description: This function is called by OS_TCBInit() after setting up most of the TCB.
01F2 ; *
01F2 ; * Arguments : ptcb is a pointer to the TCB of the task being created.
01F2 ; *
01F2 ; * Note(s) : 1) Interrupts may or may not be ENABLED during this call.
01F2 ; *********************************************************************************************************
01F2 ; */
01F2 ; #if OS_CPU_HOOKS_EN > 0 && OS_VERSION > 203
01F2 ; void OSTCBInitHook (OS_TCB *ptcb)
01F2 ; {
01F2 .dbline 264
01F2 ; ptcb = ptcb; /* Prevent Compiler warning */
01F2 .dbline -2
01F2 .dbline 265
01F2 ; }
01F2 L9:
01F2 .dbline 0 ; func end
01F2 0895 ret
01F4 .dbsym r ptcb 16 pX
01F4 .dbend
01F4 .dbfunc e OSTimeTickHook _OSTimeTickHook fV
.even
01F4 _OSTimeTickHook::
01F4 .dbline -1
01F4 .dbline 282
01F4 ; #endif
01F4 ;
01F4 ;
01F4 ; /*
01F4 ; *********************************************************************************************************
01F4 ; * TICK HOOK
01F4 ; *
01F4 ; * Description: This function is called every tick.
01F4 ; *
01F4 ; * Arguments : none
01F4 ; *
01F4 ; * Note(s) : 1) Interrupts may or may not be ENABLED during this call.
01F4 ; *********************************************************************************************************
01F4 ; */
01F4 ; #if (OS_CPU_HOOKS_EN > 0) && (OS_TIME_TICK_HOOK_EN > 0)
01F4 ; void OSTimeTickHook (void)
01F4 ; {
01F4 .dbline -2
01F4 .dbline 286
01F4 ; #ifdef OS_VIEW_MODULE
01F4 ; OSView_TickHook();
01F4 ; #endif
01F4 ; }
01F4 L10:
01F4 .dbline 0 ; func end
01F4 0895 ret
01F6 .dbend
.area bss(ram, con, rel)
0000 .dbfile C:\UCOS-II_AVR_ICC\RTOSIC~1\source\os_cpu_c.c
0000 _OSTaskHardStkSize::
0000 .blkb 2
0002 .dbfile /UCOS-II_AVR_ICC/RTOSIC~1/source/os_cpu.h
0002 .dbsym e OSTaskHardStkSize _OSTaskHardStkSize i
0002 _OSTaskStkSize::
0002 .blkb 2
0004 .dbsym e OSTaskStkSize _OSTaskStkSize i
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -