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

📄 storage.h

📁 单相多功能代码,计量芯片采用ADE7737做为计量,SPI通讯,仅供参考,不得用于商业
💻 H
📖 第 1 页 / 共 2 页
字号:

#define ADDR_OF_SPRING_FEST                (unsigned short)(BASE_PUBV+BASE_PUBV_OFFSET*12)       // 春节三天采用日时段表号      - 1字节 - C41D - 95.20
#define ADDR_OF_WEEKEND                    (unsigned short)(ADDR_OF_SPRING_FEST+1)               // 周休日采用的日时段表号      - 1字节 - C41E - 95.21

/* 公共假日存储格式定义 */
#define PUBV_OFFSET_MONTH                  2                                     // 时区信息(月)                - 1字节
#define PUBV_OFFSET_DAY                    1                                     // 时区信息(日)                - 1字节
#define PUBV_OFFSET_POTNUM                 0                                     // 时区信息(日时段表号)         - 1字节

/* 日时段表定义(HHmmNN) */
#define BASE_POT_T                         (unsigned short)(ADDR_OF_WEEKEND+1)
#define BASE_POT_T_OFFSET                  36

#define ADDR_OF_POT_TABLE_01               (unsigned short)(BASE_POT_T+BASE_POT_T_OFFSET*0)      // 第1日时段表存储地址   - 36字节 - C33X - 90.XX
#define ADDR_OF_POT_TABLE_02               (unsigned short)(BASE_POT_T+BASE_POT_T_OFFSET*1)      // 第2日时段表存储地址   - 36字节 - C34X - 91.XX
#define ADDR_OF_POT_TABLE_03               (unsigned short)(BASE_POT_T+BASE_POT_T_OFFSET*2)      // 第3日时段表存储地址   - 36字节 - C35X - 92.XX
#define ADDR_OF_POT_TABLE_04               (unsigned short)(BASE_POT_T+BASE_POT_T_OFFSET*3)      // 第4日时段表存储地址   - 36字节 - C36X - 93.XX
#define ADDR_OF_POT_TABLE_05               (unsigned short)(BASE_POT_T+BASE_POT_T_OFFSET*4)      // 第5日时段表存储地址   - 36字节 - C37X - 94.XX
#define ADDR_OF_POT_TABLE_06               (unsigned short)(BASE_POT_T+BASE_POT_T_OFFSET*5)      // 第6日时段表存储地址   - 36字节 - C38X - 9.XX
#define ADDR_OF_POT_TABLE_07               (unsigned short)(BASE_POT_T+BASE_POT_T_OFFSET*6)      // 第7日时段表存储地址   - 36字节 - C39X - 9.XX
#define ADDR_OF_POT_TABLE_08               (unsigned short)(BASE_POT_T+BASE_POT_T_OFFSET*7)      // 第8日时段表存储地址   - 36字节 - C33X - 90.XX
#define ADDR_OF_POT_TABLE_09               (unsigned short)(BASE_POT_T+BASE_POT_T_OFFSET*8)      // 第9日时段表存储地址   - 36字节 - C33X - 90.XX
#define ADDR_OF_POT_TABLE_10               (unsigned short)(BASE_POT_T+BASE_POT_T_OFFSET*9)      // 第10日时段表存储地址  - 36字节 - C33X - 90.XX
#define ADDR_OF_POT_TABLE_11               (unsigned short)(BASE_POT_T+BASE_POT_T_OFFSET*10)     // 第11日时段表存储地址  - 36字节 - C33X - 90.XX
#define ADDR_OF_POT_TABLE_12               (unsigned short)(BASE_POT_T+BASE_POT_T_OFFSET*11)     // 第12日时段表存储地址  - 36字节 - C33X - 90.XX

/* 时段定义(HHmmNN) */
#define BASE_POT                           0
#define BASE_POT_OFFSET                    3

