#ifndef _SIZHU_EVENT_RECORD_H
|
#define _SIZHU_EVENT_RECORD_H
|
|
#include "system_general_para.h"
|
#include "system_mem_para.h"
|
#include "valve_control.h"
|
|
/************************´æ´¢¿Õ¼ä¹æ»®**************************/
|
/*ʼþ¼Ç¼´æ´¢¿ØÖÆ*/
|
//·§ÃŲÙ×÷¼Ç¼
|
#define VALVE_OPERATION_EVENT_LOG_START_ADDR VALVE_OPERATION_EVENT_STORAGE_START_ADDR
|
#define VALVE_OPERATION_EVENT_LOG_LENGTH sizeof(LOG_SIZHU_VALVE_ACTION_RECORD_SAVE_T)
|
#define VALVE_OPERATION_EVENT_LOG_MAX_NUM 200U
|
#define VALVE_OPERATION_EVENT_LOG_END_ADDR VALVE_OPERATION_EVENT_LOG_START_ADDR + VALVE_OPERATION_EVENT_LOG_LENGTH * (VALVE_OPERATION_EVENT_LOG_MAX_NUM -1)
|
//»Ö¸´³ö³§ÉèÖüǼ
|
#define FACTORY_RESET_EVENT_LOG_START_ADDR FACTORY_RESET_EVENT_STORAGE_START_ADDR
|
#define FACTORY_RESET_EVENT_LOG_LENGTH sizeof(LOG_SIZHU_FACTORY_RESET_RECORD_SAVE_T)
|
#define FACTORY_RESET_EVENT_LOG_MAX_NUM 20U
|
#define FACTORY_RESET_EVENT_LOG_END_ADDR FACTORY_RESET_EVENT_LOG_START_ADDR + FACTORY_RESET_EVENT_LOG_LENGTH * (FACTORY_RESET_EVENT_LOG_MAX_NUM -1)
|
//Уʱ¼Ç¼
|
#define SET_TIME_EVENT_LOG_START_ADDR SET_TIME_EVENT_STORAGE_START_ADDR
|
#define SET_TIME_EVENT_LOG_LENGTH sizeof(LOG_SIZHU_CALIBRATION_TIME_RECORD_SAVE_T)
|
#define SET_TIME_EVENT_LOG_MAX_NUM 50U
|
#define SET_TIME_EVENT_LOG_END_ADDR SET_TIME_EVENT_LOG_START_ADDR + SET_TIME_EVENT_LOG_LENGTH * (SET_TIME_EVENT_LOG_MAX_NUM -1)
|
/************************´æ´¢¿Õ¼ä¹æ»®**************************/
|
|
#pragma pack(1)
|
//·§ÃŲÙ×÷¼Ç¼
|
typedef struct
|
{
|
uint16_t CRC16_MODBUS;
|
u16 serial_number;
|
|
sClockBCD record_time_BCD;
|
|
VALVE_CTRL_SOURCE_T valve_action_source;
|
VALVE_CTRL_TYPE_T valve_action_type;
|
u16 valve_action_id;
|
|
u16 open_valve_times;
|
u16 close_valve_times;
|
}LOG_SIZHU_VALVE_ACTION_RECORD_SAVE_T;
|
|
//»Ö¸´³ö³§ÉèÖüǼ
|
typedef struct
|
{
|
uint16_t CRC16_MODBUS;
|
u16 serial_number;
|
|
sClockBCD record_time_BCD;
|
|
uint8_t modify_source;
|
u16 factory_id;
|
|
}LOG_SIZHU_FACTORY_RESET_RECORD_SAVE_T;
|
|
//Уʱ¼Ç¼
|
typedef struct
|
{
|
uint16_t CRC16_MODBUS;
|
u16 serial_number;
|
|
sClockBCD record_time_BCD; //¼Ç¼ʱ¼ä£¬¿ÉÒÔµ±×öУ׼ǰʱ¼ä
|
|
uint8_t modify_source;
|
u16 factory_id;
|
|
sClockBCD set_time_BCD; //ÉèÖõÄʱ¼ä£¬Ò²¾ÍÊÇУ׼ºóµÄʱ¼ä
|
|
}LOG_SIZHU_CALIBRATION_TIME_RECORD_SAVE_T;
|
|
|
#pragma pack()
|
|
|
|
void sizhu_event_log_eeprom_default_init(void);
|
uint8_t sizhu_valve_action_log_eeprom_default_init(void);
|
uint8_t sizhu_factory_reset_log_eeprom_default_init(void);
|
uint8_t sizhu_calibration_time_log_eeprom_default_init(void);
|
|
void sizhu_event_log_eeprom_only_read_init(void);
|
uint8_t sizhu_valve_action_log_only_read_init(void);
|
uint8_t sizhu_factory_reset_log_only_read_init(void);
|
uint8_t sizhu_calibration_time_log_only_read_init(void);
|
|
uint8_t sizhu_valve_action_log_save(uint8_t valve_action_source, uint16_t valve_action_type,uint16_t valve_action_ID,uint8_t * para_alarm_ptr);
|
uint8_t sizhu_factory_reset_log_save(uint8_t reset_source, uint16_t factory_id,uint8_t * para_alarm_ptr);
|
uint8_t sizhu_calibration_time_log_save(uint8_t calibration_source,uint16_t factory_id, uint8_t * para_alarm_ptr);
|
|
|
void sizhu_factory_reset_log_data_handle(uint8_t reset_source, uint16_t factory_id);
|
void sizhu_calibration_time_log_data_handle(uint8_t calibration_source,uint16_t factory_id);
|
|
|
void sizhuValveActionLogHandle(VALVE_CTRL_SOURCE_T valve_ctrl_source, VALVE_CTRL_TYPE_T valve_action_type,uint16_t valve_action_ID);
|
|
|
#endif
|