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

📄 os_time.lst

📁 stm32+ucos-ii
💻 LST
📖 第 1 页 / 共 3 页
字号:
    194                  ptcb->OSTCBStatPend  =  OS_STAT_PEND_OK;
   \                     ??OSTimeDlyResume_5:
   \   0000006E   0020               MOVS     R0,#+0
   \   00000070   85F83500           STRB     R0,[R5, #+53]
    195              }
    196              if ((ptcb->OSTCBStat & OS_STAT_SUSPEND) == OS_STAT_RDY) {  /* Is task suspended?                   */
   \                     ??OSTimeDlyResume_6:
   \   00000074   95F83400           LDRB     R0,[R5, #+52]
   \   00000078   0007               LSLS     R0,R0,#+28
   \   0000007A   17D4               BMI.N    ??OSTimeDlyResume_7
    197                  OSRdyGrp               |= ptcb->OSTCBBitY;             /* No,  Make ready                      */
   \   0000007C   ....               LDR.N    R0,??DataTable4_4
   \   0000007E   0078               LDRB     R0,[R0, #+0]
   \   00000080   95F83A10           LDRB     R1,[R5, #+58]
   \   00000084   0843               ORRS     R0,R1,R0
   \   00000086   ....               LDR.N    R1,??DataTable4_4
   \   00000088   0870               STRB     R0,[R1, #+0]
    198                  OSRdyTbl[ptcb->OSTCBY] |= ptcb->OSTCBBitX;
   \   0000008A   95F83800           LDRB     R0,[R5, #+56]
   \   0000008E   ....               LDR.N    R1,??DataTable4_3
   \   00000090   405C               LDRB     R0,[R0, R1]
   \   00000092   95F83910           LDRB     R1,[R5, #+57]
   \   00000096   0843               ORRS     R0,R1,R0
   \   00000098   95F83810           LDRB     R1,[R5, #+56]
   \   0000009C   ....               LDR.N    R2,??DataTable4_3
   \   0000009E   8854               STRB     R0,[R1, R2]
    199                  OS_EXIT_CRITICAL();
   \   000000A0   3000               MOVS     R0,R6
   \   000000A2   ........           BL       OS_CPU_SR_Restore
    200                  OS_Sched();                                            /* See if this is new highest priority  */
   \   000000A6   ........           BL       OS_Sched
   \   000000AA   02E0               B.N      ??OSTimeDlyResume_8
    201              } else {
    202                  OS_EXIT_CRITICAL();                                    /* Task may be suspended                */
   \                     ??OSTimeDlyResume_7:
   \   000000AC   3000               MOVS     R0,R6
   \   000000AE   ........           BL       OS_CPU_SR_Restore
    203              }
    204              return (OS_ERR_NONE);
   \                     ??OSTimeDlyResume_8:
   \   000000B2   0020               MOVS     R0,#+0
   \                     ??OSTimeDlyResume_1:
   \   000000B4   70BD               POP      {R4-R6,PC}       ;; return
    205          }
    206          #endif
    207          /*$PAGE*/
    208          /*
    209          *********************************************************************************************************
    210          *                                         GET CURRENT SYSTEM TIME
    211          *
    212          * Description: This function is used by your application to obtain the current value of the 32-bit
    213          *              counter which keeps track of the number of clock ticks.
    214          *
    215          * Arguments  : none
    216          *
    217          * Returns    : The current value of OSTime
    218          *********************************************************************************************************
    219          */
    220          
    221          #if OS_TIME_GET_SET_EN > 0u

   \                                 In section .text, align 2, keep-with-next
    222          INT32U  OSTimeGet (void)
    223          {
   \                     OSTimeGet:
   \   00000000   38B5               PUSH     {R3-R5,LR}
    224              INT32U     ticks;
    225          #if OS_CRITICAL_METHOD == 3u                     /* Allocate storage for CPU status register           */
    226              OS_CPU_SR  cpu_sr = 0u;
   \   00000002   0025               MOVS     R5,#+0
    227          #endif
    228          
    229          
    230          
    231              OS_ENTER_CRITICAL();
   \   00000004   ........           BL       OS_CPU_SR_Save
   \   00000008   0500               MOVS     R5,R0
    232              ticks = OSTime;
   \   0000000A   ....               LDR.N    R0,??DataTable4_6
   \   0000000C   0068               LDR      R0,[R0, #+0]
   \   0000000E   0400               MOVS     R4,R0
    233              OS_EXIT_CRITICAL();
   \   00000010   2800               MOVS     R0,R5
   \   00000012   ........           BL       OS_CPU_SR_Restore
    234              return (ticks);
   \   00000016   2000               MOVS     R0,R4
   \   00000018   32BD               POP      {R1,R4,R5,PC}    ;; return
    235          }
    236          #endif
    237          
    238          /*
    239          *********************************************************************************************************
    240          *                                            SET SYSTEM CLOCK
    241          *
    242          * Description: This function sets the 32-bit counter which keeps track of the number of clock ticks.
    243          *
    244          * Arguments  : ticks      specifies the new value that OSTime needs to take.
    245          *
    246          * Returns    : none
    247          *********************************************************************************************************
    248          */
    249          
    250          #if OS_TIME_GET_SET_EN > 0u

   \                                 In section .text, align 2, keep-with-next
    251          void  OSTimeSet (INT32U ticks)
    252          {
   \                     OSTimeSet:
   \   00000000   38B5               PUSH     {R3-R5,LR}
   \   00000002   0400               MOVS     R4,R0
    253          #if OS_CRITICAL_METHOD == 3u                     /* Allocate storage for CPU status register           */
    254              OS_CPU_SR  cpu_sr = 0u;
   \   00000004   0025               MOVS     R5,#+0
    255          #endif
    256          
    257          
    258          
    259              OS_ENTER_CRITICAL();
   \   00000006   ........           BL       OS_CPU_SR_Save
   \   0000000A   0500               MOVS     R5,R0
    260              OSTime = ticks;
   \   0000000C   ....               LDR.N    R0,??DataTable4_6
   \   0000000E   0460               STR      R4,[R0, #+0]
    261              OS_EXIT_CRITICAL();
   \   00000010   2800               MOVS     R0,R5
   \   00000012   ........           BL       OS_CPU_SR_Restore
    262          }
   \   00000016   31BD               POP      {R0,R4,R5,PC}    ;; return

   \                                 In section .text, align 4, keep-with-next
   \                     ??DataTable4:
   \   00000000   ........           DC32     OSIntNesting

   \                                 In section .text, align 4, keep-with-next
   \                     ??DataTable4_1:
   \   00000000   ........           DC32     OSLockNesting

   \                                 In section .text, align 4, keep-with-next
   \                     ??DataTable4_2:
   \   00000000   ........           DC32     OSTCBCur

   \                                 In section .text, align 4, keep-with-next
   \                     ??DataTable4_3:
   \   00000000   ........           DC32     OSRdyTbl

   \                                 In section .text, align 4, keep-with-next
   \                     ??DataTable4_4:
   \   00000000   ........           DC32     OSRdyGrp

   \                                 In section .text, align 4, keep-with-next
   \                     ??DataTable4_5:
   \   00000000   ........           DC32     OSTCBPrioTbl

   \                                 In section .text, align 4, keep-with-next
   \                     ??DataTable4_6:
   \   00000000   ........           DC32     OSTime
    263          #endif

   Maximum stack usage in bytes:

     Function        .cstack
     --------        -------
     OSTimeDly           16
     OSTimeDlyHMSM       24
     OSTimeDlyResume     16
     OSTimeGet           16
     OSTimeSet           16


   Section sizes:

     Function/Label  Bytes
     --------------  -----
     OSTimeDly        110
     OSTimeDlyHMSM     98
     OSTimeDlyResume  182
     OSTimeGet         26
     OSTimeSet         24
     ??DataTable4       4
     ??DataTable4_1     4
     ??DataTable4_2     4
     ??DataTable4_3     4
     ??DataTable4_4     4
     ??DataTable4_5     4
     ??DataTable4_6     4

 
 468 bytes in section .text
 
 468 bytes of CODE memory

Errors: none
Warnings: none

⌨️ 快捷键说明

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