#define ADDR_OF_POT_01                     (unsigned short)(BASE_POT+BASE_POT_OFFSET*0)          // 第1日时段起始时间及费率  - 3字节
#define ADDR_OF_POT_02                     (unsigned short)(BASE_POT+BASE_POT_OFFSET*1)          // 第2日时段起始时间及费率  - 3字节
#define ADDR_OF_POT_03                     (unsigned short)(BASE_POT+BASE_POT_OFFSET*2)          // 第3日时段起始时间及费率  - 3字节
#define ADDR_OF_POT_04                     (unsigned short)(BASE_POT+BASE_POT_OFFSET*3)          // 第4日时段起始时间及费率  - 3字节
#define ADDR_OF_POT_05                     (unsigned short)(BASE_POT+BASE_POT_OFFSET*4)          // 第5日时段起始时间及费率  - 3字节
#define ADDR_OF_POT_06                     (unsigned short)(BASE_POT+BASE_POT_OFFSET*5)          // 第6日时段起始时间及费率  - 3字节
#define ADDR_OF_POT_07                     (unsigned short)(BASE_POT+BASE_POT_OFFSET*6)          // 第7日时段起始时间及费率  - 3字节
#define ADDR_OF_POT_08                     (unsigned short)(BASE_POT+BASE_POT_OFFSET*7)          // 第8日时段起始时间及费率  - 3字节
#define ADDR_OF_POT_09                     (unsigned short)(BASE_POT+BASE_POT_OFFSET*8)          // 第9日时段起始时间及费率  - 3字节
#define ADDR_OF_POT_10                     (unsigned short)(BASE_POT+BASE_POT_OFFSET*9)          // 第10日时段起始时间及费率 - 3字节
#define ADDR_OF_POT_11                     (unsigned short)(BASE_POT+BASE_POT_OFFSET*10)         // 第11日时段起始时间及费率 - 3字节
#define ADDR_OF_POT_12                     (unsigned short)(BASE_POT+BASE_POT_OFFSET*11)         // 第12日时段起始时间及费率 - 3字节

#define ADDR_OF_SETTLEMENT_RECODE_MON (unsigned short)(BASE_POT+BASE_POT_OFFSET*12)         // 上次结算月信息 - 1字节


/*******************************************************************
* Variational Data address define
* description:store in data flash
*******************************************************************/
/* DB1: hostory power data */
#define DF_YEAR_STA 0  // start address of power data which stored after billing
#define OFFSET_MONTH (unsigned long)(500)
#define OFFSET_YEAR (unsigned long)(OFFSET_MONTH*12) // offset of power data / per year

#define DF_YEAR_01 (unsigned long)(DF_YEAR_STA+OFFSET_YEAR*0)  // history power data of last 1 year
#define DF_YEAR_02 (unsigned long)(DF_YEAR_STA+OFFSET_YEAR*1)  // history power data of last 2 year
#define DF_YEAR_03 (unsigned long)(DF_YEAR_STA+OFFSET_YEAR*2)  // history power data of last 3 year
#define DF_YEAR_04 (unsigned long)(DF_YEAR_STA+OFFSET_YEAR*3)  // history power data of last 4 year
#define DF_YEAR_05 (unsigned long)(DF_YEAR_STA+OFFSET_YEAR*4)  // history power data of last 5 year
#define DF_YEAR_06 (unsigned long)(DF_YEAR_STA+OFFSET_YEAR*5)  // history power data of last 6 year
#define DF_YEAR_07 (unsigned long)(DF_YEAR_STA+OFFSET_YEAR*6)  // history power data of last 7 year
#define DF_YEAR_08 (unsigned long)(DF_YEAR_STA+OFFSET_YEAR*7)  // history power data of last 8 year
#define DF_YEAR_09 (unsigned long)(DF_YEAR_STA+OFFSET_YEAR*8)  // history power data of last 9 year
#define DF_YEAR_10 (unsigned long)(DF_YEAR_STA+OFFSET_YEAR*9)  // history power data of last 10 year

/* DB2: freezing power data when pass time zone */
#define DF_YEAR_ZON_STA (unsigned long)(DF_YEAR_STA+OFFSET_YEAR*10)  
#define OFFSET_ZON (unsigned long)(20*4*12)

#define DF_YEAR_ZON_01 (unsigned long)(DF_YEAR_ZON_STA+OFFSET_ZON*0) 
#define DF_YEAR_ZON_02 (unsigned long)(DF_YEAR_ZON_STA+OFFSET_ZON*1) 
#define DF_YEAR_ZON_03 (unsigned long)(DF_YEAR_ZON_STA+OFFSET_ZON*2) 
#define DF_YEAR_ZON_04 (unsigned long)(DF_YEAR_ZON_STA+OFFSET_ZON*3) 
#define DF_YEAR_ZON_05 (unsigned long)(DF_YEAR_ZON_STA+OFFSET_ZON*4) 
#define DF_YEAR_ZON_06 (unsigned long)(DF_YEAR_ZON_STA+OFFSET_ZON*5) 
#define DF_YEAR_ZON_07 (unsigned long)(DF_YEAR_ZON_STA+OFFSET_ZON*6) 
#define DF_YEAR_ZON_08 (unsigned long)(DF_YEAR_ZON_STA+OFFSET_ZON*7) 
#define DF_YEAR_ZON_09 (unsigned long)(DF_YEAR_ZON_STA+OFFSET_ZON*8) 
#define DF_YEAR_ZON_10 (unsigned long)(DF_YEAR_ZON_STA+OFFSET_ZON*9) 

