
GD32F403xx User Manual
505
DS_Send
Transmit data to the card.
1.Data block transmitted
→
DS_Busy
2.DSM disabled
→
DS_Idle
3.Data FIFO underrun error occurs
→
DS_Idle
4. Internal CRC error
→
DS_Idle
DS_Busy
Waits for the CRC status flag.
1.Receive a positive CRC status
→
DS_WaitS
2.Receive a negative CRC status
→
DS_Idle
3.DSM disabled
→
DS_Idle
4.Timeout occurs
→
DS_Idle
Note:
The command timeout programmed in the data timer register (SDIO_DATATO).
DS_WaitR
Wait for the start bit of the receive data.
1.Data receive ended
→
DS_Idle
2.DSM disabled
→
DS_Idle
3.Data timeout reached
→
DS_Idle
4.Receives a start bit before timeout
→
DS_Receive
Note:
The command timeout programmed in the data timer register (SDIO_DATATO).
DS_Receive
Receive data from the card and write it to the data FIFO.
1.Data block received
→
DS_WaitR
2.Data transfer ended
→
DS_WaitR
3.Data FIFO overrun error occurs
→
DS_Idle
4.Data received and Read Wait Started and SD I/O
mode enabled
→
DS_Readwait
5.DSM disabled or CRC fails
→
DS_Idle
DS_Readwait
Wait for the read wait stop command.
1.ReadWait stop enabled
→
DS_WaitR
2.DSM disabled
→
DS_Idle
20.4.2.
AHB interface
The AHB interface implements access to SDIO registers, data FIFO and generates interrupt
and DMA request. It includes a data FIFO unit, registers unit, and the interrupt / DMA logic.
The interrupt logic generates interrupt when at least one of the selected status flags is high.
An interrupt enable register is provided to allow the logic to generate a corresponding interrupt.
The DMA interface provides a method for fast data transfers between the SDIO data FIFO