⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 storage.h

📁 NEC527多功能电表完整源代码,包括LCD驱动,显示,计量,存储,整个527驱动程序!
💻 H
📖 第 1 页 / 共 4 页
字号:
#define DAY_MIN_VAL (unsigned short)(7)
#define DAY_MIN_TIME (unsigned short)(10)
#define DAY_AVERAGE_VAL (unsigned short)(14)
#define DAY_PH_OFFSET (unsigned short)(17)
//addr = 7337
#define ADDR_OF_DAY_AVERAGE_INFO (unsigned short)(ADDR_OF_DAY_DATA_END)
#define DAY_AVERAGE_INFO_SIZE (unsigned short)(40)
#define ADDR_OF_DAY_AVERAGE_INFO_END (unsigned short)(ADDR_OF_DAY_DATA_END+DAY_AVERAGE_INFO_SIZE)
#define DAY_AVERAGE_PHVA_INFO (unsigned short)(0)
#define DAY_AVERAGE_PHVB_INFO (unsigned short)(4)
#define DAY_AVERAGE_PHVC_INFO (unsigned short)(8)
#define DAY_AVERAGE_PHIA_INFO (unsigned short)(12)
#define DAY_AVERAGE_PHIB_INFO (unsigned short)(16)
#define DAY_AVERAGE_PHIC_INFO (unsigned short)(20)
#define DAY_AVERAGE_PHFA_INFO (unsigned short)(24)
#define DAY_AVERAGE_PHFB_INFO (unsigned short)(28)
#define DAY_AVERAGE_PHFC_INFO (unsigned short)(32)
#define DAY_AVERAGE_PHFS_INFO (unsigned short)(36)
//addr = 7377
#define ADDR_OF_DAY_AVERAGE_PTR (unsigned short)(ADDR_OF_DAY_AVERAGE_INFO_END)
#define DAY_AVERAGE_PTR_SIZE (unsigned short)(2)
#define ADDR_OF_DAY_AVERAGE_PTR_END (unsigned short)(ADDR_OF_DAY_AVERAGE_PTR+DAY_AVERAGE_PTR_SIZE)
//addr = 7379
#define ADDR_OF_MON_DATA_START (unsigned short)(ADDR_OF_DAY_AVERAGE_PTR_END)
#define MON_DATA_SIZE (unsigned short)(170)
#define ADDR_OF_MON_DATA_END (unsigned short)(ADDR_OF_MON_DATA_START+MON_DATA_SIZE)
#define MON_PHVA_INFO (unsigned short)(0)
#define MON_PHVB_INFO (unsigned short)(17)
#define MON_PHVC_INFO (unsigned short)(34)
#define MON_PHIA_INFO (unsigned short)(51)
#define MON_PHIB_INFO (unsigned short)(68)
#define MON_PHIC_INFO (unsigned short)(85)
#define MON_PHFA_INFO (unsigned short)(102)
#define MON_PHFB_INFO (unsigned short)(119)
#define MON_PHFC_INFO (unsigned short)(136)
#define MON_PHFS_INFO (unsigned short)(153)
#define MON_MAX_VAL (unsigned short)(0)
#define MON_MAX_TIME (unsigned short)(3)
#define MON_MIN_VAL (unsigned short)(7)
#define MON_MIN_TIME (unsigned short)(10)
#define MON_AVERAGE_VAL (unsigned short)(14)
#define MON_PH_OFFSET (unsigned short)(17)
//addr = 7549
#define ADDR_OF_MON_AVERAGE_INFO (unsigned short)(ADDR_OF_MON_DATA_END)
#define MON_AVERAGE_INFO_SIZE (unsigned short)(40)
#define ADDR_OF_MON_AVERAGE_INFO_END (unsigned short)(ADDR_OF_MON_AVERAGE_INFO+MON_AVERAGE_INFO_SIZE)
#define MON_AVERAGE_PHVA_INFO (unsigned short)(0)
#define MON_AVERAGE_PHVB_INFO (unsigned short)(4)
#define MON_AVERAGE_PHVC_INFO (unsigned short)(8)
#define MON_AVERAGE_PHIA_INFO (unsigned short)(12)
#define MON_AVERAGE_PHIB_INFO (unsigned short)(16)
#define MON_AVERAGE_PHIC_INFO (unsigned short)(20)
#define MON_AVERAGE_PHFA_INFO (unsigned short)(24)
#define MON_AVERAGE_PHFB_INFO (unsigned short)(28)
#define MON_AVERAGE_PHFC_INFO (unsigned short)(32)
#define MON_AVERAGE_PHFS_INFO (unsigned short)(36)
//addr = 7589
#define ADDR_OF_MON_AVERAGE_PTR (unsigned short)(ADDR_OF_MON_AVERAGE_INFO_END)
#define MON_AVERAGE_PTR_SIZE (unsigned short)(2)
#define ADDR_OF_MON_AVERAGE_PTR_END (unsigned short)(ADDR_OF_MON_AVERAGE_PTR+MON_AVERAGE_PTR_SIZE)
//addr = 7591
#define ADDR_OF_FED_BASE (unsigned short)(ADDR_OF_MON_AVERAGE_PTR_END)
#define FED_PHASE_ENERGE (unsigned short)(200)
#define FED_SIZE (unsigned short)(248)
#define ADDR_OF_FED_END (unsigned short)(ADDR_OF_FED_BASE+FED_SIZE)
//addr = 7839
#define ADDR_OF_LINEPWR_START (unsigned short)(ADDR_OF_FED_END)
#define LINEPWR_SIZE (unsigned short)(36)
#define ADDR_OF_LINEPWR_END (unsigned short)(ADDR_OF_LINEPWR_START+LINEPWR_SIZE)

