forked from SZV10X_Software/SZV103_FM33A0xxEV_SiZhu

jinlicong
2024-05-14 ec1ec68ba7d175f39f5d4e066663cf29fa7c262a
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
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
#ifndef __SIZHU_ALARM_RECORD_H
#define __SIZHU_ALARM_RECORD_H
 
#include "define_all.h"
#include "system_eep_mem_manage.h"
#include "sizhu_ctrl_word.h"
#include "system_general_para.h"
 
#define   SYSTEM_ALARM_LOG_FIRST_INIT_ADDR                        SYSTEM_ALARM_LOG_ADDR
/****************************************************ϵͳ±¨¾¯************************************************************************/
#define   SYSTEM_ALARM_LOG_STORAGE_LENGTH                    sizeof(LOG_SIZHU_SYS_ALARM_SAVE_T)   
 
#define   SYSTEM_ALARM_LOG_NUM                       400
 
#define   SYSTEM_ALARM_LOG_START_ADDR                        SYSTEM_ALARM_LOG_ADDR + 10//DEL
 
 
#define   SYSTEM_ALARM_LOG_COUNT_ADDR                        SYSTEM_ALARM_LOG_START_ADDR
#define   SYSTEM_ALARM_LOG_SAVE_ADDR                         SYSTEM_ALARM_LOG_COUNT_ADDR + 2
#define   SYSTEM_ALARM_LOG_STORAGE_START_ADDR                SYSTEM_ALARM_LOG_START_ADDR + 100
#define     SYSTEM_ALARM_LOG_STORAGE_END_ADDR                  SYSTEM_ALARM_LOG_STORAGE_START_ADDR + (SYSTEM_ALARM_LOG_NUM -1) * SYSTEM_ALARM_LOG_STORAGE_LENGTH
 
#pragma pack(1)
 
#define        ALARM_HAPPEN                                            0x0000
#define        ALARM_END                                                0x1000
 
 
//#define        WARNING_ID1                                            1
//#define        WARNING_ID2                                            2
 
///*ÈÕÖ¾¶¨ÒåÀàÐÍ*/
//#define     WARNING_SOUND_DEVIATION_TYPE                        1
//#define     WARNING_VELOCITY_TRANSFINITE_TYPE                    2
//#define     WARNING_GAIN_DEVIATION_TYPE                             3
//#define        WARNING_LOW_POWER_TYPE                                4
//#define        WARNING_NO_WORK_TYPE                                5
//#define        WARNING_OUTPOWER_LOSE_TYPE                            6
//#define        WARNING_UPPROBE_LOSE_TYPE                            7
//#define        WARNING_MIDPROBE_LOSE_TYPE                            8
//#define        WARNING_DOWNPROBE_LOSE_TYPE                            9
//#define        WARNING_FLOWUP_LIMIT_TYPE                            10
//#define        WARNING_MEASURING_ABNORMAL_TYPE                        11
///*ÎÈѹ±¨¾¯*/
//#define     WARNING_TEMPERATURE_SENSING_ERROR_TYPE                101
//#define     WARNING_PRESSURE_SENSING_ERROR_TYPE                    102
//#define     WARNING_UP_TEMPERATURE_TYPE                             103
//#define        WARNING_DOWN_TEMPERATURE_TYPE                        104
//#define        WARNING_UP_PRESSURE_TYPE                            105
 
/*±¨¾¯ID---ÐÂϵͳ*********************************************************************************************/
//Àà±ð±êʶ                                      
//#define     ALARM_CLASS_SYSTEM_START        0x01
//#define     ALARM_CLASS_BAT_POWER           0x02
//#define     ALARM_CLASS_PRE                 0x03
//#define     ALARM_CLASS_TEM                 0x04
//#define     ALARM_CLASS_FLOW                0x05
//#define     ALARM_CLASS_EX_POWER            0x06
//#define     ALARM_CLASS_COVER_OPEN          0x07
//#define     ALARM_CLASS_FLOW_START_STOP     0x08
//#define     ALARM_CLASS_AMBIENT_TEM         0x09
//#define     ALARM_CLASS_LCD                 0x0A
 
//Àà±ð¾ßÌåϸ·Ö
//Àà±ð¾ßÌåϸ·Ö
 
 
 
typedef struct log_sizhu_sys_alarm_save_t  //ϵͳ±¨¾¯
{
    u16                   serial_number;
    
    sClockBCD         record_time_BCD;
 
    uint16_t            alarm_id;
    
    double forward_cumulate_sc; // ÕýÏò±ê¿öÀÛ»ýÁ¿
    double forward_cumulate_wc;
 
    float instant_sc;
    float instant_wc;   
    float temperature;    
    float pressure;
    float         ambient_tem;  //»·¾³Î¶È
    uint8_t          lith_bat_v;
    uint8_t          alka_bat_v;
    
    SYSTEM_STATUS_WORD_T  status_word;      
 
    u32    current_price;
    double    residual_amount;
    
}LOG_SIZHU_SYS_ALARM_SAVE_T;
 
typedef struct
{
    LOG_SIZHU_RUN_T system_alarm_log;
    
}LOG_ALARM_PARA_T;
 
#pragma pack()
 
 
extern LOG_ALARM_PARA_T log_alarm_para_g;
 
 
uint8_t system_alarm_log_eeprom_default_init(void);
uint8_t system_alarm_log_record_only_read_init(void);
uint8_t system_alarm_log_record_save(uint8_t alarm_type, uint8_t * para_alarm_ptr);
void system_alarm_log_data_handle(uint8_t alarm_type, uint16_t alarm_ID);
#endif