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

📄 rbccmd.h

📁 TMS2812实现U盘FAT文件系统C代码
💻 H
字号:
#define MAX_par 							15
#define RBC_CMD_READ10						0x28
#define RBC_CMD_READCAPACITY				0x25
#define RBC_CMD_WRITE10						0x2A
// RBC commands
#define SPC_CMD_INQUIRY						0x12
#define SPC_CMD_PRVENTALLOWMEDIUMREMOVAL	0x1E
#define SPC_CMD_REQUESTSENSE				0x03
#define SPC_CMD_TESTUNITREADY				0x00
////////////////////////////////////////////////////////////////////////////////////
// Command Descriptor Block
//      _RBC : Reduced Block Command
//      _SPC : SPC-2 SCSI primary Command - 2
////////////////////////////////////////////////////////////////////////////////////
typedef struct _SYS_INFO_BLOCK{
  unsigned long StartSector;
  unsigned long TotalSector;
  
  INT16 BPB_BytesPerSec;
  INT8 BPB_SecPerClus;
  
  INT8 BPB_NumFATs;
  INT16 BPB_RootEntCnt;
  INT16 BPB_TotSec16;
  INT16 BPB_FATSz16;
  INT16 BPB_SecPerTrk;
  INT16 BPB_NumHeads;
  unsigned long BPB_HiddSec;
  unsigned long BPB_TotSec32;
///////////////////////////////
  unsigned long FatStartSector;
  unsigned long RootStartSector;
  unsigned long FirstDataSector;
/////////////////////FAT32///////////////////////////////
  INT32 BPB_FATSz32;
  unsigned long RootStartCluster;
  unsigned long TotCluster;
  unsigned char FAT;
} SYS_INFO_BLOCK;

typedef struct _FILE_INFO{
  unsigned char bFileOpen;
  unsigned long StartCluster;//unsigned int StartCluster;
  unsigned long LengthInByte;
  unsigned long ClusterPointer;//unsigned int ClusterPointer;
  unsigned long SectorPointer;
  unsigned int 	OffsetofSector;
  unsigned char SectorofCluster;
  unsigned long pointer;
  unsigned long FatSectorPointer;//unsigned int	FatSectorPointer;
} FILE_INFO;

typedef struct _DIR_INFO{
	unsigned char 	name[8];
	unsigned char 	extension[3];
	unsigned char 	attribute;
	unsigned char 	Reserved[10];
	unsigned int 	lastUpdateDate;
	unsigned int 	lastUpdateTime;
	unsigned int 	startCluster;
	unsigned long 	length;
} DIR_INFO;

⌨️ 快捷键说明

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