/******************************************************************************************
DataFlash Address assign
 ******************************************************************************************/
#define INFO_BASE (unsigned long)(DF_PAGE_LEN*8)
#define INFO_OFFSET (unsigned long)(DF_PAGE_LEN)
#define INFO_SIZE (unsigned long)(INFO_OFFSET*8)

#define YEAR_BASE (unsigned long)(DF_PAGE_LEN*16)
#define MON_OFFSET (unsigned long)(DF_PAGE_LEN*2)
#define YEAR_SIZE (unsigned long)(MON_OFFSET*12)

#define BASE_CURS (unsigned long)(YEAR_BASE+YEAR_SIZE*10)
#define BASE_CURS_BAK (unsigned long)(BASE_CURS+MON_OFFSET)
#define BASE_CUR (unsigned long)(BASE_CURS_BAK+MON_OFFSET) 
#define BASE_CUR_BAK (unsigned long)(BASE_CUR+MON_OFFSET)

// year data format
#define MON_OFFSET1 (unsigned long)4
#define MON_ENERGY_CS (unsigned long)(MON_OFFSET1*0)
#define MON_ENERGY (unsigned long)(MON_ENERGY_CS+MON_OFFSET1)
#define MON_ENERGY_SIZE (unsigned long)(4*50)
#define MON_ENERGY_PHASE (unsigned long)(MON_ENERGY+MON_ENERGY_SIZE)
#define MON_ENERGY_PHASE_SIZE (unsigned long)(48)
#define MON_PH_DATA_INFO (unsigned long)(MON_ENERGY_PHASE+MON_ENERGY_PHASE_SIZE)
#define MON_AVER_DATA_INFO (unsigned long)(MON_PH_DATA_INFO+MON_DATA_SIZE)

#define MON_MD_REC (unsigned long)(DF_PAGE_LEN)
#define MON_MD_REC_OFFSET (unsigned long)(SIZE_PER_MD_REC)
#define MON_MD_REC_SIZE (unsigned long)(MON_MD_REC_OFFSET*TOTAL_MD_REC_NUM)