/* DB3: current and current-sum power data */
#define DF_CUR_PWR (unsigned long)(DF_YEAR_ZON_STA+OFFSET_ZON*10) 
#define DF_CURS_PWR (unsigned long)(DF_CUR_PWR+OFFSET_MONTH)

/* DB4: everyday's power data */
#define DF_DAY_STA (unsigned long)(DF_CURS_PWR+OFFSET_MONTH) 
#define OFFSET_DAY (unsigned long)(500)

#define DF_DAY_01 (unsigned long)(DF_DAY_STA+OFFSET_DAY*0)
#define DF_DAY_02 (unsigned long)(DF_DAY_STA+OFFSET_DAY*1)
#define DF_DAY_03 (unsigned long)(DF_DAY_STA+OFFSET_DAY*2)
#define DF_DAY_04 (unsigned long)(DF_DAY_STA+OFFSET_DAY*3)
#define DF_DAY_05 (unsigned long)(DF_DAY_STA+OFFSET_DAY*4)
#define DF_DAY_06 (unsigned long)(DF_DAY_STA+OFFSET_DAY*5)
#define DF_DAY_07 (unsigned long)(DF_DAY_STA+OFFSET_DAY*6)
#define DF_DAY_08 (unsigned long)(DF_DAY_STA+OFFSET_DAY*7)
#define DF_DAY_09 (unsigned long)(DF_DAY_STA+OFFSET_DAY*8)
#define DF_DAY_10 (unsigned long)(DF_DAY_STA+OFFSET_DAY*9)
#define DF_DAY_11 (unsigned long)(DF_DAY_STA+OFFSET_DAY*10)
#define DF_DAY_12 (unsigned long)(DF_DAY_STA+OFFSET_DAY*11)
#define DF_DAY_13 (unsigned long)(DF_DAY_STA+OFFSET_DAY*12)
#define DF_DAY_14 (unsigned long)(DF_DAY_STA+OFFSET_DAY*13)
#define DF_DAY_15 (unsigned long)(DF_DAY_STA+OFFSET_DAY*14)
#define DF_DAY_16 (unsigned long)(DF_DAY_STA+OFFSET_DAY*15)
#define DF_DAY_17 (unsigned long)(DF_DAY_STA+OFFSET_DAY*16)
#define DF_DAY_18 (unsigned long)(DF_DAY_STA+OFFSET_DAY*17)
#define DF_DAY_19 (unsigned long)(DF_DAY_STA+OFFSET_DAY*18)
#define DF_DAY_20 (unsigned long)(DF_DAY_STA+OFFSET_DAY*19)
#define DF_DAY_21 (unsigned long)(DF_DAY_STA+OFFSET_DAY*20)
#define DF_DAY_22 (unsigned long)(DF_DAY_STA+OFFSET_DAY*21)
#define DF_DAY_23 (unsigned long)(DF_DAY_STA+OFFSET_DAY*22)
#define DF_DAY_24 (unsigned long)(DF_DAY_STA+OFFSET_DAY*23)
#define DF_DAY_25 (unsigned long)(DF_DAY_STA+OFFSET_DAY*24)
#define DF_DAY_26 (unsigned long)(DF_DAY_STA+OFFSET_DAY*25)
#define DF_DAY_27 (unsigned long)(DF_DAY_STA+OFFSET_DAY*26)
#define DF_DAY_28 (unsigned long)(DF_DAY_STA+OFFSET_DAY*27)
#define DF_DAY_29 (unsigned long)(DF_DAY_STA+OFFSET_DAY*28)
#define DF_DAY_30 (unsigned long)(DF_DAY_STA+OFFSET_DAY*29)
#define DF_DAY_31 (unsigned long)(DF_DAY_STA+OFFSET_DAY*30)

/* DB5: load profile */
#define DF_LOAD_PROFILE_STA (unsigned long)(DF_DAY_STA+OFFSET_DAY*31)
#define OFFSET_LOAD_PROFILE (unsigned long)(80)
#define SIZE_LOAD_PROFILE (unsigned long)(OFFSET_LOAD_PROFILE*96*31)

/* DB6: lost voltage record */
#define CNT_LOST_VOLTAGE (unsigned long)(DF_LOAD_PROFILE_STA+SIZE_LOAD_PROFILE)
#define DF_LOST_VOLTAGE (unsigned long)(CNT_LOST_VOLTAGE+2)
#define OFFSET_LOST_VOLTAGE (unsigned long)(13)


#ifdef __cplusplus
}
#endif


#endif /* STORAGE_H */

⌨️ 快捷键说明

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