📄 app.txt
字号:
00031a 466a MOV r2,sp
00031c 210a MOVS r1,#0xa
00031e 68b0 LDR r0,[r6,#8] ; AppUserIFMbox
000320 f7fffffe BL OSMboxPend
;;;381 if (err == OS_NO_ERR) {
000324 f89d1000 LDRB r1,[sp,#0]
000328 b901 CBNZ r1,|L1.812|
;;;382 nstate = (CPU_INT32U)msg;
00032a 4604 MOV r4,r0
|L1.812|
;;;383 }
;;;384
;;;385 if (nstate != pstate) {
00032c 42ac CMP r4,r5
00032e d002 BEQ |L1.822|
;;;386 LCD_Clear();
000330 f7fffffe BL LCD_Clear
;;;387 pstate = nstate;
000334 4625 MOV r5,r4
|L1.822|
;;;388 }
;;;389
;;;390 switch (nstate) {
000336 2c02 CMP r4,#2
000338 d102 BNE |L1.832|
;;;391 case 2:
;;;392 AppDispScr_TaskNames();
00033a f7fffffe BL AppDispScr_TaskNames
;;;393 break;
00033e e7ec B |L1.794|
|L1.832|
;;;394
;;;395 case 1:
;;;396 default:
;;;397 AppDispScr_SignOn();
000340 f7fffffe BL AppDispScr_SignOn
;;;398 break;
000344 e7e9 B |L1.794|
;;;399 }
;;;400 }
;;;401 }
;;;402
ENDP
AppTaskCreate PROC
;;;297 static void AppTaskCreate (void)
;;;298 {
000346 b500 PUSH {lr}
000348 b087 SUB sp,sp,#0x1c
;;;299 CPU_INT08U err;
;;;300
;;;301
;;;302 OSTaskCreateExt(AppTaskUserIF,
00034a 2303 MOVS r3,#3
00034c 2200 MOVS r2,#0
00034e e9cd2303 STRD r2,r3,[sp,#0xc]
000352 f44f7180 MOV r1,#0x100
000356 4889 LDR r0,|L1.1404|
000358 9102 STR r1,[sp,#8]
00035a 2305 MOVS r3,#5
00035c 9001 STR r0,[sp,#4]
00035e f500727f ADD r2,r0,#0x3fc
000362 2100 MOVS r1,#0
000364 f2af0065 ADR r0,AppTaskUserIF + 1
000368 9300 STR r3,[sp,#0]
00036a f7fffffe BL OSTaskCreateExt
;;;303 (void *)0,
;;;304 (OS_STK *)&AppTaskUserIFStk[APP_TASK_USER_IF_STK_SIZE - 1],
;;;305 APP_TASK_USER_IF_PRIO,
;;;306 APP_TASK_USER_IF_PRIO,
;;;307 (OS_STK *)&AppTaskUserIFStk[0],
;;;308 APP_TASK_USER_IF_STK_SIZE,
;;;309 (void *)0,
;;;310 OS_TASK_OPT_STK_CHK | OS_TASK_OPT_STK_CLR);
;;;311
;;;312 #if (OS_TASK_NAME_SIZE > 8)
;;;313 OSTaskNameSet(APP_TASK_USER_IF_PRIO, "User I/F", &err);
00036e aa06 ADD r2,sp,#0x18
000370 a183 ADR r1,|L1.1408|
000372 2005 MOVS r0,#5
000374 f7fffffe BL OSTaskNameSet
;;;314 #endif
;;;315
;;;316 OSTaskCreateExt(AppTaskKbd,
000378 2303 MOVS r3,#3
00037a 2200 MOVS r2,#0
00037c e9cd2303 STRD r2,r3,[sp,#0xc]
000380 f44f7180 MOV r1,#0x100
000384 4881 LDR r0,|L1.1420|
000386 9102 STR r1,[sp,#8]
000388 2304 MOVS r3,#4
00038a 9001 STR r0,[sp,#4]
00038c f500727f ADD r2,r0,#0x3fc
000390 2100 MOVS r1,#0
000392 f2af3023 ADR r0,AppTaskKbd + 1
000396 9300 STR r3,[sp,#0]
000398 f7fffffe BL OSTaskCreateExt
;;;317 (void *)0,
;;;318 (OS_STK *)&AppTaskKbdStk[APP_TASK_KBD_STK_SIZE - 1],
;;;319 APP_TASK_KBD_PRIO,
;;;320 APP_TASK_KBD_PRIO,
;;;321 (OS_STK *)&AppTaskKbdStk[0],
;;;322 APP_TASK_KBD_STK_SIZE,
;;;323 (void *)0,
;;;324 OS_TASK_OPT_STK_CHK | OS_TASK_OPT_STK_CLR);
;;;325
;;;326 #if (OS_TASK_NAME_SIZE > 8)
;;;327 OSTaskNameSet(APP_TASK_KBD_PRIO, "Keyboard", &err);
00039c aa06 ADD r2,sp,#0x18
00039e a17c ADR r1,|L1.1424|
0003a0 2004 MOVS r0,#4
0003a2 f7fffffe BL OSTaskNameSet
;;;328 #endif
;;;329
;;;330 #if (uC_PROBE_COM_MODULE > 0) && \
;;;331 (PROBE_COM_SUPPORT_STR > 0)
;;;332
;;;333 OSTaskCreateExt(AppTaskProbeStr,
0003a6 2303 MOVS r3,#3
0003a8 2200 MOVS r2,#0
0003aa e9cd2303 STRD r2,r3,[sp,#0xc]
0003ae f44f7180 MOV r1,#0x100
0003b2 487a LDR r0,|L1.1436|
0003b4 9102 STR r1,[sp,#8]
0003b6 2306 MOVS r3,#6
0003b8 9001 STR r0,[sp,#4]
0003ba f500727f ADD r2,r0,#0x3fc
0003be 2100 MOVS r1,#0
0003c0 f2af3085 ADR r0,AppTaskProbeStr + 1
0003c4 9300 STR r3,[sp,#0]
0003c6 f7fffffe BL OSTaskCreateExt
;;;334 (void *)0,
;;;335 (OS_STK *)&AppTaskProbeStrStk[APP_TASK_PROBE_STR_STK_SIZE - 1],
;;;336 APP_TASK_PROBE_STR_PRIO,
;;;337 APP_TASK_PROBE_STR_PRIO,
;;;338 (OS_STK *)&AppTaskProbeStrStk[0],
;;;339 APP_TASK_PROBE_STR_STK_SIZE,
;;;340 (void *)0,
;;;341 OS_TASK_OPT_STK_CHK | OS_TASK_OPT_STK_CLR);
;;;342
;;;343 #if (OS_TASK_NAME_SIZE > 9)
;;;344 OSTaskNameSet(APP_TASK_PROBE_STR_PRIO, "Probe Str", &err);
0003ca aa06 ADD r2,sp,#0x18
0003cc a174 ADR r1,|L1.1440|
0003ce 2006 MOVS r0,#6
0003d0 f7fffffe BL OSTaskNameSet
;;;345 #endif
;;;346 #endif
;;;347 }
0003d4 b007 ADD sp,sp,#0x1c
0003d6 bd00 POP {pc}
;;;348
ENDP
AppProbeCallback PROC
;;;662 static void AppProbeCallback (void)
;;;663 {
0003d8 e92d4ff8 PUSH {r3-r11,lr}
;;;664 #if (uC_PROBE_COM_MODULE > 0) && \
;;;665 (PROBE_COM_STAT_EN > 0)
;;;666 CPU_INT32U ctr_curr;
;;;667 CPU_INT32U rx_curr;
;;;668 CPU_INT32U tx_curr;
;;;669 CPU_INT32U rxpkt_curr;
;;;670 CPU_INT32U txpkt_curr;
;;;671 CPU_INT32U sym_curr;
;;;672 CPU_INT32U symbyte_curr;
;;;673 #endif
;;;674 CPU_INT32U joystick;
;;;675
;;;676
;;;677 Probe_Counts++;
0003dc 4c18 LDR r4,|L1.1088|
0003de 68e0 LDR r0,[r4,#0xc] ; Probe_Counts
0003e0 1c40 ADDS r0,r0,#1
0003e2 60e0 STR r0,[r4,#0xc] ; Probe_Counts
;;;678
;;;679 Probe_B1 = PB_GetStatus(1);
0003e4 2001 MOVS r0,#1
0003e6 f7fffffe BL PB_GetStatus
0003ea 7020 STRB r0,[r4,#0] ; Probe_B1
;;;680
;;;681 joystick = Joystick_GetStatus();
0003ec f7fffffe BL Joystick_GetStatus
;;;682
;;;683 if ((joystick & JOYSTICK_LEFT) == JOYSTICK_LEFT) {
0003f0 f0100f04 TST r0,#4
0003f4 f04f0101 MOV r1,#1
0003f8 f04f0200 MOV r2,#0
0003fc d001 BEQ |L1.1026|
;;;684 Probe_JoyLeft = DEF_TRUE;
0003fe 7061 STRB r1,[r4,#1] ; Probe_JoyLeft
000400 e000 B |L1.1028|
|L1.1026|
;;;685 } else {
;;;686 Probe_JoyLeft = DEF_FALSE;
000402 7062 STRB r2,[r4,#1] ; Probe_JoyLeft
|L1.1028|
;;;687 }
;;;688
;;;689 if ((joystick & JOYSTICK_RIGHT) == JOYSTICK_RIGHT) {
000404 f0100f08 TST r0,#8
000408 d001 BEQ |L1.1038|
;;;690 Probe_JoyRight = DEF_TRUE;
00040a 70a1 STRB r1,[r4,#2] ; Probe_JoyRight
00040c e000 B |L1.1040|
|L1.1038|
;;;691 } else {
;;;692 Probe_JoyRight = DEF_FALSE;
00040e 70a2 STRB r2,[r4,#2] ; Probe_JoyRight
|L1.1040|
;;;693 }
;;;694
;;;695 if ((joystick & JOYSTICK_UP) == JOYSTICK_UP) {
000410 f0100f01 TST r0,#1
000414 d001 BEQ |L1.1050|
;;;696 Probe_JoyUp = DEF_TRUE;
000416 70e1 STRB r1,[r4,#3] ; Probe_JoyUp
000418 e000 B |L1.1052|
|L1.1050|
;;;697 } else {
;;;698 Probe_JoyUp = DEF_FALSE;
00041a 70e2 STRB r2,[r4,#3] ; Probe_JoyUp
|L1.1052|
;;;699 }
;;;700
;;;701 if ((joystick & JOYSTICK_DOWN) == JOYSTICK_DOWN) {
00041c f0100f02 TST r0,#2
000420 d001 BEQ |L1.1062|
;;;702 Probe_JoyDown = DEF_TRUE;
000422 7121 STRB r1,[r4,#4] ; Probe_JoyDown
000424 e0c3 B |L1.1454|
|L1.1062|
000426 e0c1 B |L1.1452|
|L1.1064|
000428 00000000 DCD ||.bss||
|L1.1068|
00042c 537472696e67205478202378787878780a00 DCB "String Tx #xxxxx\n",0
00043e 00 DCB 0
00043f 00 DCB 0
|L1.1088|
000440 00000000 DCD ||.data||
|L1.1092|
000444 20204d69637269756d2075432f4f532d4949202000 DCB " Micrium uC/OS-II ",0
000459 00 DCB 0
00045a 00 DCB 0
00045b 00 DCB 0
|L1.1116|
00045c 00000c40 DCD ||.bss||+0xc40
|L1.1120|
000460 53542053544d33322028436f727465782d4d332900 DCB "ST STM32 (Cortex-M3)",0
000475 00 DCB 0
000476 00 DCB 0
000477 00 DCB 0
|L1.1144|
000478 00000c55 DCD ||.bss||+0xc55
|L1.1148|
00047c 202020202020202020202020202020202020202000 DCB " ",0
000491 00 DCB 0
000492 00 DCB 0
000493 00 DCB 0
|L1.1172|
000494 00000c6a DCD ||.bss||+0xc6a
|L1.1176|
000498 202075432f4f532d49493a202056782e7979202000 DCB " uC/OS-II: Vx.yy ",0
0004ad 00 DCB 0
0004ae 00 DCB 0
0004af 00 DCB 0
|L1.1200|
0004b0 00000c7f DCD ||.bss||+0xc7f
|L1.1204|
0004b4 20205469636b526174653a20202078787878202000 DCB " TickRate: xxxx ",0
0004c9 00 DCB 0
0004ca 00 DCB 0
0004cb 00 DCB 0
|L1.1228|
0004cc 00000ca2 DCD ||.bss||+0xca2
|L1.1232|
0004d0 20204350552055736167653a787820252020202000 DCB " CPU Usage:xx % ",0
0004e5 00 DCB 0
0004e6 00 DCB 0
0004e7 00 DCB 0
|L1.1256|
0004e8 00000ca9 DCD ||.bss||+0xca9
|L1.1260|
0004ec 00000000 DCD OSCPUUsage
|L1.1264|
0004f0 20204350552053706565643a7878204d487a202000 DCB " CPU Speed:xx MHz ",0
000505 00 DCB 0
000506 00 DCB 0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -