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

📄 bsp_periph.lst

📁 编译环境是 iar EWARM ,STM32 下的UCOSII
💻 LST
📖 第 1 页 / 共 3 页
字号:
   \   00000036   13D9               BLS.N    ??BSP_PeriphClkFreqGet_3
   \   00000038   E41E               SUBS     R4,R4,#+3
   \   0000003A   062C               CMP      R4,#+6
   \   0000003C   10D9               BLS.N    ??BSP_PeriphClkFreqGet_3
   \   0000003E   083C               SUBS     R4,R4,#+8
   \   00000040   0ED0               BEQ.N    ??BSP_PeriphClkFreqGet_3
   \   00000042   A41E               SUBS     R4,R4,#+2
   \   00000044   022C               CMP      R4,#+2
   \   00000046   0BD9               BLS.N    ??BSP_PeriphClkFreqGet_3
   \   00000048   15E0               B.N      ??BSP_PeriphClkFreqGet_4
    119                  case BSP_PERIPH_ID_DMA1:
    120                  case BSP_PERIPH_ID_DMA2:
    121                  case BSP_PERIPH_ID_SRAM:
    122                  case BSP_PERIPH_ID_FLITF:
    123                  case BSP_PERIPH_ID_CRC:
    124                  case BSP_PERIPH_ID_FSMC:
    125                  case BSP_PERIPH_ID_SDIO:
    126                       return (clk_freq);
    127          
    128                  case BSP_PERIPH_ID_AFIO:
    129                  case BSP_PERIPH_ID_IOPA:
    130                  case BSP_PERIPH_ID_IOPB:
    131                  case BSP_PERIPH_ID_IOPC:
    132                  case BSP_PERIPH_ID_IOPD:
    133                  case BSP_PERIPH_ID_IOPE:
    134                  case BSP_PERIPH_ID_IOPF:
    135                  case BSP_PERIPH_ID_IOPG:
    136                  case BSP_PERIPH_ID_ADC1:
    137                  case BSP_PERIPH_ID_ADC2:
    138                  case BSP_PERIPH_ID_TIM1:
    139                  case BSP_PERIPH_ID_SPI1:
    140                  case BSP_PERIPH_ID_TIM8:
    141                  case BSP_PERIPH_ID_USART1:
    142                  case BSP_PERIPH_ID_ADC3:
    143                       clk_div = (BSP_PERIPH_REG_RCC_CFGR & 0x00003800) >> 11;
   \                     ??BSP_PeriphClkFreqGet_2:
   \   0000004A   0968               LDR      R1,[R1, #+0]
   \   0000004C   11F46051           ANDS     R1,R1,#0x3800
   \   00000050   C90A               LSRS     R1,R1,#+11
    144                       if (clk_div < 4) {
   \   00000052   0429               CMP      R1,#+4
   \   00000054   10D3               BCC.N    ??BSP_PeriphClkFreqGet_1
    145                           return (clk_freq);
    146                       }
    147                       clk_div   = (clk_div - 3) << 1;
    148                       clk_freq /= clk_div;
    149                       return (clk_freq);
   \   00000056   C91E               SUBS     R1,R1,#+3
   \   00000058   4900               LSLS     R1,R1,#+1
   \   0000005A   B0FBF1F0           UDIV     R0,R0,R1
   \   0000005E   10BD               POP      {R4,PC}
    150          
    151                  case BSP_PERIPH_ID_TIM2:
    152                  case BSP_PERIPH_ID_TIM3:
    153                  case BSP_PERIPH_ID_TIM4:
    154                  case BSP_PERIPH_ID_TIM5:
    155                  case BSP_PERIPH_ID_TIM6:
    156                  case BSP_PERIPH_ID_TIM7:
    157                  case BSP_PERIPH_ID_WWDG:
    158                  case BSP_PERIPH_ID_SPI2:
    159                  case BSP_PERIPH_ID_SPI3:
    160                  case BSP_PERIPH_ID_USART2:
    161                  case BSP_PERIPH_ID_USART3:
    162                  case BSP_PERIPH_ID_USART4:
    163                  case BSP_PERIPH_ID_USART5:
    164                  case BSP_PERIPH_ID_I2C1:
    165                  case BSP_PERIPH_ID_I2C2:
    166                  case BSP_PERIPH_ID_USB:
    167                  case BSP_PERIPH_ID_CAN:
    168                  case BSP_PERIPH_ID_BKP:
    169                  case BSP_PERIPH_ID_PWR:
    170                  case BSP_PERIPH_ID_DAC:
    171                       clk_div = (BSP_PERIPH_REG_RCC_CFGR & 0x00000700) >> 8;
   \                     ??BSP_PeriphClkFreqGet_3:
   \   00000060   0968               LDR      R1,[R1, #+0]
   \   00000062   11F4E061           ANDS     R1,R1,#0x700
   \   00000066   090A               LSRS     R1,R1,#+8
    172                       if (clk_div < 4) {
   \   00000068   0429               CMP      R1,#+4
   \   0000006A   05D3               BCC.N    ??BSP_PeriphClkFreqGet_1
    173                           return (clk_freq);
    174                       }
    175                       clk_div   = (clk_div - 3) << 1;
    176                       clk_freq /= clk_div;
    177                       return (clk_freq);
   \   0000006C   C91E               SUBS     R1,R1,#+3
   \   0000006E   4900               LSLS     R1,R1,#+1
   \   00000070   B0FBF1F0           UDIV     R0,R0,R1
   \   00000074   10BD               POP      {R4,PC}
    178              }
    179          
    180              return ((CPU_INT32U)0);
   \                     ??BSP_PeriphClkFreqGet_4:
   \   00000076   0020               MOVS     R0,#+0
   \                     ??BSP_PeriphClkFreqGet_1:
   \   00000078   10BD               POP      {R4,PC}          ;; return
   \   0000007A   00BF               Nop      
   \                     ??BSP_PeriphClkFreqGet_0:
   \   0000007C   04100240           DC32     0x40021004
    181          }
    182          
    183          
    184          /*
    185          *********************************************************************************************************
    186          *                                             BSP_PeriphEn()
    187          *
    188          * Description : Enable clock for peripheral.
    189          *
    190          * Argument(s) : pwr_clk_id      Power/clock ID.
    191          *
    192          * Return(s)   : none.
    193          *
    194          * Caller(s)   : Application.
    195          *
    196          * Note(s)     : none.
    197          *********************************************************************************************************
    198          */
    199          

   \                                 In segment CODE, align 4, keep-with-next
    200          void  BSP_PeriphEn (CPU_DATA  pwr_clk_id)
    201          {
   \                     BSP_PeriphEn:
   \   00000000   00B5               PUSH     {LR}
    202              switch (pwr_clk_id) {
   \   00000002   0100               MOVS     R1,R0
   \   00000004   0229               CMP      R1,#+2
   \   00000006   1DD9               BLS.N    ??BSP_PeriphEn_0
   \   00000008   091F               SUBS     R1,R1,#+4
   \   0000000A   1BD0               BEQ.N    ??BSP_PeriphEn_0
   \   0000000C   891E               SUBS     R1,R1,#+2
   \   0000000E   19D0               BEQ.N    ??BSP_PeriphEn_0
   \   00000010   891E               SUBS     R1,R1,#+2
   \   00000012   17D0               BEQ.N    ??BSP_PeriphEn_0
   \   00000014   891E               SUBS     R1,R1,#+2
   \   00000016   15D0               BEQ.N    ??BSP_PeriphEn_0
   \   00000018   1639               SUBS     R1,R1,#+22
   \   0000001A   1AD0               BEQ.N    ??BSP_PeriphEn_1
   \   0000001C   891E               SUBS     R1,R1,#+2
   \   0000001E   0D29               CMP      R1,#+13
   \   00000020   17D9               BLS.N    ??BSP_PeriphEn_1
   \   00000022   1E39               SUBS     R1,R1,#+30
   \   00000024   0529               CMP      R1,#+5
   \   00000026   1CD9               BLS.N    ??BSP_PeriphEn_2
   \   00000028   0B39               SUBS     R1,R1,#+11
   \   0000002A   1AD0               BEQ.N    ??BSP_PeriphEn_2
   \   0000002C   C91E               SUBS     R1,R1,#+3
   \   0000002E   0129               CMP      R1,#+1
   \   00000030   17D9               BLS.N    ??BSP_PeriphEn_2
   \   00000032   C91E               SUBS     R1,R1,#+3
   \   00000034   0629               CMP      R1,#+6
   \   00000036   14D9               BLS.N    ??BSP_PeriphEn_2
   \   00000038   0839               SUBS     R1,R1,#+8
   \   0000003A   12D0               BEQ.N    ??BSP_PeriphEn_2
   \   0000003C   891E               SUBS     R1,R1,#+2
   \   0000003E   0229               CMP      R1,#+2
   \   00000040   0FD9               BLS.N    ??BSP_PeriphEn_2
   \   00000042   00BD               POP      {PC}
    203                  case BSP_PERIPH_ID_DMA1:
    204                  case BSP_PERIPH_ID_DMA2:
    205                  case BSP_PERIPH_ID_SRAM:
    206                  case BSP_PERIPH_ID_FLITF:
    207                  case BSP_PERIPH_ID_CRC:
    208                  case BSP_PERIPH_ID_FSMC:
    209                  case BSP_PERIPH_ID_SDIO:
    210                       BSP_PERIPH_REG_RCC_AHBENR |= DEF_BIT(pwr_clk_id);
   \                     ??BSP_PeriphEn_0:
   \   00000044   ....               LDR.N    R1,??DataTable3  ;; 0x40021014
   \   00000046   0A68               LDR      R2,[R1, #+0]
   \   00000048   0123               MOVS     R3,#+1
   \   0000004A   8340               LSLS     R3,R3,R0
   \   0000004C   1343               ORRS     R3,R3,R2
   \   0000004E   0B60               STR      R3,[R1, #+0]
   \   00000050   00BD               POP      {PC}
    211                       break;
    212          
    213                  case BSP_PERIPH_ID_AFIO:
    214                  case BSP_PERIPH_ID_IOPA:
    215                  case BSP_PERIPH_ID_IOPB:
    216                  case BSP_PERIPH_ID_IOPC:
    217                  case BSP_PERIPH_ID_IOPD:
    218                  case BSP_PERIPH_ID_IOPE:
    219                  case BSP_PERIPH_ID_IOPF:
    220                  case BSP_PERIPH_ID_IOPG:
    221                  case BSP_PERIPH_ID_ADC1:
    222                  case BSP_PERIPH_ID_ADC2:
    223                  case BSP_PERIPH_ID_TIM1:
    224                  case BSP_PERIPH_ID_SPI1:
    225                  case BSP_PERIPH_ID_TIM8:
    226                  case BSP_PERIPH_ID_USART1:
    227                  case BSP_PERIPH_ID_ADC3:
    228                       BSP_PERIPH_REG_RCC_APB2ENR |= DEF_BIT(pwr_clk_id - 32);
   \                     ??BSP_PeriphEn_1:
   \   00000052   ....               LDR.N    R1,??DataTable4  ;; 0x40021018
   \   00000054   0A68               LDR      R2,[R1, #+0]
   \   00000056   0123               MOVS     R3,#+1
   \   00000058   E030               ADDS     R0,R0,#+224
   \   0000005A   8340               LSLS     R3,R3,R0
   \   0000005C   1343               ORRS     R3,R3,R2
   \   0000005E   0B60               STR      R3,[R1, #+0]
   \   00000060   00BD               POP      {PC}
    229                       break;
    230          
    231                  case BSP_PERIPH_ID_TIM2:
    232                  case BSP_PERIPH_ID_TIM3:
    233                  case BSP_PERIPH_ID_TIM4:
    234                  case BSP_PERIPH_ID_TIM5:

⌨️ 快捷键说明

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