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

📄 app.txt

📁 ucos2.86版本结合STM板极支持包
💻 TXT
📖 第 1 页 / 共 5 页
字号:
0001bc  f7fff7ff          BL       LCD_DisplayString
;;;508        LCD_DisplayString(APP_LINE_6, AppLCDLine6);
0001c0  49d1              LDR      r1,|L1.1288|
0001c2  2090              MOVS     r0,#0x90
0001c4  f7fff7ff          BL       LCD_DisplayString
;;;509        LCD_DisplayString(APP_LINE_7, AppLCDLine7);
0001c8  49d7              LDR      r1,|L1.1320|
0001ca  20a8              MOVS     r0,#0xa8
0001cc  f7fff7ff          BL       LCD_DisplayString
;;;510        LCD_DisplayString(APP_LINE_8, AppLCDLine8);
0001d0  e8bde8bd          POP      {r4-r6,lr}
0001d4  49dd              LDR      r1,|L1.1356|
0001d6  20c0              MOVS     r0,#0xc0
0001d8  f7fff7ff          B.W      LCD_DisplayString
;;;511    }
;;;512    
                          ENDP

                  AppDispScr_TaskNames PROC
;;;514    static  void  AppDispScr_TaskNames (void)
;;;515    {
0001dc  e92de92d          PUSH     {r4-r8,lr}
;;;516        CPU_INT08U   idx;
;;;517        OS_TCB      *ptcb;
;;;518        CPU_CHAR    *line;
;;;519        CPU_INT08U   value;
;;;520    
;;;521    
;;;522        ptcb    = &OSTCBTbl[0];
0001e0  4dde              LDR      r5,|L1.1372|
;;;523        idx     = 0;
0001e2  2400              MOVS     r4,#0
;;;524    
;;;525        Str_Copy(AppLCDLine0, "  Micrium uC/OS-II  ");
0001e4  a196              ADR      r1,|L1.1088|
0001e6  489c              LDR      r0,|L1.1112|
0001e8  f7fff7ff          BL       Str_Copy
;;;526        Str_Copy(AppLCDLine1, "ST STM32 (Cortex-M3)");
0001ec  a19b              ADR      r1,|L1.1116|
0001ee  48a1              LDR      r0,|L1.1140|
0001f0  f7fff7ff          BL       Str_Copy
;;;527    
;;;528        Str_Copy(AppLCDLine2, "  Prio   Taskname   ");
0001f4  a1da              ADR      r1,|L1.1376|
0001f6  48a6              LDR      r0,|L1.1168|
0001f8  f7fff7ff          BL       Str_Copy
;;;529    
;;;530        while (ptcb != NULL) {
0001fc  2620              MOVS     r6,#0x20
0001fe  270a              MOVS     r7,#0xa
                  |L1.512|
;;;531    
;;;532            value = ptcb->OSTCBPrio;
000200  f895f895          LDRB     r1,[r5,#0x2e]
;;;533    
;;;534            switch (idx) {
000204  2c07              CMP      r4,#7
000206  d213              BCS      |L1.560|
000208  e8dfe8df          TBB      [pc,r4]
00020c  0406080a          DCB      0x04,0x06,0x08,0x0a
000210  0c0e1000          DCB      0x0c,0x0e,0x10,0x00
;;;535                case 0:
;;;536                     line = AppLCDLine3;
000214  48a5              LDR      r0,|L1.1196|
;;;537                     break;
000216  e00c              B        |L1.562|
;;;538    
;;;539                case 1:
;;;540                     line = AppLCDLine4;
000218  48ab              LDR      r0,|L1.1224|
;;;541                     break;
00021a  e00a              B        |L1.562|
;;;542    
;;;543                case 2:
;;;544                     line = AppLCDLine5;
00021c  48b2              LDR      r0,|L1.1256|
;;;545                     break;
00021e  e008              B        |L1.562|
;;;546    
;;;547                case 3:
;;;548                     line = AppLCDLine6;
000220  48b9              LDR      r0,|L1.1288|
;;;549                     break;
000222  e006              B        |L1.562|
;;;550    
;;;551                case 4:
;;;552                     line = AppLCDLine7;
000224  48c0              LDR      r0,|L1.1320|
;;;553                     break;
000226  e004              B        |L1.562|
;;;554    
;;;555                case 5:
;;;556                     line = AppLCDLine8;
000228  48c8              LDR      r0,|L1.1356|
;;;557                     break;
00022a  e002              B        |L1.562|
;;;558    
;;;559                case 6:
;;;560                     line = AppLCDLine9;
00022c  48ca              LDR      r0,|L1.1368|
;;;561                     break;
00022e  e000              B        |L1.562|
                  |L1.560|
;;;562    
;;;563                default:
;;;564                     line = (CPU_CHAR *)0;
000230  2000              MOVS     r0,#0
                  |L1.562|
;;;565                     break;
;;;566            }
;;;567    
;;;568            if (line == (CPU_CHAR *)0) {
000232  b1b8              CBZ      r0,|L1.612|
;;;569                break;
;;;570            }
;;;571    
;;;572            line[0] = ' ';
000234  7006              STRB     r6,[r0,#0]
;;;573            line[1] = ' ';
000236  7046              STRB     r6,[r0,#1]
;;;574            line[2] = ' ';
000238  7086              STRB     r6,[r0,#2]
;;;575            line[3] = value / 10 + '0';
00023a  fbb1fbb1          UDIV     r2,r1,r7
00023e  f102f102          ADD      r3,r2,#0x30
000242  70c3              STRB     r3,[r0,#3]
;;;576            line[4] = value % 10 + '0';
000244  fb07fb07          MLS      r1,r7,r2,r1
000248  3130              ADDS     r1,r1,#0x30
00024a  7101              STRB     r1,[r0,#4]
;;;577            line[5] = ' ';
00024c  7146              STRB     r6,[r0,#5]
;;;578            Str_Copy_N(line + 6, ptcb->OSTCBTaskName, 14);
00024e  220e              MOVS     r2,#0xe
000250  f105f105          ADD      r1,r5,#0x48
000254  1d80              ADDS     r0,r0,#6
000256  f7fff7ff          BL       Str_Copy_N
;;;579    
;;;580            ptcb        = ptcb->OSTCBPrev;
00025a  69ad              LDR      r5,[r5,#0x18]
00025c  1c60              ADDS     r0,r4,#1
;;;581            idx++;
00025e  b2c4              UXTB     r4,r0
000260  2d00              CMP      r5,#0
000262  d1cd              BNE      |L1.512|
                  |L1.612|
;;;582        }
;;;583    
;;;584        if (idx < 6) {
000264  2c06              CMP      r4,#6
000266  d203              BCS      |L1.624|
;;;585            Str_Copy(AppLCDLine9, "                    ");
000268  a183              ADR      r1,|L1.1144|
00026a  48bb              LDR      r0,|L1.1368|
00026c  f7fff7ff          BL       Str_Copy
                  |L1.624|
;;;586        }
;;;587    
;;;588        if (idx < 5) {
000270  2c05              CMP      r4,#5
000272  d203              BCS      |L1.636|
;;;589            Str_Copy(AppLCDLine8, "                    ");
000274  a180              ADR      r1,|L1.1144|
000276  48b5              LDR      r0,|L1.1356|
000278  f7fff7ff          BL       Str_Copy
                  |L1.636|
;;;590        }
;;;591    
;;;592        if (idx < 4) {
00027c  2c04              CMP      r4,#4
00027e  d203              BCS      |L1.648|
;;;593            Str_Copy(AppLCDLine7, "                    ");
000280  a17d              ADR      r1,|L1.1144|
000282  48a9              LDR      r0,|L1.1320|
000284  f7fff7ff          BL       Str_Copy
                  |L1.648|
;;;594        }
;;;595    
;;;596        if (idx < 3) {
000288  2c03              CMP      r4,#3
00028a  d203              BCS      |L1.660|
;;;597            Str_Copy(AppLCDLine6, "                    ");
00028c  a17a              ADR      r1,|L1.1144|
00028e  489e              LDR      r0,|L1.1288|
000290  f7fff7ff          BL       Str_Copy
                  |L1.660|
;;;598        }
;;;599    
;;;600        LCD_SetTextColor(COLOR_BLUE);
000294  201f              MOVS     r0,#0x1f
000296  f7fff7ff          BL       LCD_SetTextColor
;;;601        LCD_DisplayString(APP_LINE_0, AppLCDLine0);
00029a  496f              LDR      r1,|L1.1112|
00029c  2000              MOVS     r0,#0
00029e  f7fff7ff          BL       LCD_DisplayString
;;;602        LCD_DisplayString(APP_LINE_1, AppLCDLine1);
0002a2  4974              LDR      r1,|L1.1140|
0002a4  2018              MOVS     r0,#0x18
0002a6  f7fff7ff          BL       LCD_DisplayString
;;;603        LCD_SetTextColor(COLOR_RED);
0002aa  f44ff44f          MOV      r0,#0xf800
0002ae  f7fff7ff          BL       LCD_SetTextColor
;;;604        LCD_DisplayString(APP_LINE_2, AppLCDLine2);
0002b2  4977              LDR      r1,|L1.1168|
0002b4  2030              MOVS     r0,#0x30
0002b6  f7fff7ff          BL       LCD_DisplayString
;;;605        LCD_SetTextColor(COLOR_BLACK);
0002ba  2000              MOVS     r0,#0
0002bc  f7fff7ff          BL       LCD_SetTextColor
;;;606        LCD_DisplayString(APP_LINE_3, AppLCDLine3);
0002c0  497a              LDR      r1,|L1.1196|
0002c2  2048              MOVS     r0,#0x48
0002c4  f7fff7ff          BL       LCD_DisplayString
;;;607        LCD_DisplayString(APP_LINE_4, AppLCDLine4);
0002c8  497f              LDR      r1,|L1.1224|
0002ca  2060              MOVS     r0,#0x60
0002cc  f7fff7ff          BL       LCD_DisplayString
;;;608        LCD_DisplayString(APP_LINE_5, AppLCDLine5);
0002d0  4985              LDR      r1,|L1.1256|
0002d2  2078              MOVS     r0,#0x78
0002d4  f7fff7ff          BL       LCD_DisplayString
;;;609        LCD_DisplayString(APP_LINE_6, AppLCDLine6);
0002d8  498b              LDR      r1,|L1.1288|
0002da  2090              MOVS     r0,#0x90
0002dc  f7fff7ff          BL       LCD_DisplayString
;;;610        LCD_DisplayString(APP_LINE_7, AppLCDLine7);
0002e0  4991              LDR      r1,|L1.1320|
0002e2  20a8              MOVS     r0,#0xa8
0002e4  f7fff7ff          BL       LCD_DisplayString
;;;611        LCD_DisplayString(APP_LINE_8, AppLCDLine8);
0002e8  4998              LDR      r1,|L1.1356|
0002ea  20c0              MOVS     r0,#0xc0
0002ec  f7fff7ff          BL       LCD_DisplayString
;;;612        LCD_DisplayString(APP_LINE_9, AppLCDLine9);
0002f0  e8bde8bd          POP      {r4-r8,lr}
0002f4  4998              LDR      r1,|L1.1368|
0002f6  20d8              MOVS     r0,#0xd8
0002f8  f7fff7ff          B.W      LCD_DisplayString
;;;613    }
;;;614    
                          ENDP

                  AppTaskUserIF PROC
;;;362    static  void  AppTaskUserIF (void *p_arg)
;;;363    {
0002fc  b5f8              PUSH     {r3-r7,lr}
;;;364        CPU_INT08U  *msg;
;;;365        CPU_INT08U   err;
;;;366        CPU_INT32U   nstate;
;;;367        CPU_INT32U   pstate;
;;;368    
;;;369    
;;;370        (void)p_arg;
;;;371    
;;;372    
;;;373        AppDispScr_SignOn();
0002fe  f7fff7ff          BL       AppDispScr_SignOn
;;;374        OSTimeDlyHMSM(0, 0, 1, 0);
000302  2300              MOVS     r3,#0
000304  2201              MOVS     r2,#1
000306  4619              MOV      r1,r3
000308  4618              MOV      r0,r3
00030a  f7fff7ff          BL       OSTimeDlyHMSM
;;;375        nstate = 1;
00030e  2401              MOVS     r4,#1
;;;376        pstate = 1;
000310  2501              MOVS     r5,#1
;;;377    
;;;378    
;;;379        while (DEF_TRUE) {
000312  4e4a              LDR      r6,|L1.1084|
                  |L1.788|
;;;380            msg = (CPU_INT08U *)(OSMboxPend(AppUserIFMbox, OS_TICKS_PER_SEC / 10, &err));
000314  466a              MOV      r2,sp
000316  210a              MOVS     r1,#0xa
000318  6830              LDR      r0,[r6,#0]  ; AppUserIFMbox
00031a  f7fff7ff          BL       OSMboxPend
;;;381            if (err == OS_NO_ERR) {
00031e  f89df89d          LDRB     r1,[sp,#0]
000322  b901              CBNZ     r1,|L1.806|
;;;382                nstate = (CPU_INT32U)msg;
000324  4604              MOV      r4,r0
                  |L1.806|
;;;383            }
;;;384    
;;;385            if (nstate != pstate) {
000326  42ac              CMP      r4,r5
000328  d002              BEQ      |L1.816|
;;;386                LCD_Clear();
00032a  f7fff7ff          BL       LCD_Clear
;;;387                pstate  = nstate;
00032e  4625              MOV      r5,r4
                  |L1.816|
;;;388            }
;;;389    
;;;390            switch (nstate) {
000330  2c02              CMP      r4,#2
000332  d102              BNE      |L1.826|
;;;391                case 2:
;;;392                    AppDispScr_TaskNames();
000334  f7fff7ff          BL       AppDispScr_TaskNames
;;;393                    break;
000338  e7ec              B        |L1.788|
                  |L1.826|
;;;394    
;;;395                case 1:
;;;396                default:

⌨️ 快捷键说明

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