forked from SZV10X_Software/SZV103_FM33A0xxEV_SiZhu

jinlicong
2024-06-06 b39a40b0191e0a8b155db74e885ff66e17b91896
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
#ifndef _SIZHU_EVENT_RECORD_H
#define _SIZHU_EVENT_RECORD_H
 
#include "system_general_para.h"
#include "system_mem_para.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
{
    u16 serial_number;
    
    sClockBCD         record_time_BCD;
    
    uint8_t            valve_action_source;
    uint8_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
{
    u16 serial_number;
    
    sClockBCD         record_time_BCD;
    
    uint8_t            modify_source;
    u16           factory_id;
    
}LOG_SIZHU_FACTORY_RESET_RECORD_SAVE_T;
 
//Уʱ¼Ç¼
typedef struct
{
    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_valve_action_log_data_handle(uint8_t valve_action_source, uint16_t valve_action_type,uint16_t valve_action_ID);
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);
 
#endif