ZDBMS/header_drv/McuFlash.h

85 lines
2.6 KiB
C
Raw Normal View History

2025-02-06 07:35:32 +00:00
#ifndef __MCU_FLASH_H
#define __MCU_FLASH_H
#define XRAM_MAP_ADDR 0x0000
#define MCUFLASH_BK1_ADDR 0x0000
#define MCUFLASH_BK2_ADDR (MCUFLASH_BK1_ADDR + 512)
#define MCUFLASH_BK1_FLG_ADDR (MCUFLASH_BK1_ADDR + 510)
#define MCUFLASH_BK2_FLG_ADDR (MCUFLASH_BK2_ADDR + 510)
#define MCUFLASH_SECTOR_SIZE 512 //1Sector<6F>ij<EFBFBD><C4B3><EFBFBD>Ϊ512<31>ֽ<EFBFBD>
#define MCU_FLASH_WATI_DELAY 2
/**************************************************************************************/
//MCU Flash<73><68><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD>
/**************************************************************************************/
//ϵͳ<CFB5><CDB3>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>ʼ SubClassID=0x00
#define SYS_PARA_MAP_ADDR XRAM_MAP_ADDR
#define SYS_PARA_LEN 48
//<2F>û<EFBFBD><C3BB>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ SubClassID=0x01
#define SYSINFO_MAP_ADDR (SYS_PARA_MAP_ADDR+SYS_PARA_LEN)
#define SYSINFO_LEN 50
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ SubClassID=0x02
#define CHG_PARA_MAP_ADDR (SYSINFO_MAP_ADDR+SYSINFO_LEN)
#define CHG_PARA_LEN 18
//<2F>ŵ<EFBFBD><C5B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ SubClassID=0x03
#define DSG_PARA_MAP_ADDR (CHG_PARA_MAP_ADDR+CHG_PARA_LEN)
#define DSG_PARA_LEN 21
//Ԥ<><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ SubClassID=0x04
//Reserved
//<2F>ŵ<EFBFBD>PWM<57><4D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ SubClassID=0x05
#define DSG_PWM_PARA_MAP_ADDR (DSG_PARA_MAP_ADDR+DSG_PARA_LEN)
#define DSG_PWM_PARA_LEN 5
//<2F><><EFBFBD><EFBFBD><EFBFBD>¶ȱ<C2B6><C8B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ SubClassID=0x06
#define CHG_TEMP_PARA_MAP_ADDR (DSG_PWM_PARA_MAP_ADDR+DSG_PWM_PARA_LEN)
#define CHG_TEMP_PARA_LEN 11
//<2F>ŵ<EFBFBD><C5B5>¶ȱ<C2B6><C8B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ SubClassID=0x07
#define DSG_TEMP_PARA_MAP_ADDR (CHG_TEMP_PARA_MAP_ADDR+CHG_TEMP_PARA_LEN)
#define DSG_TEMP_PARA_LEN 9
//ƽ<><C6BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ SubClassID=0x08
#define BAL_PARA_MAP_ADDR (DSG_TEMP_PARA_MAP_ADDR+DSG_TEMP_PARA_LEN)
#define BAL_PARA_LEN 8
//<2F><><EFBFBD><EFBFBD>ͳ<EFBFBD>Ʋ<EFBFBD><C6B2><EFBFBD><EFBFBD><EFBFBD>ʼ SubClassID=0x09
#define SOC_PARA_MAP_ADDR (BAL_PARA_MAP_ADDR+BAL_PARA_LEN)
#define SOC_PARA_LEN 17
//AFE<46><45><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ SubClassID=0x0A
#define AFE_PARA_MAP_ADDR (SOC_PARA_MAP_ADDR+SOC_PARA_LEN)
#define AFE_PARA_LEN 4
//У׼<D0A3><D7BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ SubClassID=0x0B
#define CALI_PARA_MAP_ADDR (AFE_PARA_MAP_ADDR+AFE_PARA_LEN)
#define CALI_PARA_LEN 12
#define RESERVED_DATA_MAP_ADDR (CALI_PARA_MAP_ADDR+CALI_PARA_LEN)
#define RESERVED_DATA_LEN (510-(RESERVED_DATA_MAP_ADDR))
#define DataflashCheck_Map_ADDR 0xfe
#define DataflashCheck_LEN 0x0002
extern BOOL bMcuFlashWrWaitFlg;
extern BOOL bMcuFlashWrFlg;
extern BOOL bMcuFlashErr;
extern U8 xdata ucMcuFlashWrValid;
extern U8 xdata bMcuFlashWrWaitCnt;
extern BOOL McuFlashRead(U16 SourceAddr, U8 xdata *TargetAddr, U16 Length);
extern BOOL McuFlashWrite(U16 McuFlashAddr, U16 XramAddr);
extern void McuFlashWrOneByte(U16 McuFlashAddr,U8 WrData);
extern void McuFlashProcess(void);
extern void McuFlashWrWaitCheck(void);
extern BOOL McuFlashCheckFlg(U16 Saddr);
#endif