os_cpu_c.txt
来自「uc/os在lpc2100系列的KEIL模板 uc/os在lpc2100系列的」· 文本 代码 · 共 322 行 · 第 1/2 页
TXT
322 行
;;;221 }
;;;222 }
;;;223 break;
;;;224 case 0x83: /* 任务是THUMB代码 */
;;;225 if (Regs[0] <= OS_LOWEST_PRIO)
;;;226 {
;;;227 ptcb = OSTCBPrioTbl[Regs[0]];
;;;228 if (ptcb != NULL)
;;;229 {
;;;230 ptcb -> OSTCBStkPtr[1] |= (1 << 5);
;;;231 }
;;;232 }
;;;233 break;
;;;234 default:
;;;235 break;
;;;236 }
;;;237 }
000094 e12fff1e BX lr
|L1.152|
000098 e59f20f4 LDR r2,|L1.404|
00009c e3500082 CMP r0,#0x82 ;132
0000a0 0a000022 BEQ |L1.304|
0000a4 e3500083 CMP r0,#0x83 ;132
0000a8 1afffff9 BNE |L1.148|
0000ac e5910000 LDR r0,[r1,#0] ;225
0000b0 e350000c CMP r0,#0xc ;225
0000b4 cafffff6 BGT |L1.148|
0000b8 e7920100 LDR r0,[r2,r0,LSL #2] ;227
0000bc e3500000 CMP r0,#0 ;228
0000c0 0afffff3 BEQ |L1.148|
0000c4 e5900000 LDR r0,[r0,#0] ;230
0000c8 e5901004 LDR r1,[r0,#4] ;230
0000cc e3811020 ORR r1,r1,#0x20 ;230
0000d0 e5801004 STR r1,[r0,#4] ;230
0000d4 eaffffee B |L1.148|
|L1.216|
0000d8 e14f0000 MRS r0,SPSR ;141
0000dc e3800080 ORR r0,r0,#0x80 ;142
0000e0 e161f000 MSR SPSR_c,r0 ;143
0000e4 e2810001 ADD r0,r1,#1 ;145
0000e8 e5820000 STR r0,[r2,#0] ;145 ; OsEnterSum
0000ec eaffffe8 B |L1.148|
|L1.240|
0000f0 e3510000 CMP r1,#0 ;148
0000f4 0a000001 BEQ |L1.256|
0000f8 e2410001 SUB r0,r1,#1 ;148
0000fc e5820000 STR r0,[r2,#0] ;148 ; OsEnterSum
|L1.256|
000100 e5920000 LDR r0,[r2,#0] ;149 ; OsEnterSum
000104 e3500000 CMP r0,#0 ;149
000108 1affffe1 BNE |L1.148|
00010c e14f0000 MRS r0,SPSR ;153
000110 e3c00080 BIC r0,r0,#0x80 ;154
000114 e161f000 MSR SPSR_c,r0 ;155
000118 eaffffdd B |L1.148|
|L1.284|
00011c e14f0000 MRS r0,SPSR ;208
000120 e3c0001f BIC r0,r0,#0x1f ;209
000124 e3800010 ORR r0,r0,#0x10 ;210
000128 e161f000 MSR SPSR_c,r0 ;211
00012c eaffffd8 B |L1.148|
|L1.304|
000130 e5910000 LDR r0,[r1,#0] ;215
000134 e350000c CMP r0,#0xc ;215
000138 caffffd5 BGT |L1.148|
00013c e7920100 LDR r0,[r2,r0,LSL #2] ;217
000140 e3500000 CMP r0,#0 ;218
000144 0affffd2 BEQ |L1.148|
000148 e5900000 LDR r0,[r0,#0] ;220
00014c e5901004 LDR r1,[r0,#4] ;220
000150 e3c11020 BIC r1,r1,#0x20 ;220
000154 e5801004 STR r1,[r0,#4] ;220
000158 eaffffcd B |L1.148|
;;;238
ENDP
OSStartHighRdy PROC
;;;256 void OSStartHighRdy(void)
;;;257 {
00015c e92d4010 PUSH {r4,lr}
;;;258 _OSStartHighRdy();
000160 ef000001 SVC #0x1
;;;259 }
000164 e8bd4010 POP {r4,lr}
000168 e12fff1e BX lr
;;;260
ENDP
OSInitHookBegin PROC
;;;279 {
;;;280 }
00016c e12fff1e BX lr
;;;281 #endif
ENDP
OSInitHookEnd PROC
;;;297 {
;;;298 }
000170 e12fff1e BX lr
;;;299 #endif
ENDP
OSTaskCreateHook PROC
;;;315 ptcb = ptcb; /* Prevent compiler warning */
;;;316 }
000174 e12fff1e BX lr
;;;317
ENDP
OSTaskDelHook PROC
;;;332 ptcb = ptcb; /* Prevent compiler warning */
;;;333 }
000178 e12fff1e BX lr
;;;334
ENDP
OSTaskSwHook PROC
;;;351 {
;;;352 }
00017c e12fff1e BX lr
;;;353
ENDP
OSTaskStatHook PROC
;;;365 {
;;;366 }
000180 e12fff1e BX lr
;;;367
ENDP
OSTCBInitHook PROC
;;;382 ptcb = ptcb; /* Prevent Compiler warning */
;;;383 }
000184 e12fff1e BX lr
;;;384 #endif
ENDP
OSTimeTickHook PROC
;;;399 {
;;;400 }
000188 e12fff1e BX lr
;;;401
ENDP
OSTaskIdleHook PROC
;;;417 {
;;;418 }
00018c e12fff1e BX lr
;;;419 #endif
ENDP
|L1.400|
000190 00000000 DCD ||.data||
|L1.404|
000194 00000000 DCD OSTCBPrioTbl
AREA ||.data||, DATA, ALIGN=2
OsEnterSum
000000 00000000 DCD 0x00000000
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?