forked from SZV10X_Software/SZV103_FM33A0xxEV_SiZhu

jinlicong
2024-05-24 1360095f8d64cf607d333d2fc7fd1dcd81d1bd7b
Function/STORAGE/system_mem_para.h
@@ -4,6 +4,9 @@
#include "system_general_para.h"
#include "extern_rtc.h"
#include "valve_control.h"
#include "wireless_remote_comm.h"
#include "sizhu_ctrl_word.h"
#include "rs485_read_data.h"
#define SOFT_SERIAL_NUMBER1   0x05
#define SOFT_SERIAL_NUMBER2   0x00
@@ -23,7 +26,7 @@
#define   CRC16_MODBUS_OFFSET  sizeof(uint16_t)
//ϵͳ²¹¶¡±êʶ
//ϵͳÅäÖòÎÊý±êʶ
typedef struct 
{
   uint16_t   CRC16_MODBUS;
@@ -36,21 +39,22 @@
}SYSTEM_EEP_IDENTIFICATION_T;
#define   SYSTEM_EEP_IDENTIFICATION_LENGTH        sizeof(SYSTEM_EEP_IDENTIFICATION_T)
//É豸»ù´¡ÐÅÏ¢
typedef struct equipment_basic_inf
{
   uint16_t   CRC16_MODBUS;
   char  specification_model[20];//¹æ¸ñÐͺÅ
   DEVICE_TYPE      product_type; //²úÆ·ÀàÐÍ
   CALIBER_TYPE      CALIBER_TYPE;//¿Ú¾¶ 1/2/3/4/5/6/7/8´ú±í050/080/100/150/200/025/032/040
   CALIBER_TYPE      caliber_type;//¿Ú¾¶ 1/2/3/4/5/6/7/8´ú±í050/080/100/150/200/025/032/040
   uint8_t       serial_number[10];//³ö³§±àºÅ£¬BCDĿǰֻÓÃǰ8×Ö½Ú£¬16룬ºó2×Ö½Ú²¹FFH¡£
   uint8_t      manufactuer_code[2];//³§¼Ò´úÂë,×ÔÓã¬ÓÃÓÚʶ±ðÉ豸ÓÃ;£¬±ÈÈçÊÇаÂÌùÅÆ£¬Ôò³§¼Ò´úÂë±íʾΪа£¬¸Ä´úÂë¿ÉÓÃÓÚÉÏλ»úʶ±ð£¬ÉÏλ»úʹÓÃÕßҲΪа£¬Ôò¿É½øÐвÙ×÷¡£
   VALVE_TYPE    valve_type;//·§ÃÅÐͺÅ0:ÎÞ·§ÃÅ£»1£ºÅôÊ¢·§Ì壻2:¹þµÂ·§Ì壻ÆäËû£¬Ä¬ÈϹþµÂ·§Ìå
   EQUIPMENT_TYPE      equipment_type;//É豸ÀàÐÍ,10H±íʾ¡°Ò»ÌåʽÁ÷Á¿Ô¶´«ÖÕ¶Ë
   EQUIPMENT_TYPE      equipment_type;//É豸ÀàÐÍ
   uint8_t   reserve[32];
}EQUIPMENT_BASIC_INF_T;
#define   EQUIPMENT_BASIC_INF_LENGTH        sizeof(EQUIPMENT_BASIC_INF_T)
//É豸ÈíÓ²¼þÐÅÏ¢
typedef struct main_equipment_hardware_software_inf
{
   uint16_t   CRC16_MODBUS;
@@ -64,6 +68,7 @@
}MAIN_EQUIPM_HARDWARE_SOFTWARE_INF_T;
#define   MAIN_EQUIPM_HARDWARE_SOFTWARE_INF_LENGTH        sizeof(MAIN_EQUIPM_HARDWARE_SOFTWARE_INF_T)
//LCD°åÈíÓ²¼þÐÅÏ¢
typedef struct lcd_equipment_hardware_software_inf
{
   uint16_t   CRC16_MODBUS;
@@ -77,6 +82,7 @@
}LCD_EQUIPM_HARDWARE_SOFTWARE_INF_T;
#define   LCD_EQUIPM_HARDWARE_SOFTWARE_INF_LENGTH        sizeof(LCD_EQUIPM_HARDWARE_SOFTWARE_INF_T)
//ÎÞÏßͨѶ°åÈíÓ²¼þÐÅÏ¢
typedef struct wireless_equipment_hardware_software_inf
{
   uint16_t   CRC16_MODBUS;
@@ -91,7 +97,7 @@
#define   WIRELESS_EQUIPM_HARDWARE_SOFTWARE_INF_LENGTH        sizeof(WIRELESS_EQUIPM_HARDWARE_SOFTWARE_INF_T)
//ʵʱ²ÎÊý
typedef struct{
   uint16_t   CRC16_MODBUS;
   sClockBCD record_time_BCD;
@@ -132,6 +138,7 @@
//ͳ¼Æ²ÎÊý£¬ÔÝʱ²»×ö
//·§ÃÅÏà¹Ø²ÎÊý
typedef struct 
{
   VALVE_STATUS      valve_status ;
@@ -143,8 +150,145 @@
   
}SAVE_VALVE_PARA_T;
//Á÷Á¿¼Æ²ÎÊý
typedef struct
{
   FLOW_METER_CONN_TYPE   flow_meter_conn_type;
   uint16_t flow_meter_code;
   float   pulse_coe;
   uint16_t   pulse_width;
   BAUDRATE_CODE   baudrate_code;
   PARITY_BIT   parity_bit;
   RS485_PWR_OUTPUT_SELECT output_voltage_code;
   uint8_t   slave_address;
   uint8_t   broken_line_multiplex; //¶ÏÏ߸´ÓÃ
   uint8_t sub_machine_num;
   char flow_meter_serial_number;
}FLOW_METER_PARA_T;
//?δÍê³É.....
//ÎÂѹÅäÖòÎÊý
typedef struct
{
   int16_t tem_up_limit;
   int16_t tem_up_up_limit;
   int16_t tem_low_limit;
   int16_t tem_low_low_limit;
   int16_t   ambient_tem_up_limit;
   int16_t   ambient_tem_low_limit;
   float  pre_up_limit;
   float  pre_up_up_limit;
   float  pre_low_limit;
   float  pre_low_low_limit;
}TEM_PRE_PARA_T;
//¼ÆÁ¿¶³½á²ÎÊý
typedef struct
{
   uint16_t freeze_interval;
   uint8_t daily_freeze_time_BCD[2];
}MEASURE_FREEZE_PARA_T;
//µç³Ø²ÎÊý
typedef struct
{
   uint8_t lith_bat_low_v;
   uint8_t lith_bat_under_v;
   uint8_t alka_bat_low_v;
   uint8_t alka_bat_under_v;
   uint32_t lith_bat_max_hour;
   uint32_t lith_bat_used_hour;
   uint32_t lith_bat_used_sec;
   uint8_t  reserve[32];
}BAT_PARA_T;
//ÉÏλ»ú\APPµÇÈëÃÜÂë
typedef struct
{
   uint8_t            PC_general_user_password[2];
   uint8_t            PC_advanced_user_password[2];
   uint8_t            PC_manage_user_password[2];
//   uint8_t            APP_general_user_password[2];
//   uint8_t            APP_advanced_user_password[2];
//   uint8_t            APP_manage_user_password[2];
}LOGIN_PASSWORD_T;
//ÉÏλ»ú´®¿ÚÅäÖÃÐÅÏ¢
typedef struct
{
   uint8_t   slave_address;
   BAUDRATE_CODE   baudrate_code;
   PARITY_BIT   parity_bit;
}UP_COMM_PARA_T;
//ÎÞÏßÔ¶³ÌͨѶÅäÖòÎÊý
typedef struct
{
   uint8_t          ip1[4];
   uint16_t           ip_port1;
   LINK_TYPE     ip1_connect_type; //IPÁ¬½Óģʽ 0£ºTCPÖ±Á¬  1£ºÁ¬½ÓµçÐÅÆ½Ì¨  2£ºÁ¬½ÓÒÆ¶¯onenetƽ̨
   uint8_t          ip2[4];
   uint16_t         ip_port2;
   LINK_TYPE     ip2_connect_type; //IPÁ¬½Óģʽ 0£ºTCPÖ±Á¬  1£ºÁ¬½ÓµçÐÅÆ½Ì¨  2£ºÁ¬½ÓÒÆ¶¯onenetƽ̨
   uint16_t         bat_power_data_interval; //µç³Ø¹©µçÊý¾Ý¼ä¸ô
   uint16_t         ext_power_data_interval; // Í⹩µçÊý¾Ý¼ä¸ô
   WRC_TIME_START_TYPE         time_start_type;  //ʱ¼ä·¢ËÍģʽ,0£ºÎÞ·¨ËÍ  1£º¼ä¸ô  :2£º¶¨Ê±  3£º¼ä¸ô+¶¨Ê±.  ÔÝʱֻ֧³Ö1»òÕß2
   uint16_t       bat_power_send_interval;
   uint16_t       ext_power_send_interval;
   uint8_t         send_first_time_BCD[2];  //Ê״η¢ËÍʱ¼ä£¬¿ÉÓÃÓÚ´í·å·¢ËÍ£¬±ÈÈçÊ״η¢ËÍʱ¼äÉèÖÃΪ0µã15·Ö£¬24·¢ËÍ·¢ËÍÒ»´Î¡£ ÄǾÍÊÇÿÌì0µã15·ÖͨѶһ´Î
   uint8_t         timing_send_num;  //¶¨Ê±Éϱ¨´ÎÊý1-12
   uint8_t         timing_send_time_BCD[12][2]; //¶¨Ê±·¢ËÍʱ¼äµã1-12
   uint16_t     retransmission_interval;   // ÖØ·¢¼ä¸ô
   uint8_t          retransmission_num;     //ÖØ·¢´ÎÊý
   uint16_t     comm_timeout_time;         //³¬Ê±Ê±¼ä£¬Ãë
   uint8_t          KVer_AES_128[9][16];
}WRC_PARA_SIZHU_T;
typedef struct
{
   uint16_t   report_data_save_num;
   uint16_t   report_data_left_num;
}WRC_DATA_NUM_CTRL_PARA_SIZHU_T;  //´Ë²ÎÊý±ä»¯»á±È½ÏƵ·±£¬ÐèÒª¿¼ÂÇ´æ´¢´ÎÊýµÄÎÊÌ⣡£¡£¡
//¼Û¸ñ·½°¸ÅäÖòÎÊý
//³äÖµÅäÖòÎÊý
//Óà¶î/Ìõ¼þ¹Ø·§ÅäÖòÎÊý
typedef struct
{
   VALVE_BILLING_CHANGE_1_T balance_valve_ctrl_byte;
   VALVE_BILLING_CHANGE_2_T conditional_valve_ctrl_byte;
  int32_t balance_small_value[5];
  uint32_t cumulate_flow_threshold;
  uint8_t no_wrc_days;
  uint8_t no_use_gas_days;
  uint8_t reserve[5];
} BILLING_VALVE_CTRL_PATA_T; // ¼Æ·Ñ±¨¾¯\ÓÐÌõ¼þ¹Ø·§¿ØÖƲÎÊý
/*****************ÒÔϼ¸¸ö¿ØÖÆ×ÖÔÚsizhu_ctrl_word.hÖÐ******************************/
//¹¦ÄÜ¿ØÖÆ×Ö
//ϵͳ±¨¾¯¿ØÖÆ×Ö/ϵͳ±¨¾¯Éϱ¨¿ØÖÆ×Ö
//¹Ø·§¿ØÖÆ×Ö
/***********************************************/
#pragma pack()
@@ -154,10 +298,16 @@
extern MAIN_EQUIPM_HARDWARE_SOFTWARE_INF_T        main_equipment_hardware_software_inf_g;
extern LCD_EQUIPM_HARDWARE_SOFTWARE_INF_T         lcd_equipment_hardware_software_inf_g;
extern WIRELESS_EQUIPM_HARDWARE_SOFTWARE_INF_T    wireless_equipment_hardware_software_inf_g;
extern SAVE_REALTIME_DATA_T               save_realtime_data_g;
extern SAVE_VALVE_PARA_T                     save_valve_para_g;
extern __IO SAVE_REALTIME_DATA_T               save_realtime_data_g;
extern __IO SAVE_VALVE_PARA_T                     save_valve_para_g;
extern FLOW_METER_PARA_T   flow_meter_para_g;
extern MEASURE_FREEZE_PARA_T measure_freeze_para_g;
extern BAT_PARA_T bat_para_g;
extern LOGIN_PASSWORD_T login_passeord_g;
extern UP_COMM_PARA_T   up_comm_para_g;
extern WRC_PARA_SIZHU_T wrc_para_sizhu_g;
extern WRC_DATA_NUM_CTRL_PARA_SIZHU_T   wrc_data_num_ctrl_para_sizhu_g;
extern BILLING_VALVE_CTRL_PATA_T billing_valve_ctrl_para_g;
void allParaDefaultInit(void);