#define DAY_BASE (unsigned long)(137280)//(BASE_CUR_BAK+MON_OFFSET)
#define DAY_OFFSET (unsigned long)(DF_PAGE_LEN)
#define MAX_REC_DAY_CNT (unsigned long)(100)
#define DAY_SIZE (unsigned long)(DAY_OFFSET*MAX_REC_DAY_CNT)
 
#define EVT_LOST_REC_BASE (unsigned long)(DAY_BASE+DAY_SIZE+DF_PAGE_LEN)
#define EVT_LOST_REC_OFFSET (unsigned long)(10)
#define EVT_LOST_REC_LEN (unsigned long)(EVT_LOST_REC_OFFSET*10)
#define EVT_LOST_REC_SIZE (unsigned long)(DF_PAGE_LEN)
#define EVT_LOST_REC_END (unsigned long)(EVT_LOST_REC_BASE+EVT_LOST_REC_SIZE)

#define EVT_LVI_REC_OFFSET (unsigned long)(78)
#define EVT_LVI_START_TIME (unsigned long)(0)
#define EVT_LVI_END_TIME (unsigned long)(5)
#define EVT_LVI_APOWR_Z (unsigned long)(10)
#define EVT_LVI_APOWR_F (unsigned long)(14)
#define EVT_LVI_RPOWR_Z (unsigned long)(18)
#define EVT_LVI_RPOWR_F (unsigned long)(22)
#define EVT_LVI_PA_POWER (unsigned long)(26)
#define EVT_LVI_PB_POWER (unsigned long)(42)
#define EVT_LVI_PC_POWER (unsigned long)(58)
#define EVT_LVI_CUR_REQ (unsigned long)(74)

#define EVT_LOWV_REC_BASE (unsigned long)(EVT_LOST_REC_END)
#define EVT_LOWV_REC_SIZE (unsigned long)(DF_PAGE_LEN*6)
#define EVT_LOWV_REC_END (unsigned long)(EVT_LOWV_REC_BASE+EVT_LOWV_REC_SIZE)

#define EVT_LOWI_REC_BASE (unsigned long)(EVT_LOWV_REC_END)
#define EVT_LOWI_REC_SIZE (unsigned long)(DF_PAGE_LEN*6)
#define EVT_LOWI_REC_END (unsigned long)(EVT_LOWI_REC_BASE+EVT_LOWI_REC_SIZE)

#define EVT_LOWV_ALL_REC_BASE (unsigned long)(EVT_LOWI_REC_END)
#define EVT_LOWV_ALL_REC_OFFSET (unsigned long)(10)
#define EVT_LOWV_ALL_REC_SIZE (unsigned long)(DF_PAGE_LEN)
#define EVT_LOWV_ALL_REC_BASE_END (unsigned long)(EVT_LOWV_ALL_REC_BASE+EVT_LOWV_ALL_REC_SIZE)

#define EVT_OV_REC_BASE (unsigned long)(197080)//(EVT_LOWV_ALL_REC_BASE_END)
#define EVT_OV_REC_OFFSET (unsigned long)(12)
#define EVT_OV_REC_LEN (unsigned long)(EVT_OV_REC_OFFSET*10)
#define EVT_OV_REC_SIZE (unsigned long)(DF_PAGE_LEN)
#define EVT_OV_REC_END (unsigned long)(EVT_OV_REC_BASE+EVT_OV_REC_SIZE)

#define EVT_OI_REC_BASE (unsigned long)(EVT_OV_REC_END)
#define EVT_OI_REC_OFFSET (unsigned long)(12)
#define EVT_OI_REC_LEN (unsigned long)(EVT_OI_REC_OFFSET*10)
#define EVT_OI_REC_SIZE (unsigned long)(DF_PAGE_LEN)
#define EVT_OI_REC_END (unsigned long)(EVT_OI_REC_BASE+EVT_OI_REC_SIZE)

