Rainbow Electronics AT91CAP9S250A User Manual

Page 765

Advertising
background image

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

Table 41-4

and

Table 41-5

.

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

Table 41-5

).

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)

Advertising