CMSIS Driver  Version 1.10 - Preliminary
Middleware Driver API for microcontroller peripherals
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Driver_MCI.h File Reference

Data Structures

struct  ARM_MCI_SWITCH
 MCI Card Switch. More...
 
struct  ARM_MCI_CAPABILITIES
 MCI Driver Capabilities. More...
 
struct  ARM_DRIVER_MCI
 Access structure of the MCI Driver. More...
 

Macros

#define ARM_MCI_API_VERSION   ARM_DRV_VERSION_MAJOR_MINOR(1,10) /* API version */
 

Typedefs

typedef void(* ARM_MCI_SignalEvent_t )(ARM_MCI_EVENT event)
 Pointer to ARM_MCI_SignalEvent : Signal MCI Card Event.
 

Enumerations

enum  ARM_MC_COMMAND {
  ARM_MC_CMD_GO_IDLE_STATE = 0,
  ARM_MC_CMD_SEND_OP_COND = 1,
  ARM_MC_CMD_ALL_SEND_CID = 2,
  ARM_MC_CMD_SEND_RELATIVE_ADDR = 3,
  ARM_MC_CMD_SET_BUS_WIDTH = 6,
  ARM_MC_CMD_SELECT_DESELECT_CARD = 7,
  ARM_MC_CMD_SEND_IF_COND = 8,
  ARM_MC_CMD_SEND_CSD = 9,
  ARM_MC_CMD_SEND_CID = 10,
  ARM_MC_CMD_VOLTAGE_SWITCH = 11,
  ARM_MC_CMD_STOP_TRANSMISSION = 12,
  ARM_MC_CMD_SEND_STATUS = 13,
  ARM_MC_CMD_SET_BLOCKLEN = 16,
  ARM_MC_CMD_READ_SINGLE_BLOCK = 17,
  ARM_MC_CMD_READ_MULTIPLE_BLOCK = 18,
  ARM_MC_CMD_SEND_TUNING_BLOCK = 19,
  ARM_MC_CMD_WRITE_SINGLE_BLOCK = 24,
  ARM_MC_CMD_WRITE_MULTIPLE_BLOCK = 25,
  ARM_MC_CMD_SET_WRITE_PROT = 28,
  ARM_MC_CMD_CLR_WRITE_PROT = 29,
  ARM_MC_CMD_SEND_WRITE_PROT = 30,
  ARM_MC_CMD_SD_SEND_OP_COND = 41,
  ARM_MC_CMD_LOCK_UNLOCK = 42,
  ARM_MC_CMD_APP_CMD = 55,
  ARM_MC_CMD_READ_OCR = 58,
  ARM_MC_CMD_CRC_ON_OFF = 59
}
 Memory Card Command Set. More...
 
enum  ARM_MC_RESPONSE {
  ARM_MC_RESPONSE_NONE = 0,
  ARM_MC_RESPONSE_R1,
  ARM_MC_RESPONSE_R1b,
  ARM_MC_RESPONSE_R2,
  ARM_MC_RESPONSE_R3,
  ARM_MC_RESPONSE_R4,
  ARM_MC_RESPONSE_R5,
  ARM_MC_RESPONSE_R5b,
  ARM_MC_RESPONSE_R6,
  ARM_MC_RESPONSE_R7
}
 Memory Card Response Types. More...
 
enum  ARM_MCI_EVENT {
  ARM_MCI_EVENT_INSERTED,
  ARM_MCI_EVENT_REMOVED,
  ARM_MCI_EVENT_BUSY_DEASSERTED
}
 MCI Card Event. More...
 
enum  ARM_MCI_POWER {
  ARM_MCI_POWER_OFF = 0,
  ARM_MCI_POWER_VDD_3V3,
  ARM_MCI_POWER_VDD_1V8
}
 MCI Card Power. More...
 
enum  ARM_MCI_BUS_MODE {
  ARM_MCI_BUS_OPEN_DRAIN,
  ARM_MCI_BUS_PUSH_PULL
}
 MCI Bus Mode. More...
 
enum  ARM_MCI_BUS_DATA_WIDTH {
  ARM_MCI_BUS_DATA_WIDTH_1,
  ARM_MCI_BUS_DATA_WIDTH_4,
  ARM_MCI_BUS_DATA_WIDTH_8
}
 MCI Bus Data Width. More...
 
enum  ARM_MCI_BUS_SIGNALING {
  ARM_MCI_BUS_SIGNALING_3V3,
  ARM_MCI_BUS_SIGNALING_1V8
}
 MCI Bus Signaling. More...
 
enum  ARM_MCI_TRANSFER_MODE {
  ARM_MCI_TRANSFER_READ,
  ARM_MCI_TRANSFER_WRITE
}
 MCI Transfer Mode. More...
 
enum  ARM_MCI_STATUS {
  ARM_MCI_OK = 0,
  ARM_MCI_ERROR = 1,
  ARM_MCI_ERROR_UNSUPPORTED = 2,
  ARM_MCI_ERROR_RESPONSE = 3,
  ARM_MCI_ERROR_COMMAND_TIMEOUT = 4,
  ARM_MCI_ERROR_TRANSFER_TIMEOUT = 5,
  ARM_MCI_ERROR_CRC = 6
}
 MCI Status of executed operation. More...
 

Macro Definition Documentation

#define ARM_MCI_API_VERSION   ARM_DRV_VERSION_MAJOR_MINOR(1,10) /* API version */