458
/
838
Nations Technologies Inc.
Tel
:
+86-755-86309900
:
Address: Nations Tower, #109 Baoshen Road, Hi-tech Park North.
Nanshan District, Shenzhen, 518057, P.R.China
this new address is called relative card address (RCA), which is shorter than CID and is used to address the card.
At this point, the card goes into the standby state. The host of the SDIO card can send this command again to
change the RCA, and the RCA of the card will be the last assignment.
6.
The SDIO card host repeats steps 4 and 5 above for all activated cards until a timeout condition is received.
The SD I/O card identification process is as follows:
1.
The bus is enabled
2.
The SDIO card host sends the CMD5 (IO_SEND_OP_COND) command to get the contents of the card's
operating condition register
3.
If the card is not compatible, it will be placed in an inactive state
4.
The SDIO card host sends a CMD3 (SET_RELATIVE_ADDR) command and an address to an activated card,
this new address is called relative card address (RCA), which is shorter than CID and is used to address the card.
At this point, the card goes into the standby state. The host of the SDIO card can send this command again to
change the RCA, and the RCA of the card will be the last assignment.
18.4.5
Write data block
When the write data block command (CMD24-27) is executed, one or more data blocks are transferred from the host
to the card(1-bit or 4-bit high level). If the CRC check is wrong, the card indicates a transfer failure via the SDIO_DAT
signal line, the transferred data is discarded without being written, and all subsequent (in multi-block write mode)
transferred data blocks will be ignored.
If the host transmits partial data and the accumulated data length is not aligned with the data block, and block
misalignment is not allowed (parameter WRITE_BLK_MISALIGN for CSD is not set), the card will detect block
misalignment errors before the start of the first unaligned block ( set the ADDRESS_ERROR error bit in the status
register) and ignore subsequent data transfers at the same time. The write operation is also aborted when the host
attempts to write to a write-protected area, in which case the card will set the WP_VIOLATION bit in the status
register.
Setting the CID and CSD registers does not require setting the block length in advance, and the transmitted data is
also protected by CRC. If part of the CSD or CID register is stored in ROM, then this unchangeable part must match
the corresponding part of the receive buffer. If there is an inconsistency, the card will report an error without
modifying the contents of any register.
Some cards may take a long or unpredictable time to complete the writing of a data block. After receiving a data
block and completing the CRC check, the card will start the write operation. If the write buffer is full and cannot be
re-issued with a new WRITE_BLOCK command When receiving new data, it will pull the SDIO_DAT signal line
low. The host can use SEND_STATUS (CMD13) to query the status of the card at any time, and the card will return
the current status. The status bit READY_FOR_DATA indicates whether the card can accept new data or whether a
write operation is still in progress. The host can unselect the card (select another card) by sending the CMD7
command, and put the card in the disconnected state, which can release the SDIO_DAT signal line without
interrupting the outstanding write operation; when a card is reselected, if The write operation is still in progress and
the write buffer is still unavailable, it will again indicate the busy state by pulling the SDIO_DAT signal line low.