disk_ioctl需要回应CTRL_SYNC,GET_SECTOR_COUNT,GET_BLOCK_SIZE 三个命令,正确返回0即 RES_OK,不正确返回RES_ERROR。 所有的命令都从 ctrl 里面去读,返回值仅仅返回这次操作是否有效,而需要传递回去的数据在buff 里面,以下是我的: CTRL_SYNC命令,直接返回0; GET_SECTOR_COUNT,得到所有可用的扇区数目(逻辑寻址即...
void *buff /* Buffer to send/receive control data */ ) { if (drv==0) { switch (ctrl) { case CTRL_SYNC : return RES_OK; case GET_SECTOR_COUNT : return RES_OK; case GET_BLOCK_SIZE : return RES_OK; case CTRL_POWER : break; case CTRL_LOCK : break; case CTRL_EJECT : break;...
读写扇区,注意参数哦! disk_ioctl需要回应CTRL_SYNC,GET_SECTOR_COUNT,GET_BLOCK_SIZE 三个命令,正确返回0即 RES_OK,不正确返回RES_ERROR。 所有的命令都从 ctrl 里面去读,返回值仅仅返回这次操作是否有效,而需要传递回去的数据在buff 里面,以下是我的: CTRL_SYNC命令,直接返回0; GET_SECTOR_COUNT,得到所有可...
BYTE ctrl, /* Control code */ void *buff /* Buffer to send/receive control data */ ) { if (drv==0) { switch (ctrl) { case CTRL_SYNC : return RES_OK; case GET_SECTOR_COUNT : return RES_OK; case GET_BLOCK_SIZE : return RES_OK; case CTRL_POWER : break; case CTRL_LOCK : ...
case CTRL_SYNC: if(SD_GetTransferState()==SD_NO_TRANSFER) { res = RES_OK; } else { res = RES_ERROR; } break; case GET_BLOCK_SIZE: *(WORD*)buff = 512; res = RES_OK; break; case GET_SECTOR_COUNT: //读卡容量 ///formula of the capacity/// // // memory capacity...
case CTRL_SYNC: //等待写过程 SD_CS(0); //选中SD卡 if(SD_Wait_Ready())result = RES_ERROR;/*等待卡准备好*/ else res = RES_OK; //成功 SD_CS(1); //释放SD卡 break; case GET_SECTOR_SIZE://获取扇区大小 *(DWORD*)buff = 512; res = RES_OK; //成功 break; cas...
case CTRL_SYNC: //等待写过程 SD_CS(0); //选中SD卡 if(SD_Wait_Ready())result = RES_ERROR;/*等待卡准备好*/ else res = RES_OK; //成功 SD_CS(1); //释放SD卡 break; case GET_SECTOR_SIZE://获取扇区大小 *(DWORD*)buff = 512; ...
1、FATFS文件系统应用程序技术手册(中文版)基于RO.009A版本RV冋:件系统应用程序目录:函数名描述f_mount注册/注销一个工作区f_open打开/创建一个文件f_close关闭一个文件fread读取文件f_write写文件flseek移动读/写指针,扩展文件大小f_truncate截断文件大小f_sync清空缓冲数据f_opendir打开一个目录freaddir读取一个...
switch (ctrl) { case CTRL_SYNC : return RES_OK; case GET_SECTOR_COUNT : return RES_OK; case GET_BLOCK_SIZE : return RES_OK; case CTRL_POWER : break; case CTRL_LOCK : break; case CTRL_EJECT : break; /* MMC/SDC command */ ...
{/* Make sure that no pending write process */caseCTRL_SYNC:res=RES_OK;break;/* Get number of sectors on the disk (DWORD) */caseGET_SECTOR_COUNT:BSP_SD_GetCardInfo(&CardInfo);*(DWORD*)buff=CardInfo.LogBlockNbr;res=RES_OK;break;/* Get R/W sector size (WORD) */caseGET_SECTOR_...