Rainbow Electronics AT91CAP9S250A User Manual
Page 765

765
6264A–CAP–21-May-07
AT91CAP9S500A/AT91CAP9S250A
The command ALL_SEND_CID and the fields and values for the MCI_CMDR Control Register
are described in
and
.
Note:
bcr means broadcast command with response.
The MCI_ARGR contains the argument field of the command.
To send a command, the user must perform the following steps:
• Fill the argument register (MCI_ARGR) with the command argument.
• Set the command register (MCI_CMDR) (see
).
The command is sent immediately after writing the command register. The status bit
CMDRDY in the status register (MCI_SR) is asserted when the command is completed. If the
command requires a response, it can be read in the MCI response register (MCI_RSPR). The
response size can be from 48 bits up to 136 bits depending on the command. The MCI
embeds an error detection to prevent any corrupted data during the transfer.
The following flowchart shows how to send a command to the card and read the response if
needed. In this example, the status register bits are polled but setting the appropriate bits in
the interrupt enable register (MCI_IER) allows using an interrupt method.
Table 41-4.
ALL_SEND_CID Command Description
CMD Index
Type
Argument
Resp
Abbreviation
Command
Description
CMD2
bcr
[31:0] stuff bits
R2
ALL_SEND_CID
Asks all cards to
send their CID
numbers on the
CMD line
Table 41-5.
Fields and Values for MCI_CMDR Command Register
Field
Value
CMDNB (command number)
2 (CMD2)
RSPTYP (response type)
2 (R2: 136 bits response)
SPCMD (special command)
0 (not a special command)
OPCMD (open drain command)
1
MAXLAT (max latency for command to
response)
0 (NID cycles ==> 5 cycles)
TRCMD (transfer command)
0 (No transfer)
TRDIR (transfer direction)
X (available only in transfer command)
TRTYP (transfer type)
X (available only in transfer command)
IOSPCMD (SDIO special command)
0 (not a special command)