12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- #ifndef _FILE_SYS_H
- #define _FILE_SYS_H
- #include <stm32f10x.h>
- #define STORAGE_MARK 0x8abcdef8
- #define FILE_INDEX_ADDR 0x00000000
- #define FILE_DATA_ADDR 0x00001000
- #if 0
- #define FILE_DATA_ADDR_END 0x0017FFFF
- #else
- #define FILE_DATA_ADDR_END 0x001FFFFF
- #endif
- #define FILE_COUNT_MAX 90
- #define FILE_NAME_LEN_MAX 20
- #define FILE_ALL_DATA_LEN_MAX (FILE_DATA_ADDR_END-FILE_DATA_ADDR+1)
- typedef struct SUT_FILE_INFO
- {
- char FileName[FILE_NAME_LEN_MAX];
- char FileMD5[16];
- unsigned long FileLen;
- unsigned long FileAddr;
- }__attribute__((packed)) SUT_FILE_INFO;
- typedef struct SUT_FILE_LIST
- {
- unsigned long Mark;
- unsigned long FileCount;
- SUT_FILE_INFO FileInfo[FILE_COUNT_MAX];
- }__attribute__((packed)) SUT_FILE_LIST;
- extern SUT_FILE_LIST g_sutFilesList;
- int FileSysInit(void);
- void FileSysSaveIndex(void);
- void FileSysReadIndex(void);
- int FileCheckMD5(int FileIndex);
- int GetFileIndex(const char *filename);
- int GetFileLen(int FileIndex);
- int ReadFileData(int FileIndex,u32 startAddr,u32 readLen,unsigned char *pData);
- int ModifyFileData(int FileIndex,u32 startAddr,u32 writeLen,unsigned char *pData);
- void PrintfAllRFileInfo(void);
- #endif
|