📄 stm32f10x_sdio.lst
字号:
336:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** {
267 .loc 1 336 0
268 @ args = 0, pretend = 0, frame = 0
269 @ frame_needed = 0, uses_anonymous_args = 0
270 @ link register save eliminated.
271 .LVL9:
337:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** /* Check the parameters */
338:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** assert_param(IS_FUNCTIONAL_STATE(NewState));
339:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c ****
340:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** *(__IO uint32_t *) DCTRL_DMAEN_BB = (uint32_t)NewState;
272 .loc 1 340 0
273 0000 014B ldr r3, .L32
274 0002 1860 str r0, [r3, #0]
341:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** }
275 .loc 1 341 0
276 0004 7047 bx lr
277 .L33:
278 0006 C046 .align 2
279 .L32:
280 0008 8C053042 .word 1110443404
281 .LFE33:
283 .section .text.SDIO_SendCommand,"ax",%progbits
284 .align 2
285 .global SDIO_SendCommand
286 .thumb
287 .thumb_func
289 SDIO_SendCommand:
290 .LFB34:
342:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c ****
343:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** /**
344:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** * @brief Initializes the SDIO Command according to the specified
345:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** * parameters in the SDIO_CmdInitStruct and send the command.
346:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** * @param SDIO_CmdInitStruct : pointer to a SDIO_CmdInitTypeDef
347:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** * structure that contains the configuration information
348:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** * for the SDIO command.
349:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** * @retval : None
350:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** */
351:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** void SDIO_SendCommand(SDIO_CmdInitTypeDef *SDIO_CmdInitStruct)
352:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** {
291 .loc 1 352 0
292 @ args = 0, pretend = 0, frame = 0
293 @ frame_needed = 0, uses_anonymous_args = 0
294 .LVL10:
295 0000 10B5 push {r4, lr}
296 .LCFI1:
353:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** uint32_t tmpreg = 0;
354:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c ****
355:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** /* Check the parameters */
356:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** assert_param(IS_SDIO_CMD_INDEX(SDIO_CmdInitStruct->SDIO_CmdIndex));
357:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** assert_param(IS_SDIO_RESPONSE(SDIO_CmdInitStruct->SDIO_Response));
358:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** assert_param(IS_SDIO_WAIT(SDIO_CmdInitStruct->SDIO_Wait));
359:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** assert_param(IS_SDIO_CPSM(SDIO_CmdInitStruct->SDIO_CPSM));
360:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c ****
361:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** /*---------------------------- SDIO ARG Configuration ------------------------*/
362:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** /* Set the SDIO Argument value */
363:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** SDIO->ARG = SDIO_CmdInitStruct->SDIO_Argument;
297 .loc 1 363 0
298 0002 0368 ldr r3, [r0, #0]
299 0004 084C ldr r4, .L36
300 0006 A360 str r3, [r4, #8]
364:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c ****
365:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** /*---------------------------- SDIO CMD Configuration ------------------------*/
366:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** /* Get the SDIO CMD value */
367:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** tmpreg = SDIO->CMD;
368:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** /* Clear CMDINDEX, WAITRESP, WAITINT, WAITPEND, CPSMEN bits */
369:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** tmpreg &= CMD_CLEAR_MASK;
370:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** /* Set CMDINDEX bits according to SDIO_CmdIndex value */
371:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** /* Set WAITRESP bits according to SDIO_Response value */
372:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** /* Set WAITINT and WAITPEND bits according to SDIO_Wait value */
373:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** /* Set CPSMEN bits according to SDIO_CPSM value */
374:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** tmpreg |= (uint32_t)SDIO_CmdInitStruct->SDIO_CmdIndex | SDIO_CmdInitStruct->SDIO_Response
301 .loc 1 374 0
302 0008 4268 ldr r2, [r0, #4]
303 000a 8368 ldr r3, [r0, #8]
304 .loc 1 367 0
305 000c E168 ldr r1, [r4, #12]
306 .LVL11:
307 .loc 1 374 0
308 000e 1343 orrs r3, r3, r2
309 0010 C268 ldr r2, [r0, #12]
310 .loc 1 369 0
311 0012 21F4FE61 bic r1, r1, #2032
312 .LVL12:
313 .loc 1 374 0
314 0016 1343 orrs r3, r3, r2
315 0018 0269 ldr r2, [r0, #16]
316 .loc 1 369 0
317 001a 21F00F01 bic r1, r1, #15
318 .loc 1 374 0
319 001e 1343 orrs r3, r3, r2
320 0020 0B43 orrs r3, r3, r1
321 .LVL13:
375:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** | SDIO_CmdInitStruct->SDIO_Wait | SDIO_CmdInitStruct->SDIO_CPSM;
376:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c ****
377:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** /* Write to SDIO CMD */
378:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** SDIO->CMD = tmpreg;
322 .loc 1 378 0
323 0022 E360 str r3, [r4, #12]
379:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** }
324 .loc 1 379 0
325 0024 10BD pop {r4, pc}
326 .L37:
327 0026 C046 .align 2
328 .L36:
329 0028 00800140 .word 1073840128
330 .LFE34:
332 .section .text.SDIO_CmdStructInit,"ax",%progbits
333 .align 2
334 .global SDIO_CmdStructInit
335 .thumb
336 .thumb_func
338 SDIO_CmdStructInit:
339 .LFB35:
380:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c ****
381:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** /**
382:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** * @brief Fills each SDIO_CmdInitStruct member with its default value.
383:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** * @param SDIO_CmdInitStruct: pointer to an SDIO_CmdInitTypeDef
384:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** * structure which will be initialized.
385:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** * @retval : None
386:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** */
387:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** void SDIO_CmdStructInit(SDIO_CmdInitTypeDef* SDIO_CmdInitStruct)
388:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** {
340 .loc 1 388 0
341 @ args = 0, pretend = 0, frame = 0
342 @ frame_needed = 0, uses_anonymous_args = 0
343 @ link register save eliminated.
344 .LVL14:
389:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** /* SDIO_CmdInitStruct members default value */
390:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** SDIO_CmdInitStruct->SDIO_Argument = 0x00;
345 .loc 1 390 0
346 0000 0023 movs r3, #0
347 0002 0360 str r3, [r0, #0]
391:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** SDIO_CmdInitStruct->SDIO_CmdIndex = 0x00;
348 .loc 1 391 0
349 0004 4360 str r3, [r0, #4]
392:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** SDIO_CmdInitStruct->SDIO_Response = SDIO_Response_No;
350 .loc 1 392 0
351 0006 8360 str r3, [r0, #8]
393:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** SDIO_CmdInitStruct->SDIO_Wait = SDIO_Wait_No;
352 .loc 1 393 0
353 0008 C360 str r3, [r0, #12]
394:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** SDIO_CmdInitStruct->SDIO_CPSM = SDIO_CPSM_Disable;
354 .loc 1 394 0
355 000a 0361 str r3, [r0, #16]
395:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** }
356 .loc 1 395 0
357 000c 7047 bx lr
358 .LFE35:
360 000e C046 .section .text.SDIO_GetCommandResponse,"ax",%progbits
361 .align 2
362 .global SDIO_GetCommandResponse
363 .thumb
364 .thumb_func
366 SDIO_GetCommandResponse:
367 .LFB36:
396:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c ****
397:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** /**
398:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** * @brief Returns command index of last command for which response
399:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** * received.
400:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** * @param None
401:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** * @retval : Returns the command index of the last command response received.
402:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** */
403:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** uint8_t SDIO_GetCommandResponse(void)
404:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** {
368 .loc 1 404 0
369 @ args = 0, pretend = 0, frame = 0
370 @ frame_needed = 0, uses_anonymous_args = 0
371 @ link register save eliminated.
405:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** return (uint8_t)(SDIO->RESPCMD);
372 .loc 1 405 0
373 0000 014B ldr r3, .L42
374 0002 1869 ldr r0, [r3, #16]
406:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** }
375 .loc 1 406 0
376 0004 C0B2 uxtb r0, r0
377 0006 7047 bx lr
378 .L43:
379 .align 2
380 .L42:
381 0008 00800140 .word 1073840128
382 .LFE36:
384 .section .text.SDIO_GetResponse,"ax",%progbits
385 .align 2
386 .global SDIO_GetResponse
387 .thumb
388 .thumb_func
390 SDIO_GetResponse:
391 .LFB37:
407:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c ****
408:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** /**
409:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** * @brief Returns response received from the card for the last command.
410:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** * @param SDIO_RESP: Specifies the SDIO response register.
411:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c **** * This parameter can be one of the following values:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -