📄 app.lst
字号:
\ 000000A4 7831 ADDS R1,R1,#+120
\ 000000A6 3800 MOVS R0,R7
\ 000000A8 ........ _BLF Str_Copy,??Str_Copy??rT
486 value = (CPU_INT32U)BSP_CPU_ClkFreq() / 1000000L;
\ 000000AC ........ _BLF BSP_CPU_ClkFreq,??BSP_CPU_ClkFreq??rT
\ 000000B0 2F49 LDR.N R1,??AppDispScr_SignOn_0+0x4 ;; 0xf4240
\ 000000B2 B0FBF1F0 UDIV R0,R0,R1
487 AppLCDLine6[12] = (value / 10) + '0';
\ 000000B6 0A21 MOVS R1,#+10
\ 000000B8 B0FBF1F1 UDIV R1,R0,R1
\ 000000BC 3031 ADDS R1,R1,#+48
\ 000000BE 3973 STRB R1,[R7, #+12]
488 AppLCDLine6[13] = (value % 10) + '0';
\ 000000C0 0A21 MOVS R1,#+10
\ 000000C2 ........ _BLF ??divu32_t,??rT??divu32_t
\ 000000C6 3030 ADDS R0,R0,#+48
\ 000000C8 7873 STRB R0,[R7, #+13]
489
490 Str_Copy(AppLCDLine7, " #Ticks: xxxxxxxx ");
\ 000000CA 2900 MOVS R1,R5
\ 000000CC 6031 ADDS R1,R1,#+96
\ 000000CE 2000 MOVS R0,R4
\ 000000D0 7830 ADDS R0,R0,#+120
\ 000000D2 ........ _BLF Str_Copy,??Str_Copy??rT
491 value = (CPU_INT32U)OSTime;
\ 000000D6 .... LDR.N R0,??DataTable6 ;; OSTime
\ 000000D8 0168 LDR R1,[R0, #+0]
492 AppFormatDec(&AppLCDLine7[10], value, 8);
\ 000000DA 0822 MOVS R2,#+8
\ 000000DC 2000 MOVS R0,R4
\ 000000DE 8230 ADDS R0,R0,#+130
\ 000000E0 ........ BL AppFormatDec
493
494 Str_Copy(AppLCDLine8, " #CtxSw: xxxxxxxx ");
\ 000000E4 04F29009 ADDW R9,R4,#+144
\ 000000E8 4835 ADDS R5,R5,#+72
\ 000000EA 2900 MOVS R1,R5
\ 000000EC 4846 MOV R0,R9
\ 000000EE ........ _BLF Str_Copy,??Str_Copy??rT
495 value = (CPU_INT32U)OSCtxSwCtr;
496 AppFormatDec(&AppLCDLine8[10], value, 8);
\ 000000F2 0822 MOVS R2,#+8
\ 000000F4 1F48 LDR.N R0,??AppDispScr_SignOn_0+0x8 ;; OSCtxSwCtr
\ 000000F6 0168 LDR R1,[R0, #+0]
\ 000000F8 2000 MOVS R0,R4
\ 000000FA 9A30 ADDS R0,R0,#+154
\ 000000FC ........ BL AppFormatDec
497
498 Str_Copy(AppLCDLine9, " ");
\ 00000100 4146 MOV R1,R8
\ 00000102 2000 MOVS R0,R4
\ 00000104 A830 ADDS R0,R0,#+168
\ 00000106 ........ _BLF Str_Copy,??Str_Copy??rT
499
500 LCD_SetTextColor(COLOR_BLUE);
\ 0000010A 1F20 MOVS R0,#+31
\ 0000010C ........ _BLF LCD_SetTextColor,??LCD_SetTextColor??rT
501 LCD_DisplayString(APP_LINE_0, AppLCDLine0);
\ 00000110 2100 MOVS R1,R4
\ 00000112 1831 ADDS R1,R1,#+24
\ 00000114 0020 MOVS R0,#+0
\ 00000116 ........ _BLF LCD_DisplayString,??LCD_DisplayString??rT
502 LCD_DisplayString(APP_LINE_1, AppLCDLine1);
\ 0000011A 2100 MOVS R1,R4
\ 0000011C 3031 ADDS R1,R1,#+48
\ 0000011E 1820 MOVS R0,#+24
\ 00000120 ........ _BLF LCD_DisplayString,??LCD_DisplayString??rT
503 LCD_SetTextColor(COLOR_BLACK);
\ 00000124 0020 MOVS R0,#+0
\ 00000126 ........ _BLF LCD_SetTextColor,??LCD_SetTextColor??rT
504 LCD_DisplayString(APP_LINE_2, AppLCDLine2);
\ 0000012A 2100 MOVS R1,R4
\ 0000012C 4831 ADDS R1,R1,#+72
\ 0000012E 3020 MOVS R0,#+48
\ 00000130 ........ _BLF LCD_DisplayString,??LCD_DisplayString??rT
505 LCD_DisplayString(APP_LINE_3, AppLCDLine3);
\ 00000134 2100 MOVS R1,R4
\ 00000136 4820 MOVS R0,#+72
\ 00000138 ........ _BLF LCD_DisplayString,??LCD_DisplayString??rT
506 LCD_DisplayString(APP_LINE_4, AppLCDLine4);
\ 0000013C 2100 MOVS R1,R4
\ 0000013E 6031 ADDS R1,R1,#+96
\ 00000140 6020 MOVS R0,#+96
\ 00000142 ........ _BLF LCD_DisplayString,??LCD_DisplayString??rT
507 LCD_DisplayString(APP_LINE_5, AppLCDLine5);
\ 00000146 3100 MOVS R1,R6
\ 00000148 7820 MOVS R0,#+120
\ 0000014A ........ _BLF LCD_DisplayString,??LCD_DisplayString??rT
508 LCD_DisplayString(APP_LINE_6, AppLCDLine6);
\ 0000014E 3900 MOVS R1,R7
\ 00000150 9020 MOVS R0,#+144
\ 00000152 ........ _BLF LCD_DisplayString,??LCD_DisplayString??rT
509 LCD_DisplayString(APP_LINE_7, AppLCDLine7);
\ 00000156 7834 ADDS R4,R4,#+120
\ 00000158 2100 MOVS R1,R4
\ 0000015A A820 MOVS R0,#+168
\ 0000015C ........ _BLF LCD_DisplayString,??LCD_DisplayString??rT
510 LCD_DisplayString(APP_LINE_8, AppLCDLine8);
\ 00000160 4946 MOV R1,R9
\ 00000162 C020 MOVS R0,#+192
\ 00000164 ........ _BLF LCD_DisplayString,??LCD_DisplayString??rT
511 }
\ 00000168 BDE8F083 POP {R4-R9,PC} ;; return
\ ??AppDispScr_SignOn_0:
\ 0000016C ........ DC32 OSCPUUsage
\ 00000170 40420F00 DC32 0xf4240
\ 00000174 ........ DC32 OSCtxSwCtr
512
513
\ In segment CODE, align 4, keep-with-next
514 static void AppDispScr_TaskNames (void)
515 {
\ AppDispScr_TaskNames:
\ 00000000 2DE9F14F PUSH {R0,R4-R11,LR}
516 CPU_INT08U idx;
517 OS_TCB *ptcb;
518 CPU_CHAR *line;
519 CPU_INT08U value;
520
521
522 ptcb = &OSTCBTbl[0];
\ 00000004 584D LDR.N R5,??AppDispScr_TaskNames_1 ;; OSTCBTbl
\ 00000006 0026 MOVS R6,#+0
523 idx = 0;
524
525 Str_Copy(AppLCDLine0, " Micrium uC/OS-II ");
\ 00000008 .... LDR.N R4,??DataTable7 ;; AppLCDLine3
\ 0000000A .... LDR.N R0,??DataTable8 ;; `?<Constant " CPU Usage:xx % ">`
\ 0000000C 8046 MOV R8,R0
\ 0000000E 4146 MOV R1,R8
\ 00000010 1831 ADDS R1,R1,#+24
\ 00000012 2000 MOVS R0,R4
\ 00000014 1830 ADDS R0,R0,#+24
\ 00000016 ........ _BLF Str_Copy,??Str_Copy??rT
526 Str_Copy(AppLCDLine1, "ST STM32 (Cortex-M3)");
\ 0000001A 4146 MOV R1,R8
\ 0000001C D831 ADDS R1,R1,#+216
\ 0000001E 2000 MOVS R0,R4
\ 00000020 3030 ADDS R0,R0,#+48
\ 00000022 ........ _BLF Str_Copy,??Str_Copy??rT
527
528 Str_Copy(AppLCDLine2, " Prio Taskname ");
\ 00000026 4146 MOV R1,R8
\ 00000028 3031 ADDS R1,R1,#+48
\ 0000002A 2000 MOVS R0,R4
\ 0000002C 4830 ADDS R0,R0,#+72
\ 0000002E ........ _BLF Str_Copy,??Str_Copy??rT
\ 00000032 04F29009 ADDW R9,R4,#+144
\ 00000036 04F2A80A ADDW R10,R4,#+168
\ 0000003A 1AE0 B.N ??AppDispScr_TaskNames_2
529
530 while (ptcb != NULL) {
531
532 value = ptcb->OSTCBPrio;
533
534 switch (idx) {
535 case 0:
536 line = AppLCDLine3;
537 break;
538
539 case 1:
540 line = AppLCDLine4;
541 break;
542
543 case 2:
544 line = AppLCDLine5;
545 break;
546
547 case 3:
548 line = AppLCDLine6;
549 break;
550
551 case 4:
552 line = AppLCDLine7;
553 break;
554
555 case 5:
556 line = AppLCDLine8;
557 break;
558
559 case 6:
560 line = AppLCDLine9;
561 break;
562
563 default:
564 line = (CPU_CHAR *)0;
565 break;
566 }
567
568 if (line == (CPU_CHAR *)0) {
569 break;
570 }
571
572 line[0] = ' ';
\ ??AppDispScr_TaskNames_3:
\ 0000003C 2022 MOVS R2,#+32
\ 0000003E 1A70 STRB R2,[R3, #+0]
573 line[1] = ' ';
\ 00000040 5A70 STRB R2,[R3, #+1]
574 line[2] = ' ';
\ 00000042 9A70 STRB R2,[R3, #+2]
575 line[3] = value / 10 + '0';
\ 00000044 0098 LDR R0,[SP, #+0]
\ 00000046 C0B2 UXTB R0,R0
\ 00000048 0A21 MOVS R1,#+10
\ 0000004A 90FBF1F1 SDIV R1,R0,R1
\ 0000004E 3031 ADDS R1,R1,#+48
\ 00000050 D970 STRB R1,[R3, #+3]
576 line[4] = value % 10 + '0';
\ 00000052 0A21 MOVS R1,#+10
\ 00000054 ........ _BLF ??div32_t,??rT??div32_t
\ 00000058 3030 ADDS R0,R0,#+48
\ 0000005A 1871 STRB R0,[R3, #+4]
577 line[5] = ' ';
\ 0000005C 5A71 STRB R2,[R3, #+5]
578 Str_Copy_N(line + 6, ptcb->OSTCBTaskName, 14);
\ 0000005E 0E22 MOVS R2,#+14
\ 00000060 4835 ADDS R5,R5,#+72
\ 00000062 2900 MOVS R1,R5
\ 00000064 9B1D ADDS R3,R3,#+6
\ 00000066 1800 MOVS R0,R3
\ 00000068 ........ _BLF Str_Copy_N,??Str_Copy_N??rT
579
580 ptcb = ptcb->OSTCBPrev;
\ 0000006C 3D68 LDR R5,[R7, #+0]
581 idx++;
\ 0000006E 761C ADDS R6,R6,#+1
\ 00000070 F6B2 UXTB R6,R6
\ ??AppDispScr_TaskNames_2:
\ 00000072 .... LDR.N R0,??DataTable9 ;; AppLCDLine6
\ 00000074 8346 MOV R11,R0
\ 00000076 002D CMP R5,#+0
\ 00000078 1FD0 BEQ.N ??AppDispScr_TaskNames_4
\ 0000007A 2F00 MOVS R7,R5
\ 0000007C 1837 ADDS R7,R7
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -