#ifndef _SIZHU_HISTORY_RECORD_H #define _SIZHU_HISTORY_RECORD_H #include "sizhu_ctrl_word.h" #include "system_general_para.h" /*ÈÕÖ¾¶¨ÒåÀàÐÍ*/ #define LOG_SIZHU_HOUR_TYPE 1 #define LOG_SIZHU_DAY_TYPE 2 #define LOG_SIZHU_MONTH_TYPE 3 #define LOG_SIZHU_PERIOD_TYPE 4 #pragma pack(1) //¼ä¸ô¶³½áÈÕÖ¾ÄÚÈÝ typedef struct log_sizhu_log_save_period_t { uint8_t sample_year; uint8_t sample_month; uint8_t sample_day; uint8_t sample_hour; uint8_t sample_min; uint8_t sample_sec; double standardgasusagetotal; double workinggasusagetotal; float standardvec; float workingvec; float temperature; float pressure; u32 current_price; double residual_amount; double cumulative_gas_usage; double cumulative_fee_usage; uint8_t lith_bat_v; uint8_t lith_bat_per; uint8_t alka_bat_v; uint8_t alka_bat_per; SYSTEM_STATUS_WORD_T status_word; }LOG_SIZHU_LOG_SAVE_PERIOD_T; //Ô¡¢ÈÕ¡¢Ê±ÈÕÖ¾ÄÚÈÝ typedef struct log_sizhu_log_save_t { uint8_t sample_year; uint8_t sample_month; uint8_t sample_day; uint8_t sample_hour; uint8_t sample_min; uint8_t sample_sec; double standardgasusagetotal; double workinggasusagetotal; float standardvec; float workingvec; float temperature; float pressure; u32 unitprice; double residualamount; uint8_t reverse[2]; }LOG_SIZHU_LOG_SAVE_T; typedef struct { LOG_SIZHU_RUN_T per_period_log; LOG_SIZHU_RUN_T per_hour_log; LOG_SIZHU_RUN_T per_day_log; LOG_SIZHU_RUN_T per_month_log; }LOG_SIZHU_HISTORY_RUN_T; #pragma pack() extern LOG_SIZHU_HISTORY_RUN_T log_sizhu_history_run_g; uint8_t sizhu_historical_eeprom_default_init(void); uint8_t sizhu_historical_record_only_read_init(void); uint8_t sizhu_historical_record_clean(uint32_t epprom_begin_addr, LOG_SIZHU_RUN_T * log_run_ptr); uint8_t sizhu_historical_record_save(uint8_t logtype, LOG_SIZHU_LOG_SAVE_T * log_run_ptr); uint8_t sizhu_period_historical_record_save(uint8_t logtype, LOG_SIZHU_LOG_SAVE_PERIOD_T * log_run_ptr); uint8_t sizhu_historical_test(void); // uint16_t sizhu_historical_period_log(void); uint16_t sizhu_historical_hour_log(void); uint16_t sizhu_historical_day_log(void); uint16_t sizhu_historical_month_log(void); uint32_t sizhu_historical_record_read(uint8_t logtype, uint32_t addr, LOG_SIZHU_LOG_SAVE_T * log_run_ptr); uint8_t sizhu_historical_read_init(u32 * read_addr, u16 * save_count, uint8_t logtype); #endif