#define EVT_CURRENT_IMBA_BASE (unsigned long)(EVT_OI_REC_END)
#define EVT_CURRENT_IMBA_OFFSET (unsigned long)(19)
#define EVT_CURRENT_IMBA_SIZE (unsigned long)(DF_PAGE_LEN)
#define EVT_CURRENT_IMBA_END (unsigned long)(EVT_CURRENT_IMBA_BASE+EVT_CURRENT_IMBA_SIZE)

#define EVT_WATT_OVER_BASE (unsigned long)(EVT_CURRENT_IMBA_END)
#define EVT_WATT_OVER_OFFSET (unsigned long)(13)
#define EVT_WATT_OVER_SIZE (unsigned long)(DF_PAGE_LEN)
#define EVT_WATT_OVER_END (unsigned long)(EVT_WATT_OVER_BASE+EVT_WATT_OVER_SIZE)

#define EVT_REQ_OVER_BASE (unsigned long)(EVT_WATT_OVER_END)
#define EVT_REQ_OVER_OFFSET (unsigned long)(13)
#define EVT_REQ_OVER_SIZE (unsigned long)(DF_PAGE_LEN)
#define EVT_REQ_OVER_END (unsigned long)(EVT_REQ_OVER_BASE+EVT_REQ_OVER_SIZE)

#define EVT_VOL_SEQERR_BASE (unsigned long)(EVT_REQ_OVER_END)
#define EVT_VOL_SEQERR_OFFSET (unsigned long)(13)
#define EVT_VOL_SEQERR_SIZE (unsigned long)(DF_PAGE_LEN)
#define EVT_VOL_SEQERR_END (unsigned long)(EVT_VOL_SEQERR_BASE+EVT_VOL_SEQERR_SIZE)

#define EVT_CUR_SEQERR_BASE (unsigned long)(200200)//(EVT_VOL_SEQERR_END)
#define EVT_CUR_SEQERR_OFFSET (unsigned long)(13)
#define EVT_CUR_SEQERR_SIZE (unsigned long)(DF_PAGE_LEN)
#define EVT_CUR_SEQERR_END (unsigned long)(EVT_CUR_SEQERR_BASE+EVT_CUR_SEQERR_SIZE)

#define EVT_WATT_REVERSE_BASE (unsigned long)(EVT_CUR_SEQERR_END)
#define EVT_WATT_REVERSE_OFFSET (unsigned long)(23)
#define EVT_WATT_REVERSE_SIZE (unsigned long)(DF_PAGE_LEN)
#define EVT_WATT_REVERSE_END (unsigned long)(EVT_WATT_REVERSE_BASE+EVT_WATT_REVERSE_SIZE)

#define EVT_REC_SET_TIME_BASE (unsigned long)(EVT_WATT_REVERSE_END)
#define EVT_REC_SET_TIME_OFFSET (unsigned long)(18)
#define EVT_REC_SET_TIME_SIZE (unsigned long)(DF_PAGE_LEN)
#define EVT_REC_SET_TIME_END (unsigned long)(EVT_REC_SET_TIME_BASE+EVT_REC_SET_TIME_SIZE)
#define EVT_REC_SET_TIME_CNT (unsigned long)(0)
#define EVT_REC_SET_TIME_PORT (unsigned long)(2)
#define EVT_REC_SET_TIME_GRADE (unsigned long)(3)
#define EVT_REC_SET_TIME_NEW_CLOCK (unsigned long)(4)
#define EVT_REC_SET_TIME_OLD_CLOCK (unsigned long)(12)

#define EVT_REC_DATA_CLR_BASE (unsigned long)(EVT_REC_SET_TIME_END)
#define EVT_REC_DATA_CLR_OFFSET (unsigned long)(90)
#define EVT_REC_DATA_CLR_COMMPORT (unsigned long)(0)
#define EVT_REC_DATA_CLR_PASSWORD (unsigned long)(1)
#define EVT_REC_DATA_CLR_TIME (unsigned long)(2)
#define EVT_REC_DATA_CLR_POWER (unsigned long)(10)
#define EVT_REC_DATA_CLR_SIZE (unsigned long)(DF_PAGE_LEN*2)
#define EVT_REC_DATA_CLR_END (unsigned long)(EVT_REC_DATA_CLR_BASE+EVT_REC_DATA_CLR_SIZE)

