#ifndef _EEPROM_H_ #define _EEPROM_H_ #include "includes.h" #include "apt32f102.h" /*地址范围:0x10000000~0x100007FF*/ #define EEPROM_MCUDevInfo_Address 0x10000000 //MCU 设备信息地址固定为0x10000000,大小为0x40 此区域不可改动 #define EEPROM_PARA_SaveAddr 0x10000100 #define EEPROM_TOUCHPARA1_SaveAddr 0x10000200 #define EEPROM_TOUCHPARA2_SaveAddr 0x10000280 #define EEPROM_TOUCHPARA3_SaveAddr 0x10000300 /* EEPROM 保存数据格式: * FLAG - 1Byte 保存标志位 * LEN - 2Byte 保存数据长度 * CHECK - 1Byte 保存数据校验 * DATA - nByte 保存数据内容 * * */ #define EEPROM_SAVE_Flag 0xA5 //EEPROM保存标志位 //#define EEPROM_PARA_Size 50 #define EEPROM_Data_Offset 0x04 /*boot*/ #define EEPROM_Offset_SaveFlag 0x00 #define EEPROM_Offset_Datalen 0x01 #define EEPROM_Offset_Check 0x03 #define EEPROM_Offset_Data 0x04 #define EEPROM_SVAE_FLAG 0xAE #define EEPROM_DATA_Size_Max 0x40 //目前保存数据内容最长为100Byte #define EEPROM_PARA_Size 50 #define EEPROM_DEV_NAME_Size 32 #define EEPROM_WINDSTOP_OUT_Default 0 //0-10000mV #define EEPROM_WINDLOW_OUT_Default 3000 // #define EEPROM_WINDMID_OUT_Default 6000 // #define EEPROM_WINDHIGH_OUT_Default 10000 // #define EEPROM_Device_Addr_Default 0x01 //设备初始地址 typedef struct{ U8_T dev_addr; //设备地址 U8_T dev_type; //设备类型 U8_T dev_boot_ver; //设备Boot的软件版本号 U8_T dev_app_ver; //设备APP的软件版本号 U8_T dev_name_len; //设备名称的长度 U8_T dev_name[EEPROM_DEV_NAME_Size]; //设备名称 }E_MCU_DEV_INFO; extern E_MCU_DEV_INFO g_mcu_dev; void EEPROM_Init(void); U8_T EEPROM_ReadPara(void); U8_T EEPROM_WritePara(void); void EEPROM_TouchPara_Printf(); /*boot*/ U8_T EEPROM_ReadMCUDevInfo(E_MCU_DEV_INFO *info); U8_T EEPROM_WriteMCUDevInfo(E_MCU_DEV_INFO *info); void EEPROM_Default_MCUDevInfo(E_MCU_DEV_INFO *info); void EEPROM_Validate_MCUDevInfo(E_MCU_DEV_INFO *info); #endif