FatFs文件系统:disk_ioctl

网站作者3年前FatFs2541

控制设备特定的功能以及磁盘读写以外的其它功能。

DRESULT disk_ioctl (   
    BYTE Drive, /* 驱动器号 */   
    BYTE Command, /* 控制命令代码 */   
    void* Buffer /* 数据传输缓冲区 */  
);


参数:

Drive 指定驱动器号(1-9)。 

Command 指定命令代码。 

Buffer 取决于命令代码的参数缓冲区的指针。当不使用时,指定一个 NULL 指针。 


返回值:

RES_OK (0)函数成功。 

RES_ERROR 发生错误。 

RES_PARERR 无效的命令代码。 

RES_NOTRDY 磁盘驱动器还没被初始化。 


描述:

FatFs 模块只使用下述与设备无关的命令,没有使用任何设备相关功能。

命令描述
CTRL_SYNC

确保磁盘驱动器已经完成等待写过程。当磁盘 I/O 模块有一个写回高 速缓存时,立即冲洗脏扇区。在只读配置中,不需要该命令。

GET_SECTOR_SIZE

返回驱动器的扇区大小赋给 Buffer 指向的 WORD 变量。在单个扇区 大小配置中(_MAX_SS 为 512),不需要该命令。

GET_SECTOR_COUNT

返回总扇区数赋给 Buffer 指向的 DWORD 变量。只在 f_mkfs 函数中, 使用了该命令。

GET_BLOCK_SIZE

返回以扇区为单位的存储阵列的擦除块大小赋给 Buffer 指向的 DWORD变量。当擦除块大小未知或是磁盘设备时,返回1。只在f_mkfs 函数中,使用了该命令。


相关文章

FatFs文件系统:f_fdisk

划分一个物理驱动器。FRESULT f_fdisk (        BYTE Drive, /* Physical drive number */        const DWORD Part...

FatFs文件系统:f_getfree

获取空闲簇的数目。FRESULT f_getfree (        const XCHAR* Path, /* 驱动器的根目录 */        DWORD* Clusters, /* 存储...

FatFs文件系统:f_write

写入数据到一个文件。FRESULT f_write (      FIL* FileObject, /* 文件对象结构的指针 */      const void* Buffer, /* 存储写入...

FatFs文件系统:disk_read

从磁盘驱动器中读取扇区。DRESULT disk_read (        BYTE Drive, /* 物理驱动器号 */        BYTE* Buffer, /* 读取数据缓冲区的指针...

FatFs文件系统:f_rename

重命名一个对象。FRESULT f_rename (        const XCHAR* OldName, /* 原对象名的指针 */        const XCHAR* NewName ...

FatFs文件系统:f_opendir

打开一个目录。FRESULT f_opendir (      DIR* DirObject, /* 空白目录对象结构的指针 */      const XCHAR* DirName /* 目录名...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。