#define EVT_REC_REQ_CLR_BASE (unsigned long)(EVT_REC_DATA_CLR_END)
#define EVT_REC_REQ_CLR_OFFSET (unsigned long)(22)
#define EVT_REC_REQ_CLR_SIZE (unsigned long)(DF_PAGE_LEN)
#define EVT_REC_REQ_CLR_END (unsigned long)(EVT_REC_REQ_CLR_BASE+EVT_REC_REQ_CLR_SIZE)

#define EVT_REC_PROG_BASE (unsigned long)(203320)//(EVT_REC_REQ_CLR_END)
#define EVT_REC_PROG_OFFSET (unsigned long)(12)
#define EVT_REC_PROG_SIZE (unsigned long)(DF_PAGE_LEN)
#define EVT_REC_PROG_END (unsigned long)(EVT_REC_PROG_BASE+EVT_REC_PROG_SIZE)
#define EVT_REC_PROG_CNT (unsigned long)(0)
#define EVT_REC_PROG_PORT (unsigned long)(2)
#define EVT_REC_PROG_GRADE (unsigned long)(3)
#define EVT_REC_PROG_TIME (unsigned long)(4)
#define EVT_REC_PROG_ITEM (unsigned long)(12)

#define DATAFLASH_FLAG_BASE (unsigned long)(EVT_REC_PROG_END)
#define DATAFLASH_SIZE (unsigned long)(DF_PAGE_LEN)
#define DATAFLASH_FLAG_END (unsigned long)(DATAFLASH_FLAG_BASE+DATAFLASH_SIZE)

#define EVT_REC_PM_CLR_BASE (unsigned long)(DATAFLASH_FLAG_END)
#define EVT_REC_PM_CLR_OFFSET (unsigned long)(96)
#define EVT_REC_PM_CLR_SIZE (unsigned long)(DF_PAGE_LEN*10)
#define EVT_REC_PM_CLR_END (unsigned long)(EVT_REC_PM_CLR_BASE+EVT_REC_PM_CLR_SIZE)
#define EVT_REC_PM_CLR_COMMPORT (unsigned long)(0)
#define EVT_REC_PM_CLR_PASSWORD (unsigned long)(1)
#define EVT_REC_PM_CLR_TIME (unsigned long)(2)
#define EVT_REC_PM_CLR_PROG_COUNT (unsigned long)(10)
#define EVT_REC_PM_CLR_COVERUP_COUNT (unsigned long)(12)
#define EVT_REC_PM_CLR_COVERDOWN_COUNT (unsigned long)(14)
#define EVT_REC_PM_CLR_POWER (unsigned long)(16)

#define LOAD_RESPRESET_DAY_BASE (unsigned long)(EVT_REC_PM_CLR_END)
#define SIZE_LOAD_RESPRESET_DAY (unsigned long)(DF_PAGE_LEN * 24)
#define OFFSET_LOAD_RESPRESET_DAY (unsigned long)(40)
#define LOAD_RESPRESET_DAY_END (unsigned long)(LOAD_RESPRESET_DAY_BASE+SIZE_LOAD_RESPRESET_DAY)

#define ZERO_FREEZE_POWER_BASE (unsigned long)(LOAD_RESPRESET_DAY_END)
#define OFFSET_ZERO_FREEZE_POWER (unsigned long)(40)
#define SIZE_ZERO_FREEZE_POWER (unsigned long)(DF_PAGE_LEN)
#define ZERO_FREEZE_POWER_END (unsigned long)(ZERO_FREEZE_POWER_BASE+SIZE_ZERO_FREEZE_POWER)

#define BASE_LOAD_CURVE (unsigned long)(DF_PAGE_LEN*1024)

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -