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

📄 fat16.h

📁 用LPC2103(ARM7)操作SD卡代码。
💻 H
字号:
#include  "config.h"
//-------------------------------------------------------------------------
typedef struct{
	uint8	PB_BootIndicator;
	uint8	PB_StartHead;
	uint16	PB_StartSector;
	uint8	PB_SystemID;
	uint8	PB_EndHead;
	uint16	PB_EndSector;
	uint32	PB_RelativeSector;
	uint32	PB_TotalSector;		
} FAT_PB;
//-------------------------------------------------------------------------
typedef struct{
	uint8	MBR_mbr[446];
	FAT_PB	MBR_pb[4];
	uint16	MBR_Signature;
} FAT_MBR;
//-------------------------------------------------------------------------
typedef struct{
	uint8		BS_jmpBoot[3];
	uint8		BS_OEMName[8];
	uint16	BPB_BytesPerSec;
	uint8		BPB_SecPerClus;
	uint16	BPB_RsvdSecCnt;
	uint8		BPB_NumFATs;
	uint16	BPB_RootEntCnt;
	uint16	BPB_TotSec16;
	uint8		BPB_Media;
	uint16	BPB_FATSz16;
	uint16	BPB_SecPerTrk;
	uint16	BPB_NumHeads;
	uint32	BPB_HiddSec;
	uint32	BPB_TotSec32;
	uint8		BS_DrvNum;
	uint8		BS_Reservedl;
	uint8		BS_BootSig;
	uint32	BS_VolID;
	uint8		BS_VolLab[11];
	uint8		BS_FilSysType[8];
	uint8		ExecutableCode[448];
	uint8		ExecutableMarker[2];
} FAT_BPB;
//-------------------------------------------------------------------------
typedef struct{
	uint8		NAME[8];
	uint8		TYPE[3];
} FILE_NAME;
//-------------------------------------------------------------------------
typedef struct{
	uint16	Start;
	uint32	Size;
} FILE_POSIT;
//-------------------------------------------------------------------------
typedef struct{
	FILE_NAME	FileName;
	uint8		FileAttrib;
	uint8		UnUsed[10];
	uint8		FileUpdateTime[2];
	uint8		FileUpdateData[2];
	FILE_POSIT	FilePosit;
} DIR;
//-------------------------------------------------------------------------
typedef struct{
	uint16	ClusID;
	uint16	SecOfClus;
	uint16	ByteOfSec;
} DATA_POSIT;
//-------------------------------------------------------------------------
#define	SD_SUCC				0
#define	SD_FAIL				1
//-------------------------------------------------------------------------
uint8 InitFat16(void);
uint8 CreateFile(uint8* Name,uint32 Size);
uint8 EreaseFile(uint8 Name[11]);
uint8 ReadFile(uint8 Name[11],uint32 Start,uint32 len,uint8 *p);
uint8 WriteFile(uint8 Name[11],uint32 Start,uint32 len,uint8 *p);
//-------------------------------------------------------------------------

⌨️ 快捷键说明

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