⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fattypes.h

📁 本程序为ST公司开发的源代码
💻 H
字号:
/************************************************** * * fattypes.h * * CVS ID:   $Id: * Author:   Michal Chlapik [ MCH ] - STM * Date:     $Date: 2006/09/18 09:55:22 $ * Revision: $Revision: 1.5 $ * * Description: * *   <...> * *************************************************** * * COPYRIGHT (C) ST Microelectronics  2005 *            All Rights Reserved * **************************************************** * * STM CVS Log: * * $Log: FATtypes.h,v $ * Revision 1.5  2006/09/18 09:55:22  belardi * Corrected CVS keyword usage * * Revision 1.4  2006/09/18 09:24:02  belardi * Added Log CVS keyword into file header * * ***************************************************/#ifndef FATTYPES_H#define FATTYPES_H#include "OS20i.h"typedef struct{  uint32 Cluster;  uint32 Byte;} ENTRY_ADDRESS;typedef struct BPB_boot_common_s{    uint8     jmpBoot0;         // 00h : Jump code    uint8     jmpBoot1;         // 01h : Jump code    uint8     jmpBoot2;         // 02h : Jump code    char      OEMName[9];         // 03h : OEM name [8+1]    uint16    BytesPerSec;      // 0Bh : Bytes per sector    uint8     SecPerClust;      // 0Dh : Sectors per cluster    uint16    RsvdSecCnt;       // 0Eh : Number of reserved sectors    uint8     NumFATs;          // 10h : Number of copies of fat    uint16    RootEntCnt;       // 11h : Maximum number of root dir entries    uint16    TotSec16;         // 13h : Number of sectors in partition < 32MB    uint8     Media;            // 15h : Media descriptor    uint16    FATSz16;          // 16h : Sectors per FAT    uint16    SecPerTrk;        // 18h : Sectors per track    uint16    NumHeads;         // 1Ah : Number of heads    uint32    HiddSec;          // 1Ch : Number of hidden sectors    uint32    TotSec32;         // 20h : Number of sectors in partition    //information not in file, but our own    uint8     FATType;          // FAT type    uint32    FATSz32Estim;     // 4 bytes at position 36, mess in FAT type determination} BPB_boot_common_t;typedef struct BPB_boot_rest_FAT_12_16_s{    uint8     DrvNum;               // 24h : Logical drive number of partition    uint8     BootSig;              // 26h : Extended signature    uint32    VolID;                // 27h : Serial number of partition    //char      VolLab[12];           // 2Bh : Volume name of partition [11+1]    char      FilSysType[9];        // 36h : FAT name [8+1]} BPB_boot_rest_FAT_12_16_t;typedef struct BPB_boot_rest_FAT_32_s{    uint32    FATSz32;          // 24h : Sectors per FAT    uint16    ExtFlags;         // 28h : number of active FAT    uint16    FSVer;            // 2Ah : Version number of the FAT32 volume    uint32    RootClus;         // 2Ch : First cluster of the root directory (2)    uint16    FSInfo;           // 30h : Sector number of FSINFO structure in the reserved area    uint16    BkBootSec;        // 32h : Sector number in the reserved area of a copy of the boot record    uint8     DrvNum;           // 40h : Logical drive number of partition    uint8     BootSig;          // 42h : Extended signature    uint32    VolID;            // 43h : Serial number of partition    //char      VolLab[12];       // 47h : Volume name of partition [11+1]    char      FilSysType[9];    // 52h : FAT name [8+1]} BPB_boot_rest_FAT_32_t;typedef union{  BPB_boot_rest_FAT_12_16_t BPB_boot_rest_FAT_12_16;  BPB_boot_rest_FAT_32_t    BPB_boot_rest_FAT_32;} BPB_boot_rest_union;typedef struct{    BPB_boot_common_t   BPB_boot_common;    BPB_boot_rest_union BPB_boot_rest;    uint32 RootRecordLba;    uint32 RootDirSec;    uint32 FirstDataSector;    //for Get_SectorRel    uint32 LastRequiredSector_rel;    boolean FirstPassGetSector_FAT;    //for Get_SectorAbs    uint32 LastRequiredSector_abs;    boolean FirstPassGetSectorAbs_FAT;    //ext filter  //  uint8 ExtTbl[10][3];  //M.Ch.    uint32 ExtTblLen;     //M.Ch.} PRIVATE_DATA_FAT;#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -