📄 bsp_periph.lst
字号:
235 case BSP_PERIPH_ID_TIM6:
236 case BSP_PERIPH_ID_TIM7:
237 case BSP_PERIPH_ID_WWDG:
238 case BSP_PERIPH_ID_SPI2:
239 case BSP_PERIPH_ID_SPI3:
240 case BSP_PERIPH_ID_USART2:
241 case BSP_PERIPH_ID_USART3:
242 case BSP_PERIPH_ID_USART4:
243 case BSP_PERIPH_ID_USART5:
244 case BSP_PERIPH_ID_I2C1:
245 case BSP_PERIPH_ID_I2C2:
246 case BSP_PERIPH_ID_USB:
247 case BSP_PERIPH_ID_CAN:
248 case BSP_PERIPH_ID_BKP:
249 case BSP_PERIPH_ID_PWR:
250 case BSP_PERIPH_ID_DAC:
251 BSP_PERIPH_REG_RCC_APB1ENR |= DEF_BIT(pwr_clk_id - 64);
\ ??BSP_PeriphEn_2:
\ 00000062 .... LDR.N R1,??DataTable5 ;; 0x4002101c
\ 00000064 0A68 LDR R2,[R1, #+0]
\ 00000066 0123 MOVS R3,#+1
\ 00000068 C030 ADDS R0,R0,#+192
\ 0000006A 8340 LSLS R3,R3,R0
\ 0000006C 1343 ORRS R3,R3,R2
\ 0000006E 0B60 STR R3,[R1, #+0]
252 break;
253 }
254 }
\ 00000070 00BD POP {PC} ;; return
255
256
257 /*
258 *********************************************************************************************************
259 * BSP_PeriphDis()
260 *
261 * Description : Disable clock for peripheral.
262 *
263 * Argument(s) : pwr_clk_id Power/clock ID.
264 *
265 * Return(s) : none.
266 *
267 * Caller(s) : Application.
268 *
269 * Note(s) : none.
270 *********************************************************************************************************
271 */
272
\ In segment CODE, align 4, keep-with-next
273 void BSP_PeriphDis (CPU_DATA pwr_clk_id)
274 {
\ BSP_PeriphDis:
\ 00000000 00B5 PUSH {LR}
275 switch (pwr_clk_id) {
\ 00000002 0100 MOVS R1,R0
\ 00000004 0229 CMP R1,#+2
\ 00000006 1DD9 BLS.N ??BSP_PeriphDis_0
\ 00000008 091F SUBS R1,R1,#+4
\ 0000000A 1BD0 BEQ.N ??BSP_PeriphDis_0
\ 0000000C 891E SUBS R1,R1,#+2
\ 0000000E 19D0 BEQ.N ??BSP_PeriphDis_0
\ 00000010 891E SUBS R1,R1,#+2
\ 00000012 17D0 BEQ.N ??BSP_PeriphDis_0
\ 00000014 891E SUBS R1,R1,#+2
\ 00000016 15D0 BEQ.N ??BSP_PeriphDis_0
\ 00000018 1639 SUBS R1,R1,#+22
\ 0000001A 1AD0 BEQ.N ??BSP_PeriphDis_1
\ 0000001C 891E SUBS R1,R1,#+2
\ 0000001E 0D29 CMP R1,#+13
\ 00000020 17D9 BLS.N ??BSP_PeriphDis_1
\ 00000022 1E39 SUBS R1,R1,#+30
\ 00000024 0529 CMP R1,#+5
\ 00000026 1CD9 BLS.N ??BSP_PeriphDis_2
\ 00000028 0B39 SUBS R1,R1,#+11
\ 0000002A 1AD0 BEQ.N ??BSP_PeriphDis_2
\ 0000002C C91E SUBS R1,R1,#+3
\ 0000002E 0129 CMP R1,#+1
\ 00000030 17D9 BLS.N ??BSP_PeriphDis_2
\ 00000032 C91E SUBS R1,R1,#+3
\ 00000034 0629 CMP R1,#+6
\ 00000036 14D9 BLS.N ??BSP_PeriphDis_2
\ 00000038 0839 SUBS R1,R1,#+8
\ 0000003A 12D0 BEQ.N ??BSP_PeriphDis_2
\ 0000003C 891E SUBS R1,R1,#+2
\ 0000003E 0229 CMP R1,#+2
\ 00000040 0FD9 BLS.N ??BSP_PeriphDis_2
\ 00000042 00BD POP {PC}
276 case BSP_PERIPH_ID_DMA1:
277 case BSP_PERIPH_ID_DMA2:
278 case BSP_PERIPH_ID_SRAM:
279 case BSP_PERIPH_ID_FLITF:
280 case BSP_PERIPH_ID_CRC:
281 case BSP_PERIPH_ID_FSMC:
282 case BSP_PERIPH_ID_SDIO:
283 BSP_PERIPH_REG_RCC_AHBENR &= ~DEF_BIT(pwr_clk_id);
\ ??BSP_PeriphDis_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 9A43 BICS R2,R2,R3
\ 0000004E 0A60 STR R2,[R1, #+0]
\ 00000050 00BD POP {PC}
284 break;
285
286 case BSP_PERIPH_ID_AFIO:
287 case BSP_PERIPH_ID_IOPA:
288 case BSP_PERIPH_ID_IOPB:
289 case BSP_PERIPH_ID_IOPC:
290 case BSP_PERIPH_ID_IOPD:
291 case BSP_PERIPH_ID_IOPE:
292 case BSP_PERIPH_ID_IOPF:
293 case BSP_PERIPH_ID_IOPG:
294 case BSP_PERIPH_ID_ADC1:
295 case BSP_PERIPH_ID_ADC2:
296 case BSP_PERIPH_ID_TIM1:
297 case BSP_PERIPH_ID_SPI1:
298 case BSP_PERIPH_ID_TIM8:
299 case BSP_PERIPH_ID_USART1:
300 case BSP_PERIPH_ID_ADC3:
301 BSP_PERIPH_REG_RCC_APB2ENR &= ~DEF_BIT(pwr_clk_id - 32);
\ ??BSP_PeriphDis_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 9A43 BICS R2,R2,R3
\ 0000005E 0A60 STR R2,[R1, #+0]
\ 00000060 00BD POP {PC}
302 break;
303
304 case BSP_PERIPH_ID_TIM2:
305 case BSP_PERIPH_ID_TIM3:
306 case BSP_PERIPH_ID_TIM4:
307 case BSP_PERIPH_ID_TIM5:
308 case BSP_PERIPH_ID_TIM6:
309 case BSP_PERIPH_ID_TIM7:
310 case BSP_PERIPH_ID_WWDG:
311 case BSP_PERIPH_ID_SPI2:
312 case BSP_PERIPH_ID_SPI3:
313 case BSP_PERIPH_ID_USART2:
314 case BSP_PERIPH_ID_USART3:
315 case BSP_PERIPH_ID_USART4:
316 case BSP_PERIPH_ID_USART5:
317 case BSP_PERIPH_ID_I2C1:
318 case BSP_PERIPH_ID_I2C2:
319 case BSP_PERIPH_ID_USB:
320 case BSP_PERIPH_ID_CAN:
321 case BSP_PERIPH_ID_BKP:
322 case BSP_PERIPH_ID_PWR:
323 case BSP_PERIPH_ID_DAC:
324 BSP_PERIPH_REG_RCC_APB1ENR &= ~DEF_BIT(pwr_clk_id - 64);
\ ??BSP_PeriphDis_2:
\ 00000062 .... LDR.N R1,??DataTable5 ;; 0x4002101c
\ 00000064 0A68 LDR R2,[R1, #+0]
\ 00000066 0123 MOVS R3,#+1
\ 00000068 C030 ADDS R0,R0,#+192
\ 0000006A 8340 LSLS R3,R3,R0
\ 0000006C 9A43 BICS R2,R2,R3
\ 0000006E 0A60 STR R2,[R1, #+0]
325 break;
326 }
327 }
\ 00000070 00BD POP {PC} ;; return
\ In segment CODE, align 4, keep-with-next
\ ??DataTable3:
\ 00000000 14100240 DC32 0x40021014
\ In segment CODE, align 4, keep-with-next
\ ??DataTable4:
\ 00000000 18100240 DC32 0x40021018
\ In segment CODE, align 4, keep-with-next
\ ??DataTable5:
\ 00000000 1C100240 DC32 0x4002101c
Maximum stack usage in bytes:
Function CSTACK
-------- ------
BSP_PeriphClkFreqGet 8
BSP_PeriphDis 4
BSP_PeriphEn 4
Segment part sizes:
Function/Label Bytes
-------------- -----
BSP_PeriphClkFreqGet 128
BSP_PeriphEn 114
BSP_PeriphDis 114
??DataTable3 4
??DataTable4 4
??DataTable5 4
Others 8
376 bytes in segment CODE
368 bytes of CODE memory (+ 8 bytes shared)
Errors: none
Warnings: none
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -