📄 stm32f10x_sdio.lst
字号:
544
545 *(vu32 *) DCTRL_RWSTOP_BB = (u32) NewState;
\ SDIO_StopSDIOReadWait:
\ 00000000 0149 LDR.N R1,??SDIO_StopSDIOReadWait_0 ;; 0x423005a4
\ 00000002 0860 STR R0,[R1, #+0]
546 }
\ 00000004 7047 BX LR ;; return
\ 00000006 00BF Nop
\ ??SDIO_StopSDIOReadWait_0:
\ 00000008 A4053042 DC32 0x423005a4
547
548 /*******************************************************************************
549 * Function Name : SDIO_SetSDIOReadWaitMode
550 * Description : Sets one of the two options of inserting read wait interval.
551 * Input : SDIOReadWaitMode: SD I/O Read Wait operation mode.
552 * This parametre can be:
553 * - SDIO_ReadWaitMode_CLK: Read Wait control by stopping SDIOCLK
554 * - SDIO_ReadWaitMode_DATA2: Read Wait control using SDIO_DATA2
555 * Output : None
556 * Return : None
557 *******************************************************************************/
\ In segment CODE, align 4, keep-with-next
558 void SDIO_SetSDIOReadWaitMode(u32 SDIO_ReadWaitMode)
559 {
560 /* Check the parameters */
561 assert_param(IS_SDIO_READWAIT_MODE(SDIO_ReadWaitMode));
562
563 *(vu32 *) DCTRL_RWMOD_BB = SDIO_ReadWaitMode;
\ SDIO_SetSDIOReadWaitMode:
\ 00000000 0149 LDR.N R1,??SDIO_SetSDIOReadWaitMode_0 ;; 0x423005a8
\ 00000002 0860 STR R0,[R1, #+0]
564 }
\ 00000004 7047 BX LR ;; return
\ 00000006 00BF Nop
\ ??SDIO_SetSDIOReadWaitMode_0:
\ 00000008 A8053042 DC32 0x423005a8
565
566 /*******************************************************************************
567 * Function Name : SDIO_SetSDIOOperation
568 * Description : Enables or disables the SD I/O Mode Operation.
569 * Input : NewState: new state of SDIO specific operation.
570 * This parameter can be: ENABLE or DISABLE.
571 * Output : None
572 * Return : None
573 *******************************************************************************/
\ In segment CODE, align 4, keep-with-next
574 void SDIO_SetSDIOOperation(FunctionalState NewState)
575 {
576 /* Check the parameters */
577 assert_param(IS_FUNCTIONAL_STATE(NewState));
578
579 *(vu32 *) DCTRL_SDIOEN_BB = (u32)NewState;
\ SDIO_SetSDIOOperation:
\ 00000000 0149 LDR.N R1,??SDIO_SetSDIOOperation_0 ;; 0x423005ac
\ 00000002 0860 STR R0,[R1, #+0]
580 }
\ 00000004 7047 BX LR ;; return
\ 00000006 00BF Nop
\ ??SDIO_SetSDIOOperation_0:
\ 00000008 AC053042 DC32 0x423005ac
581
582 /*******************************************************************************
583 * Function Name : SDIO_SendSDIOSuspendCmd
584 * Description : Enables or disables the SD I/O Mode suspend command sending.
585 * Input : NewState: new state of the SD I/O Mode suspend command.
586 * This parameter can be: ENABLE or DISABLE.
587 * Output : None
588 * Return : None
589 *******************************************************************************/
\ In segment CODE, align 4, keep-with-next
590 void SDIO_SendSDIOSuspendCmd(FunctionalState NewState)
591 {
592 /* Check the parameters */
593 assert_param(IS_FUNCTIONAL_STATE(NewState));
594
595 *(vu32 *) CMD_SDIOSUSPEND_BB = (u32)NewState;
\ SDIO_SendSDIOSuspendCmd:
\ 00000000 0149 LDR.N R1,??SDIO_SendSDIOSuspendCmd_0 ;; 0x423001ac
\ 00000002 0860 STR R0,[R1, #+0]
596 }
\ 00000004 7047 BX LR ;; return
\ 00000006 00BF Nop
\ ??SDIO_SendSDIOSuspendCmd_0:
\ 00000008 AC013042 DC32 0x423001ac
597
598 /*******************************************************************************
599 * Function Name : SDIO_CommandCompletionCmd
600 * Description : Enables or disables the command completion signal.
601 * Input : NewState: new state of command completion signal.
602 * This parameter can be: ENABLE or DISABLE.
603 * Output : None
604 * Return : None
605 *******************************************************************************/
\ In segment CODE, align 4, keep-with-next
606 void SDIO_CommandCompletionCmd(FunctionalState NewState)
607 {
608 /* Check the parameters */
609 assert_param(IS_FUNCTIONAL_STATE(NewState));
610
611 *(vu32 *) CMD_ENCMDCOMPL_BB = (u32)NewState;
\ SDIO_CommandCompletionCmd:
\ 00000000 0149 LDR.N R1,??SDIO_CommandCompletionCmd_0 ;; 0x423001b0
\ 00000002 0860 STR R0,[R1, #+0]
612 }
\ 00000004 7047 BX LR ;; return
\ 00000006 00BF Nop
\ ??SDIO_CommandCompletionCmd_0:
\ 00000008 B0013042 DC32 0x423001b0
613
614 /*******************************************************************************
615 * Function Name : SDIO_CEATAITCmd
616 * Description : Enables or disables the CE-ATA interrupt.
617 * Input : NewState: new state of CE-ATA interrupt.
618 * This parameter can be: ENABLE or DISABLE.
619 * Output : None
620 * Return : None
621 *******************************************************************************/
\ In segment CODE, align 4, keep-with-next
622 void SDIO_CEATAITCmd(FunctionalState NewState)
623 {
624 /* Check the parameters */
625 assert_param(IS_FUNCTIONAL_STATE(NewState));
626
627 *(vu32 *) CMD_NIEN_BB = (u32)((~((u32)NewState)) & ((u32)0x1));
\ SDIO_CEATAITCmd:
\ 00000000 0249 LDR.N R1,??SDIO_CEATAITCmd_0 ;; 0x423001b4
\ 00000002 0122 MOVS R2,#+1
\ 00000004 8243 BICS R2,R2,R0
\ 00000006 0A60 STR R2,[R1, #+0]
628 }
\ 00000008 7047 BX LR ;; return
\ 0000000A 00BF Nop
\ ??SDIO_CEATAITCmd_0:
\ 0000000C B4013042 DC32 0x423001b4
629
630 /*******************************************************************************
631 * Function Name : SDIO_SendCEATACmd
632 * Description : Sends CE-ATA command (CMD61).
633 * Input : NewState: new state of CE-ATA command.
634 * This parameter can be: ENABLE or DISABLE.
635 * Output : None
636 * Return : None
637 *******************************************************************************/
\ In segment CODE, align 4, keep-with-next
638 void SDIO_SendCEATACmd(FunctionalState NewState)
639 {
640 /* Check the parameters */
641 assert_param(IS_FUNCTIONAL_STATE(NewState));
642
643 *(vu32 *) CMD_ATACMD_BB = (u32)NewState;
\ SDIO_SendCEATACmd:
\ 00000000 0149 LDR.N R1,??SDIO_SendCEATACmd_0 ;; 0x423001b8
\ 00000002 0860 STR R0,[R1, #+0]
644 }
\ 00000004 7047 BX LR ;; return
\ 00000006 00BF Nop
\ ??SDIO_SendCEATACmd_0:
\ 00000008 B8013042 DC32 0x423001b8
645
646 /*******************************************************************************
647 * Function Name : SDIO_GetFlagStatus
648 * Description : Checks whether the specified SDIO flag is set or not.
649 * Input : SDIO_FLAG: specifies the flag to check.
650 * This parameter can be one of the following values:
651 * - SDIO_FLAG_CCRCFAIL: Command response received (CRC check
652 * failed)
653 * - SDIO_FLAG_DCRCFAIL: Data block sent/received (CRC check
654 * failed)
655 * - SDIO_FLAG_CTIMEOUT: Command response timeout
656 * - SDIO_FLAG_DTIMEOUT: Data timeou
657 * - SDIO_FLAG_TXUNDERR: Transmit FIFO underrun error
658 * - SDIO_FLAG_RXOVERR: Received FIFO overrun error
659 * - SDIO_FLAG_CMDREND: Command response received (CRC check
660 * passed)
661 * - SDIO_FLAG_CMDSENT: Command sent (no response required)
662 * - SDIO_FLAG_DATAEND: Data end (data counter, SDIDCOUNT, is
663 * zero)
664 * - SDIO_FLAG_STBITERR: Start bit not detected on all data
665 * signals in wide bus mode
666 * - SDIO_FLAG_DBCKEND: Data block sent/received (CRC check
667 * passed)
668 * - SDIO_FLAG_CMDACT: Command transfer in progress
669 * - SDIO_FLAG_TXACT: Data transmit in progress
670 * - SDIO_FLAG_RXACT: Data receive in progress
671 * - SDIO_FLAG_TXFIFOHE: Transmit FIFO Half Empty
672 * - SDIO_FLAG_RXFIFOHF: Receive FIFO Half Full
673 * - SDIO_FLAG_TXFIFOF: Transmit FIFO full
674 * - SDIO_FLAG_RXFIFOF: Receive FIFO full
675 * - SDIO_FLAG_TXFIFOE: Transmit FIFO empty
676 * - SDIO_FLAG_RXFIFOE: Receive FIFO empty
677 * - SDIO_FLAG_TXDAVL: Data available in transmit FIFO
678 * - SDIO_FLAG_RXDAVL: Data available in receive FIFO
679 * - SDIO_FLAG_SDIOIT: SD I/O interrupt received
680 * - SDIO_FLAG_CEATAEND: CE-ATA command completion signal
681 * received for CMD61
682 * Output : None
683 * Return : The new state of SDIO_FLAG (SET or RESET).
684 *******************************************************************************/
\ In segment CODE, align 4, keep-with-next
685 FlagStatus SDIO_GetFlagStatus(u32 SDIO_FLAG)
686 {
687 FlagStatus bitstatus = RESET
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -