Files
player/Project/Src/MyApp/system_updata.h

91 lines
1.4 KiB
C
Raw Permalink Normal View History

2025-06-27 00:32:57 +08:00
#ifndef SYSTEM_UPDATA_H__
#define SYSTEM_UPDATA_H__
#include "main.h"
2025-07-05 19:47:28 +08:00
//<2F><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С
2025-06-27 00:32:57 +08:00
#define UPDATA_BUFF_SIZE 4096
2025-07-05 19:47:28 +08:00
// <20><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߴ<EFBFBD>
2025-06-27 00:32:57 +08:00
#define SEND_FILE_PACK_MAXSIZE 100
2025-07-05 19:47:28 +08:00
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݽṹ<DDBD><E1B9B9>
2025-06-27 00:32:57 +08:00
typedef struct
{
int step;
char name[256];
u32 dataLen;
u32 saveAddr;
int packet_all;
int packet_now;
u8 dataBuff[UPDATA_BUFF_SIZE];
int buffUsed;
}SysFile_UpdataStruct;
2025-07-05 19:47:28 +08:00
// <20><><EFBFBD><EFBFBD><E5B7A2><EFBFBD><EFBFBD><EFBFBD>ݵĽṹ<C4BD><E1B9B9>
2025-06-27 00:32:57 +08:00
typedef struct
{
char *name;
char *path;
int packet_all;
int packet_now;
int file_size;
int size_left;
2025-07-05 19:47:28 +08:00
int (*send_data)(void *data,int len);// <20><><EFBFBD>ͺ<EFBFBD><CDBA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD>ɹ<EFBFBD>
int (*progress)(int now,int all);// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȵĺ<C8B5><C4BA><EFBFBD>
2025-06-27 00:32:57 +08:00
}SysFile_SendStruct;
2025-07-05 19:47:28 +08:00
//<2F><>ȡһ<C8A1><D2BB><EFBFBD>ļ<EFBFBD>
2025-06-27 00:32:57 +08:00
u8 *SysFile_GetFileByName (char *name,u32 *size);
2025-07-05 19:47:28 +08:00
//ͨ<><CDA8>SD<53><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>
2025-06-27 00:32:57 +08:00
void SysFile_Updata(char *FileName,char *FilePath);
2025-07-05 19:47:28 +08:00
//ͨ<><CDA8>Э<EFBFBD><D0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>
2025-06-27 00:32:57 +08:00
void SysFile_UpdataByCom (void);
2025-07-05 19:47:28 +08:00
//ͨ<><CDA8>USB<53><42><EFBFBD><EFBFBD>ϵͳ<CFB5>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
2025-06-27 00:32:57 +08:00
void SysFile_UpdataByIrq (u8 *data,int len);
2025-07-05 19:47:28 +08:00
// <20><>ʼ<EFBFBD><CABC>
2025-06-27 00:32:57 +08:00
int SysFile_SendFileInit(SysFile_SendStruct *send,char *name,char *path,
int (*send_data)(void *data,int len),int (*progress)(int now,int all));
2025-07-05 19:47:28 +08:00
// <20><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>,<2C><><EFBFBD><EFBFBD>0<EFBFBD>ɹ<EFBFBD>
2025-06-27 00:32:57 +08:00
int SysFile_SendFileName(SysFile_SendStruct *send);
2025-07-05 19:47:28 +08:00
// <20><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC>ߴ<EFBFBD>,<2C><><EFBFBD><EFBFBD>0<EFBFBD>ɹ<EFBFBD>
2025-06-27 00:32:57 +08:00
int SysFile_SendFileInfo(SysFile_SendStruct *send);
2025-07-05 19:47:28 +08:00
// <20><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD>0<EFBFBD>ɹ<EFBFBD>
2025-06-27 00:32:57 +08:00
int SysFile_SendFileData(SysFile_SendStruct *send);
2025-07-05 19:47:28 +08:00
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD>0
2025-06-27 00:32:57 +08:00
int SysFile_PackData(u8 *out,u8 *in,int in_size);
#endif