forked from SZV10X_Software/SZV103_FM33A0xxEV_SiZhu

jinlicong
2024-04-30 ee3c90168f81ce19529904d80f9c9de4fed23bb8
Soft/system_general_para.h
@@ -1,6 +1,7 @@
#ifndef _SYSTEM_GENERAL_PARA_H
#define _SYSTEM_GENERAL_PARA_H
#include "define_all.h"
#include "extern_rtc.h"
/**************************************************
*Ö÷Òª¶¨ÒåһЩͨÓõĺ¯Êý¡¢±äÁ¿
@@ -23,7 +24,7 @@
   DM_HCM_UFG220 = 0x10U,   //È¼Æø±í
   DM_HCM_UFG620,
   DM_HCM_UFG630,
} DEVICE_MODEL; // É豸ÐͺÅ
} DEVICE_TYPE; // É豸ÐͺÅ
typedef enum
{
@@ -36,15 +37,7 @@
   DN25_TYPE,
   DN32_TYPE,
   DN40_TYPE,
} CALIBER_MODEL; // ¿Ú¾¶
typedef enum
{
   VM_NONE   = 0U,
   VM_PENGSHENG,  //ÅôÊ¢·§Ìå
   VM_HADE,          //¹þµÂ·§Ìå
} VALVE_MODEL; // ·§ÃÅÐͺÅ
} CALIBER_TYPE; // ¿Ú¾¶
typedef enum
{
@@ -53,32 +46,52 @@
   EM_IFRCT,   //Ò»ÌåÁ÷Á¿Ô¶´«¿ØÖÆÖÕ¶Ë
   EM_SIFRTT,  //·ÖÌåʽÁ÷Á¿Ô¶´«ÖÕ¶Ë
   EM_SIFRCT,   //·ÖÌåÁ÷Á¿Ô¶´«¿ØÖÆÖÕ¶Ë
} EQUIPMENT_MODEL; // ·§ÃÅÐͺÅ
} EQUIPMENT_TYPE; // ·§ÃÅÐͺÅ
typedef enum
{
  VALVE_NONE = 0U,
  VALVE_OP,
  VALVE_CL,
  VALVE_OPENING,
  VALVE_CLOSING,
  VALVE_ERROR,
   VALVE_MISSING = 99U
} VALVE_STATE_T; // ·§ÃÅ״̬ÀàÐÍ
typedef enum
{
  VL_UNLOCK = 0U,
   VL_LOCK
} VALVE_LOCK_STATE_T; // ·§ÃÅ״̬ÀàÐÍ
//Êý¾ÝÀàÐÍ´óС¶Ë
typedef enum
{
  LITTLE_ENDIAN = 0U,
   BIG_ENDIAN
} BIG_OR_LITTLE_ENDIAN; // ·§ÃÅ״̬ÀàÐÍ
} BIG_OR_LITTLE_ENDIAN; //Êý¾ÝÀàÐÍ´óС¶Ë
typedef enum
{
  FLOW_METER_CONN_NONE = 0U,
   FLOW_METER_CONN_PULSE,
   FLOW_METER_CONN_RS485,
   FLOW_METER_CONN_RS485_AND_PULSE
} FLOW_METER_CONN_TYPE; //Á÷Á¿¼ÆÁ¬½Ó·½Ê½
typedef enum
{
  BAUDRATE_1200 = 0U,
   BAUDRATE_2400 ,
   BAUDRATE_4800 ,
   BAUDRATE_9600 ,
   BAUDRATE_19200 ,
   BAUDRATE_38400 ,
   BAUDRATE_56000 ,
   BAUDRATE_57600 ,
   BAUDRATE_115200
} BAUDRATE_CODE; //²¨ÌØÂÊ
typedef enum
{
  PARITY_NONE = 0U,
   PARITY_ODD ,
   PARITY_EVEN ,
} PARITY_BIT; //²¨ÌØÂÊ
typedef enum
{
   RS485_START_REASON_NONE = 0U,  //ÎÞ´¥·¢£¬²»ÐèÒªÖ´ÐÐ
  RS485_START_REASON_KEY ,  //°´¼ü
   RS485_START_REASON_TIMING,    //¶¨Ê±
   RS485_START_REASON_REPORT,    //ʵʱÉϱ¨ÐèÒª
   RS485_START_REASON_RECORD,    //±£´æ¼Ç¼ÐèÒª£¬¿ÉÓÃÓÚÉϱ¨¶³½áµÈÇé¿ö
} RS485_START_REASON; //485Æô¶¯Ô­Òò
/*****************ͨÓýṹÌå²ÎÊý******************************/
@@ -99,8 +112,20 @@
typedef struct
{
  __IO FlagStatus start_flag;  // ¹¦ÄÜÆô¶¯±êÖ¾
  __IO FlagStatus running_flag; // ¹¦ÄÜÔËÐÐÖбêÖ¾
} FUN_START_CTRL_T;         // ÑÓʱʱ¼äÀàÐͽṹÌå
typedef struct
{
  FUN_START_CTRL_T rs485_ctrl_flag;
  FUN_START_CTRL_T wrc_ctrl_flag;
   FUN_START_CTRL_T valve_ctrl_flag;
} FUN_START_CTRL_PARA_T;         // ÑÓʱʱ¼äÀàÐͽṹÌå
/*****************ͨÓúê******************************/
@@ -127,6 +152,10 @@
                        ((x & 0x0000000000ff0000) << 24) | \
                        ((x & 0x000000000000ff00) << 40) | \
                        ((x & 0x00000000000000ff) << 56)
/*µÃ³ö½á¹¹Ìå³ÉÔ±Æ«ÒÆÁ¿ºÍ´óС*/
#define OFFSET_OF(type, member) ((size_t) & (((type *)0))->member)
#define SIZEOF_OF(type, member) (sizeof(((type *)0))->member)
// ÏµÍ³Í¨ÓÃÑÓ³Ùʱ¼äÉèÖÃ
@@ -182,8 +211,8 @@
//extern uint8_t read_data_buf_C_l[200];
extern __IO FlagStatus sys_run_period; // ÏµÍ³¼¤»îÖÜÆÚ
extern SYS_DELAY_SEC_PARA_T sys_delay_sec_para_g;
extern SYS_DELAY_SEC_PARA_T sys_delay_sec_para_g;  //ϵͳÑÓʱ¿ØÖÆ
extern FUN_START_CTRL_PARA_T sys_fun_run_ctrl_g;  //ϵͳ¹¦ÄÜÔËÐпØÖÆ
@@ -201,5 +230,7 @@
//unsigned char HEX2BCD(unsigned char hex_data)  ; //HEX??BCD???     
void   dou26Byte( double data, unsigned char *array );
FlagStatus IntervalTriggerHandle(sClockBCD sys_clockBCD_in,uint16_t IntervalTime,uint8_t IntervalFirstTimeBCD[2]);
#endif