还有这个,也是一样的.
/********************************************************************************************************************* ** 函数名称: uint8 SD_ReadOCR() Name: uint8 SD_ReadOCR() ** 功能描述: 读操作条件寄存器OCR Function: read OCR register of card ** 输 入: uint8 ocrlen : 寄存器长度(固定为4) Input: uint8 ocrlen : len of register (fixed,is 4) uint8 *recbuf : 接收缓冲区 uint8 *recbuf : recbuffer ** 输 出: 0: 正确 >0: 错误码 Output: 0: right >0: error code **********************************************************************************************************************/ uint8 SD_ReadOCR(uint8 ocrlen, uint8 *recbuf) { uint8 param[4] = {0,0,0,0}, resp[5], tmp;
tmp = SD_SendCmd(CMD58, param, CMD58_R, resp); /* 读 OCR 寄存器命令 */ if (tmp != SD_NO_ERR) /* read OCR register command */ return tmp; if (resp[0] != 0) return SD_ERR_CMD_RESP; /* 响应错误 response is error */ for (tmp = 0; tmp < 4; tmp++) recbuf[tmp] = resp[tmp + 1]; /* 复制OCR寄存器内容到接收缓冲区 */ return SD_NO_ERR; }
|
|