bsp.lst

来自「stm32+ucos-ii」· LST 代码 · 共 982 行 · 第 1/4 页

LST
982
字号
    334                       GPIO_ResetBits(GPIOD, BSP_GPIOD_LED3);
   \                     ??BSP_LED_Off_3:
   \   00000034   1021               MOVS     R1,#+16
   \   00000036   ....               LDR.N    R0,??DataTable6_2  ;; 0x40011400
   \   00000038   ........           BL       GPIO_ResetBits
    335                       break;
   \   0000003C   FFE7               B.N      ??BSP_LED_Off_5
    336          
    337                  default:
    338                       break;
    339              }
    340          }
   \                     ??BSP_LED_Off_4:
   \                     ??BSP_LED_Off_5:
   \   0000003E   10BD               POP      {R4,PC}          ;; return
    341          
    342          
    343          /*
    344          *********************************************************************************************************
    345          *                                            BSP_LED_Toggle()
    346          *
    347          * Description : TOGGLE any or all the LEDs on the board.
    348          *
    349          * Argument(s) : led     The ID of the LED to control:
    350          *
    351          *                       0    TOGGLE ALL the LEDs
    352          *                       1    TOGGLE user LED1  on the board
    353          *                       2    TOGGLE user LED2  on the board
    354          *                       3    TOGGLE user LED3  on the board
    355          *
    356          * Return(s)   : none.
    357          *
    358          * Caller(s)   : Application.
    359          *
    360          * Note(s)     : none.
    361          *********************************************************************************************************
    362          */
    363          

   \                                 In section .text, align 2, keep-with-next
    364          void  BSP_LED_Toggle (CPU_INT08U led)
    365          {
   \                     BSP_LED_Toggle:
   \   00000000   38B5               PUSH     {R3-R5,LR}
   \   00000002   0400               MOVS     R4,R0
    366              CPU_INT32U  pins;
    367          
    368          
    369              switch (led) {
   \   00000004   E4B2               UXTB     R4,R4            ;; ZeroExt  R4,R4,#+24,#+24
   \   00000006   2000               MOVS     R0,R4
   \   00000008   0028               CMP      R0,#+0
   \   0000000A   03D0               BEQ.N    ??BSP_LED_Toggle_0
   \   0000000C   401E               SUBS     R0,R0,#+1
   \   0000000E   0228               CMP      R0,#+2
   \   00000010   12D9               BLS.N    ??BSP_LED_Toggle_1
   \   00000012   2FE0               B.N      ??BSP_LED_Toggle_2
    370                  case 0:
    371                       pins =  GPIO_ReadOutputData(GPIOD);
   \                     ??BSP_LED_Toggle_0:
   \   00000014   ....               LDR.N    R0,??DataTable6_2  ;; 0x40011400
   \   00000016   ........           BL       GPIO_ReadOutputData
   \   0000001A   0500               MOVS     R5,R0
    372                       pins ^= BSP_GPIOD_LEDS;
   \   0000001C   95F01C05           EORS     R5,R5,#0x1C
    373                       GPIO_SetBits(  GPIOD,   pins  & BSP_GPIOD_LEDS);
   \   00000020   15F01C01           ANDS     R1,R5,#0x1C
   \   00000024   ....               LDR.N    R0,??DataTable6_2  ;; 0x40011400
   \   00000026   ........           BL       GPIO_SetBits
    374                       GPIO_ResetBits(GPIOD, (~pins) & BSP_GPIOD_LEDS);
   \   0000002A   E843               MVNS     R0,R5
   \   0000002C   10F01C01           ANDS     R1,R0,#0x1C
   \   00000030   ....               LDR.N    R0,??DataTable6_2  ;; 0x40011400
   \   00000032   ........           BL       GPIO_ResetBits
    375                       break;
   \   00000036   1DE0               B.N      ??BSP_LED_Toggle_3
    376          
    377                  case 1:
    378                  case 2:
    379                  case 3:
    380                      pins = GPIO_ReadOutputData(GPIOD);
   \                     ??BSP_LED_Toggle_1:
   \   00000038   ....               LDR.N    R0,??DataTable6_2  ;; 0x40011400
   \   0000003A   ........           BL       GPIO_ReadOutputData
   \   0000003E   0500               MOVS     R5,R0
    381                      if ((pins & (1 << (led + BSP_LED_START_BIT))) == 0) {
   \   00000040   0120               MOVS     R0,#+1
   \   00000042   14F10C01           ADDS     R1,R4,#+12
   \   00000046   8840               LSLS     R0,R0,R1
   \   00000048   0542               TST      R5,R0
   \   0000004A   09D1               BNE.N    ??BSP_LED_Toggle_4
    382                           GPIO_SetBits(  GPIOD, (1 << (led + BSP_LED_START_BIT)));
   \   0000004C   0120               MOVS     R0,#+1
   \   0000004E   14F10C01           ADDS     R1,R4,#+12
   \   00000052   10FA01F1           LSLS     R1,R0,R1
   \   00000056   89B2               UXTH     R1,R1            ;; ZeroExt  R1,R1,#+16,#+16
   \   00000058   ....               LDR.N    R0,??DataTable6_2  ;; 0x40011400
   \   0000005A   ........           BL       GPIO_SetBits
   \   0000005E   08E0               B.N      ??BSP_LED_Toggle_5
    383                       } else {
    384                           GPIO_ResetBits(GPIOD, (1 << (led + BSP_LED_START_BIT)));
   \                     ??BSP_LED_Toggle_4:
   \   00000060   0120               MOVS     R0,#+1
   \   00000062   14F10C01           ADDS     R1,R4,#+12
   \   00000066   10FA01F1           LSLS     R1,R0,R1
   \   0000006A   89B2               UXTH     R1,R1            ;; ZeroExt  R1,R1,#+16,#+16
   \   0000006C   ....               LDR.N    R0,??DataTable6_2  ;; 0x40011400
   \   0000006E   ........           BL       GPIO_ResetBits
    385                       }
    386                      break;
   \                     ??BSP_LED_Toggle_5:
   \   00000072   FFE7               B.N      ??BSP_LED_Toggle_3
    387          
    388                  default:
    389                       break;
    390              }
    391          }
   \                     ??BSP_LED_Toggle_2:
   \                     ??BSP_LED_Toggle_3:
   \   00000074   31BD               POP      {R0,R4,R5,PC}    ;; return
    392          
    393          
    394          /*
    395          *********************************************************************************************************
    396          *                                            BSP_StatusInit()
    397          *
    398          * Description : Initialize the status port(s)
    399          *
    400          * Argument(s) : none.
    401          *
    402          * Return(s)   : none.
    403          *
    404          * Caller(s)   : BSP_Init()
    405          *
    406          * Note(s)     : none.
    407          *********************************************************************************************************
    408          */
    409          

   \                                 In section .text, align 2, keep-with-next
    410          static  void  BSP_StatusInit (void)
    411          {
   \                     BSP_StatusInit:
   \   00000000   80B5               PUSH     {R7,LR}
    412              GPIO_InitTypeDef  GPIO_InitStructure;
    413          
    414          
    415              GPIO_InitStructure.GPIO_Pin   = GPIO_Pin_5;             /* PB5 is used to read the status of the LM75 */
   \   00000002   2020               MOVS     R0,#+32
   \   00000004   ADF80000           STRH     R0,[SP, #+0]
    416              GPIO_InitStructure.GPIO_Mode  = GPIO_Mode_IN_FLOATING;
   \   00000008   0420               MOVS     R0,#+4
   \   0000000A   8DF80300           STRB     R0,[SP, #+3]
    417              GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
   \   0000000E   0320               MOVS     R0,#+3
   \   00000010   8DF80200           STRB     R0,[SP, #+2]
    418              GPIO_Init(GPIOB, &GPIO_InitStructure);
   \   00000014   00A9               ADD      R1,SP,#+0
   \   00000016   ....               LDR.N    R0,??DataTable6_3  ;; 0x40010c00
   \   00000018   ........           BL       GPIO_Init
    419          }
   \   0000001C   01BD               POP      {R0,PC}          ;; return
    420          
    421          
    422          /*
    423          *********************************************************************************************************
    424          *                                            BSP_StatusRd()
    425          *
    426          * Description : Get the current status of a status input
    427          *
    428          * Argument(s) : id    is the status you want to get.
    429          *
    430          * Return(s)   : DEF_ON    if the status is asserted
    431          *               DEF_OFF   if the status is negated
    432          *
    433          * Caller(s)   : application
    434          *
    435          * Note(s)     : none.
    436          *********************************************************************************************************
    437          */
    438          

   \                                 In section .text, align 2, keep-with-next
    439          CPU_BOOLEAN  BSP_StatusRd (CPU_INT08U  id)
    440          {
   \                     BSP_StatusRd:
   \   00000000   38B5               PUSH     {R3-R5,LR}
   \   00000002   0400               MOVS     R4,R0
    441              CPU_BOOLEAN  bit_val;
    442          
    443          
    444              switch (id) {
   \   00000004   E4B2               UXTB     R4,R4            ;; ZeroExt  R4,R4,#+24,#+24
   \   00000006   012C               CMP      R4,#+1
   \   00000008   07D1               BNE.N    ??BSP_StatusRd_0
    445                  case 1:
    446                       bit_val = GPIO_ReadInputDataBit(GPIOB, GPIO_Pin_5);
   \   0000000A   2021               MOVS     R1,#+32
   \   0000000C   ....               LDR.N    R0,??DataTable6_3  ;; 0x40010c00
   \   0000000E   ........           BL       GPIO_ReadInputDataBit
   \   00000012   0500               MOVS     R5,R0
    447                       return (bit_val);
   \   00000014   2800               MOVS     R0,R5
   \   00000016   C0B2               UXTB     R0,R0            ;; ZeroExt  R0,R0,#+24,#+24
   \   00000018   00E0               B.N      ??BSP_StatusRd_1
    448          
    449                  default:
    450                       return ((CPU_BOOLEAN)DEF_OFF);
   \                     ??BSP_StatusRd_0:
   \   0000001A   0020               MOVS     R0,#+0
   \                     ??BSP_StatusRd_1:
   \   0000001C   32BD               POP      {R1,R4,R5,PC}    ;; return
    451              }
    452          }

   \                                 In section .text, align 4, keep-with-next
   \                     ??DataTable6:
   \   00000000   40420F00           DC32     0xf4240

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

   \                                 In section .text, align 4, keep-with-next
   \                     ??DataTable6_2:
   \   00000000   00140140           DC32     0x40011400

   \                                 In section .text, align 4, keep-with-next
   \                     ??DataTable6_3:
   \   00000000   000C0140           DC32     0x40010c00
    453          
    454          
    455          /*
    456          *********************************************************************************************************
    457          *********************************************************************************************************
    458          *                                           OS PROBE FUNCTIONS
    459          *********************************************************************************************************
    460          *********************************************************************************************************
    461          */
    462          
    463          /*
    464          *********************************************************************************************************
    465          *                                           OSProbe_TmrInit()
    466          *
    467          * Description : Select & initialize a timer for use with the uC/Probe Plug-In for uC/OS-II.
    468          *

⌨️ 快捷键说明

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