欢迎来到天天文库
浏览记录
ID:6326991
大小:190.50 KB
页数:39页
时间:2018-01-10
《基于51单片机fat32文件系统程序》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、基于51单片机FAT32文件系统程序#ifndef__ZNFAT_H__#define__ZNFAT_H__#include"mytype.h"//类型重定义/*******************************************************///znFAT的裁减宏---------------------------------------------------------//#defineZNFAT_ENTER_DIR//有此宏,函数znFAT_Enter_Dir()参与编译#defineZNFAT_OPEN_FILE//有此宏,函数znFAT_Ope
2、n_File()参与编译//#defineZNFAT_SEEK_FILE//有此宏,函数znFAT_Seek_File()参与编译//#defineZNFAT_READ_FILE//有此宏,函数znFAT_Read_File()参与编译//#defineZNFAT_READ_FILEX//有此宏,函数znFAT_Read_FileX()参与编译//#defineZNFAT_ADD_DAT//有此宏,函数znFAT_Add_Dat()参与编译//#defineZNFAT_CREATE_DIR//有此宏,函数znFAT_Create_Dir()参与编译//#defineZNFAT_CREA
3、TE_FILE//有此宏,函数znFAT_Create_File()参与编译//#defineZNFAT_DEL_FILE//有此宏,函数znFAT_Del_File()参与编译//#defineZNFAT_XCOPY_FILE//有此宏,函数znFAT_XCopy_File()参与编译//#defineZNFAT_RENAME_FILE//有此宏,函数znFAT_Rename_File()参与编译//#defineZNFAT_GET_TOTAL_SIZE//有此宏,函数znFAT_Get_Total_Size()参与编译//#defineznFAT_GET_REMAIN_CAP//有
4、此宏,函数znFAT_Get_Remain_Cap()参与编译#include"cj.h"#include"cj.h"//----------------------------------------------------------------------#defineSOC(c)(((c-pArg->FirstDirClust)*(pArg->SectorsPerClust))+pArg->FirstDirSector)//用于计算簇的开始扇区#defineCONSTconst//设备表#defineSDCARD0//SD卡#defineUDISK1//U盘#defineCFC
5、ARD2//CF卡#defineOTHER3//其它//这里的存储设备表,可以灵活扩充,以实现对更多存储设备的支持//-------------------------------------------#defineMAKE_FILE_TIME(h,m,s)((((unsignedint)h)<<11)+(((unsignedint)m)<<5)+(((unsignedint)s)>>1))/*生成指定时分秒的文件时间数据*/#defineMAKE_FILE_DATE(y,m,d)(((((unsignedint)y)+20)<<9)+(((unsignedint)m)<<5)+((
6、unsignedint)d))/*生成指定年月日的文件日期数据*///DPT:分区记录结构如下structPartRecord{UINT8Active;//0x80表示此分区有效UINT8StartHead;//分区的开始磁头UINT8StartCylSect[2];//开始柱面与扇区UINT8PartType;//分区类型UINT8EndHead;//分区的结束头UINT8EndCylSect[2];//结束柱面与扇区UINT8StartLBA[4];//分区的第一个扇区UINT8Size[4];//分区的大小};//MBR:分区扇区(绝对0扇区)定义如下structPartSect
7、or{UINT8PartCode[446];//MBR的引导程序structPartRecordPart[4];//4个分区记录UINT8BootSectSig0;//55UINT8BootSectSig1;//AA};//znFAT中对BPB的定义如下一共占用90个字节structznFAT_BPB{UINT8BS_jmpBoot[3];//跳转指令offset:0UINT8BS_OEMName[8];//offset:3UINT8BPB_B
此文档下载收益归作者所有