X2UWaterWmbusEEI/app/UWater_gp22_app.h

1771 lines
88 KiB
C
Raw Normal View History

2024-06-03 15:49:39 +08:00
/*
* File: __GP30W_GP30_APP_H
* Author:
*
* Created on<EFBFBD><EFBFBD>2015-5-18
*/
#ifndef __UWater_GP22_APP_H
#define __UWater_GP22_APP_H
#include "type.h"
#include "UWater_gp22_driver.h"
#include "UWater_TemperatureCalculate_app.h"
#include <string.h>
/*--------------------------------- Variable Define ------------------------------------*/
/*************************<2A><EFBFBD><EAB6A8>****************************/
#define REAL_XTAL_CLOCK 4000000 //<2F><><EFBFBD>ڼ<EFBFBD><DABC>㾫ȷ1US<55><53>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>Ƶ<EFBFBD><C6B5>
#define TEST_ALARMA_RTCC_US (FACTOR_1*1000000) //<2F><><EFBFBD><EFBFBD>״̬<D7B4><CCAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define CALCULATED_COEFFICIENT (STM32_SYSCLK/REAL_XTAL_CLOCK)
#define ALARMA_STOP_CHECK_TICKS ((TEST_ALARMA_RTCC_US + 100000)*CALCULATED_COEFFICIENT) //<2F><><EFBFBD><EFBFBD><EFBFBD>ľ<EFBFBD>ȷʱ<C8B7><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/*************************<2A><><EFBFBD><EFBFBD>RAM<41><4D><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EAB6A8>****************************/
#define GP30_COPY_RESET_TEST_FLAG 0x5A6B7C8D //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λǰ<CEBB>ı<EFBFBD><C4B1>ƴ<EFBFBD><C6B4>ڼ춨״̬
#define GP30_COPY_RESET_NORMAL_FLAG 0x8D7C6B5A //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λǰ<CEBB>ı<EFBFBD><C4B1>ƴ<EFBFBD><C6B4>ڷǼ춨״̬
#define MCU_RESET_JUDGE_FLAG 0x3A4B5C6D //<2F>Ƿ<EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD>ı<EFBFBD>־
/*************************ʱ<><CAB1><EFBFBD><EFBFBD>0<EFBFBD><30><EFBFBD><EFBFBD>У׼<D0A3><D7BC>־<EFBFBD><EFBFBD><EAB6A8>****************************/
#define DIFTOF_CALIBRATION_FLAG 0xA1B2C3D4E5F6A7B8 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У׼<D0A3><D7BC>־<EFBFBD><D6BE>
//#define DIFTOF_HIGH_TEMP_CALIBRATION_VALUE 0x189//<2F><><EFBFBD><EFBFBD>У׼<D0A3><D7BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>£<EFBFBD><C2A3><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><DDB2>Խ<EFBFBD><D4BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȥ1500ps
//#define DIFTOF_HIGH_TEMP_CALIBRATION_VALUE_FLOAT (float)0.006 //<2F><><EFBFBD><EFBFBD>У׼ʱ<D7BC><CAB1>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1500ps<70><73>0.006=1.5ns/250<35><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¶ȴ<C2B6><C8B4><EFBFBD>35<33><35>ʱ<EFBFBD><CAB1><EFBFBD>ٵ<EFBFBD>1500ps
//#define DIFTOF_HIGH_TEMP_START_FLOW_COMPENSATE 0x106//<2F><><EFBFBD><EFBFBD>У׼<D0A3><D7BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>£<EFBFBD>30<33><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1000ps<70><73>0x106=262=1*65536/250<35><30>
//#define DIFTOF_LOW_TEMP_START_FLOW_COMPENSATE 0xB7//<2F><><EFBFBD><EFBFBD>У׼<D0A3><D7BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>£<EFBFBD>30<33>ȼ<EFBFBD>30<33><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>700ps<70><73>0xB8=184=0.7*65536/250<35><30>
#define DIFTOF_CALIBRATION_CNT 41400//ÿ<><C3BF><EFBFBD>ۼ<EFBFBD>23Сʱ<D0A1><CAB1>ˮ<EFBFBD><CBAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>Ҫ<EFBFBD><D2AA>У׼41400=3600*23/2
#define DIFTOF_CALIBRATION_MIN (float)-0.04//10ns/250=0.04
#define DIFTOF_CALIBRATION_MAX (float)0.04
/************************<2A><><EFBFBD>ƿ<EFBFBD><C6BF>ط<EFBFBD><D8B7>жϲ<D0B6><CFB2><EFBFBD>****************************/
#define FLOAT_15NS (float)0.06//15nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˲<EFBFBD>ʱ<EFBFBD><CAB1>float<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ=15/250
#define FLOAT_2NS (float)0.04//10nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˲<EFBFBD>ʱ<EFBFBD><CAB1>float<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ=10/250
#define TOF_UP_AM 150//up<75><70><EFBFBD><EFBFBD>ƽ<EFBFBD><C6BD><EFBFBD><EFBFBD>ֵ
#define TOF_DOWN_AM 150//down<77><6E><EFBFBD><EFBFBD>ƽ<EFBFBD><C6BD><EFBFBD><EFBFBD>ֵ
#define UP_AM_MAX 600
#define DOWN_AM_MAX 600
#if DN15_BRASS_40KPA_GP30_32768 || WDFS_DN15_BRASS_40KPA_GP30_32768 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define FRAME_FIRST_POWER_FLG 0x16
#define FRAME_CALIBER 0x15
#define FM_METER_TYPE 0x04 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>DN15 40Kpa 04
#define GP30_APP_DNX 0X15
#elif LLGS_DN15_BRASS_40KPA_GP30_32768 || LLGS_WDFS_DN15_BRASS_40KPA_GP30_32768
#define FRAME_FIRST_POWER_FLG 0x16 //<2F>޸<EFBFBD>
#define FRAME_CALIBER 0x15
#define FM_METER_TYPE 0x10 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>BM_DN15 63Kpa 16
#define GP30_APP_DNX 0X15
#elif ROUND_LLGS_DN15_BRASS_40KPA_GP30_32768 || ROUND_LLGS_WDFS_DN15_BRASS_40KPA_GP30_32768 || Buxiugang_LLGS_WDFS_DN15_BXG_40KPA_GP30_32768 || Plastic_LLGS_WDFS_DN15_PALSTIC_40KPA_GP30_32768
#define FRAME_FIRST_POWER_FLG 0x16
#define FRAME_CALIBER 0x15
#define FM_METER_TYPE 0x1A //Բ<>DZ<EFBFBD> 26
#define GP30_APP_DNX 0X15
#elif ROUND_LLGS_XFZ_DN15_BRASS_40KPA_GP30_32768
#define FRAME_FIRST_POWER_FLG 0x16
#define FRAME_CALIBER 0x15
#define FM_METER_TYPE 0x1A //Բ<>DZ<EFBFBD> 28
#define GP30_APP_DNX 0X15
//20211204
#elif PF_DN15_BRASS_63KPA_GP30_32768
#define FRAME_FIRST_POWER_FLG 0x16
#define FRAME_CALIBER 0x15
#define FM_METER_TYPE 0x13 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 19
#define GP30_APP_DNX 0X15
#elif BM_DN15_BRASS_63KPA_GP30_32768
#define FRAME_FIRST_POWER_FLG 0x16
#define FRAME_CALIBER 0x15
#define FM_METER_TYPE 0x01 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>BM_DN15 63Kpa 01
#define GP30_APP_DNX 0X15
#elif MID_DN15_BRASS_63KPA_GP30_32768
#define FRAME_FIRST_POWER_FLG 0x16
#define FRAME_CALIBER 0x15
#define FM_METER_TYPE 0x07 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>DN15 63Kpa 07
#define GP30_APP_DNX 0X15
#elif EN_DN15_BRASS_63KPA_GP30_32768
#define FRAME_FIRST_POWER_FLG 0x16
#define FRAME_CALIBER 0x15
#define FM_METER_TYPE 0x0E //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>DN15 63Kpa 14
#define GP30_APP_DNX 0X15
#elif DN20_BRASS_40KPA_GP30_32768 || WDFS_DN20_BRASS_40KPA_GP30_32768
#define FRAME_FIRST_POWER_FLG 0x20
#define FRAME_CALIBER 0x20
#define FM_METER_TYPE 0x05 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>DN20 40Kpa 05
#define GP30_APP_DNX 0X20
#elif BM_DN20_BRASS_63KPA_GP30_32768
#define FRAME_FIRST_POWER_FLG 0x20
#define FRAME_CALIBER 0x20
#define FM_METER_TYPE 0x02 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>BM_DN20 40Kpa 02
#define GP30_APP_DNX 0X20
#elif MID_DN20_BRASS_63KPA_GP30_32768
#define FRAME_FIRST_POWER_FLG 0x20
#define FRAME_CALIBER 0x20
#define FM_METER_TYPE 0x08 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>DN20 63Kpa 08
#define GP30_APP_DNX 0X20
#elif EN_DN20_BRASS_63KPA_GP30_32768
#define FRAME_FIRST_POWER_FLG 0x20
#define FRAME_CALIBER 0x20
#define FM_METER_TYPE 0x0F //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>BM_DN20 40Kpa 0F
#define GP30_APP_DNX 0X20
#elif LLGS_DN20_BRASS_40KPA_GP30_32768 || LLGS_WDFS_DN20_BRASS_40KPA_GP30_32768
#define FRAME_FIRST_POWER_FLG 0x20
#define FRAME_CALIBER 0x20
#define FM_METER_TYPE 0x11 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>LLGS_DN20 40Kpa 17
#define GP30_APP_DNX 0X20
#elif ROUND_LLGS_DN20_BRASS_40KPA_GP30_32768 || ROUND_LLGS_WDFS_DN20_BRASS_40KPA_GP30_32768 || Buxiugang_LLGS_WDFS_DN20_BXG_40KPA_GP30_32768
#define FRAME_FIRST_POWER_FLG 0x20
#define FRAME_CALIBER 0x20
#define FM_METER_TYPE 0x1B //Բ<>DZ<EFBFBD> 27
#define GP30_APP_DNX 0X20
#elif ROUND_LLGS_XFZ_DN20_BRASS_40KPA_GP30_32768
#define FRAME_FIRST_POWER_FLG 0x20
#define FRAME_CALIBER 0x20
#define FM_METER_TYPE 0x1D //Բ<>DZ<EFBFBD> 29
#define GP30_APP_DNX 0X20
//20211205
#elif PF_DN20_BRASS_63KPA_GP30_32768
#define FRAME_FIRST_POWER_FLG 0x20
#define FRAME_CALIBER 0x14
#define FM_METER_TYPE 0x14 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>PF_DN20_BRASS_63KPA_GP30_32768 20
#define GP30_APP_DNX 0X20
#elif DN25_BRASS_40KPA_GP30_32768
#define FRAME_FIRST_POWER_FLG 0x25
#define FRAME_CALIBER 0x25
#define FM_METER_TYPE 0x09 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>DN25 40Kpa 09
#define GP30_APP_DNX 0X25
#elif BM_DN25_BRASS_63KPA_GP30_32768
#define FRAME_FIRST_POWER_FLG 0x25
#define FRAME_CALIBER 0x25
#define FM_METER_TYPE 0x03 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>DN25 63Kpa 03
#define GP30_APP_DNX 0X25
#elif MID_DN25_BRASS_63KPA_GP30_32768
#define FRAME_FIRST_POWER_FLG 0x25
#define FRAME_CALIBER 0x25
#define FM_METER_TYPE 0x06 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>DN25 63Kpa 06
#define GP30_APP_DNX 0X25
#elif LLGS_DN25_BRASS_40KPA_GP30_32768
#define FRAME_FIRST_POWER_FLG 0x25
#define FRAME_CALIBER 0x25
#define FM_METER_TYPE 0x12 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>DN25 40Kpa 18
#define GP30_APP_DNX 0X25
//20211205
#elif PF_DN25_BRASS_63KPA_GP30_32768
#define FRAME_FIRST_POWER_FLG 0x25
#define FRAME_CALIBER 0x25
#define FM_METER_TYPE 0x15 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>DN25 40Kpa 21
#define GP30_APP_DNX 0X25
#elif DN32_BRASS_63KPA_GP30_32768
#define FRAME_FIRST_POWER_FLG 0x32
#define FRAME_CALIBER 0x20
#define FM_METER_TYPE 0x16 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>DN32 63Kpa 22
#define GP30_APP_DNX 0X32
#elif BM_DN32_BRASS_63KPA_GP30_32768
#define FRAME_FIRST_POWER_FLG 0x32
#define FRAME_CALIBER 0x32
#define FM_METER_TYPE 0x0C //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>DN32 63Kpa 0C
#define GP30_APP_DNX 0X32
//20211205
#elif PF_DN32_BRASS_63KPA_GP30_32768
#define FRAME_FIRST_POWER_FLG 0x32
#define FRAME_CALIBER 0x20
#define FM_METER_TYPE 0x17 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>DN32 63Kpa 23 //FM_METER_TYPEû<45><C3BB>
#define GP30_APP_DNX 0X32
#elif DN40_BRASS_63KPA_GP30_32768
#define FRAME_FIRST_POWER_FLG 0x40
#define FRAME_CALIBER 0x28
#define FM_METER_TYPE 0x19 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>DN40 63Kpa 25
#define GP30_APP_DNX 0X40
#elif BM_DN40_BRASS_63KPA_GP30_32768
#define FRAME_FIRST_POWER_FLG 0x40
#define FRAME_CALIBER 0x40
#define FM_METER_TYPE 0x0D //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>DN40 63Kpa 0D
#define GP30_APP_DNX 0X40
//20211205
#elif PF_DN40_BRASS_63KPA_GP30_32768
#define FRAME_FIRST_POWER_FLG 0x40
#define FRAME_CALIBER 0x28
#define FM_METER_TYPE 0x18 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>DN40 63Kpa 24 //FM_METER_TYPEû<45><C3BB>
#define GP30_APP_DNX 0X40
#endif
#if DN15_BRASS_40KPA_GP30_32768 || WDFS_DN15_BRASS_40KPA_GP30_32768 || LLGS_DN15_BRASS_40KPA_GP30_32768 || LLGS_WDFS_DN15_BRASS_40KPA_GP30_32768
#define DEFAULT_START_FLOW 0x00B7 //DN15ͭ40KPAʱ<41><CAB1>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ 700ns
#define FLOW_RATE_FILTER_COEFFICIENT (float)0.2//˲ʱ<CBB2><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define GP30_DIFTOF_FILTER_COEFFICIENT (FLOW_RATE_FILTER_COEFFICIENT*(float)2)//<2F><><EFBFBD><EFBFBD>̨<EFBFBD><CCA8>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define DIFTOF_COEFFICIENT (float)0.185217176// 16L/h<><68>Ӧ<EFBFBD><D3A6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ2.96347
#define R400Q1 (float)6.25
#define R400Q2 (float)10
#define R250Q2 (float)16
#define Q3_3_3 (float)825
#define Q3_6_6 (float)1650
#define MIN_FLOW_0_6 0x50000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>50%
#define MAX_FLOW_1_02 0xC730000//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>102%
#define MIN_FLOW_0_3 0x30000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>30%
#define LIMIT_FLOW_1_5Q4 4680//1.5<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define LIMIT_DIFTOF_FORWARD 0x00033333 //-200~-800nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define LIMIT_DIFTOF_REVERSE 0x8000CCCC //-200~-800nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define SEGMENT_NUM_SMALL 9
#define SEGMENT_NUM_MIDDLE 25//2021-0703
#define SEGMENT_NUM_LARGE 85
#define SEGMENT_NUM_ERROR_MIDDLE (SEGMENT_NUM_LARGE/2) //<2F><><EFBFBD>˴<EFBFBD>DN15<31><35>ֵ<EFBFBD>õ<EFBFBD>ͬһ<CDAC><D2BB><EFBFBD><EFBFBD><EFBFBD>ߣ<EFBFBD>ֻΪ<D6BB>˼<EFBFBD><CBBC><EFBFBD>4<EFBFBD>Σ<EFBFBD><CEA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4<EFBFBD>εĽ<CEB5>ģ
#define DXS_SEGMENT_NUM_LARGE 280 //<2F><><EFBFBD><EFBFBD>ʽ<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>ģ<EFBFBD>ͷֶ<CDB7>ֵ
#define CALIBRATION_PROTECT_VALUE ((float)0.9*R400Q2) //<2F><><EFBFBD><EFBFBD>У׼<D0A3><D7BC><EFBFBD><EFBFBD>С<EFBFBD><D0A1>0.9<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define TOF_AM_VALUE 190
#define TOF_UP_AM_0_8 (0.8*TOF_AM_VALUE)//up<75><70><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ0.8<EFBFBD><EFBFBD>
#define TOF_DOWN_AM_0_8 (0.8*TOF_AM_VALUE)//down<77><6E><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ0.8<EFBFBD><EFBFBD>
#define Q1_0_8 (float)8//0.8<EFBFBD><EFBFBD><EFBFBD><EFBFBD>R250<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD>ֵ
#define TOF_UP_DATA (float)55909.72//20<32><30><EFBFBD><EFBFBD>UP<55><50><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>ns
#define LEGENTH_SPEED_SOUND (float)82872.617//<2F><>·<EFBFBD><C2B7><EFBFBD><EFBFBD>=1482.257772*TOF_UP_DATA <20><>λum
#define LEGENTH_SPEED_SOUND_DAOSHU (float)6.03335598778e-9//<2F><>·<EFBFBD><C2B7><EFBFBD>ȵ<EFBFBD><C8B5><EFBFBD>
//<2F><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>
#define REAL_SOUND_PATH_LENGTH (float)59.8//(float)74.863 //L*cos <20><><EFBFBD><EFBFBD> D*cot<6F><74><EFBFBD><EFBFBD> D׼ȷ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2021-2-1<><31>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD>ߴ<EFBFBD> 2021-7-21 <20><><EFBFBD><EFBFBD>15<31><35>59.8<EFBFBD><EFBFBD>20<EFBFBD><EFBFBD>59.95
#define MEASYRING_TUBE_DIAMETER (float)10.7 //15<31><35>10.7, 20<32><30>13.6
#define FLOW_RATE_MULTIPLIER (float)8.361204e-9//(float)6.6788667e-9 // <20><><EFBFBD>ټ<EFBFBD><D9BC><EFBFBD><E3B3A3>= 1e-9/(2*(L<><4C>Ч))/0.001
#define FLOW_MULTIPLIER (float)335.9905 // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3B3A3>= (3.1416*D*D*1e-6/4 )*3600 *1000L/h //<2F><><EFBFBD><EFBFBD> 15:93.3307 20<32><30>146.631
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//#define SUBSECTION_NUM_THREE 1
#define SUBSECTION_NUM_FOUR 1
//#define SUBSECTION_NUM_FIVE 1
#elif ROUND_LLGS_DN15_BRASS_40KPA_GP30_32768 || ROUND_LLGS_WDFS_DN15_BRASS_40KPA_GP30_32768
#define DEFAULT_START_FLOW 0x00B7 //DN15ͭ40KPAʱ<41><CAB1>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ 700ns
#define FLOW_RATE_FILTER_COEFFICIENT (float)0.2//˲ʱ<CBB2><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define GP30_DIFTOF_FILTER_COEFFICIENT (FLOW_RATE_FILTER_COEFFICIENT*(float)2)//<2F><><EFBFBD><EFBFBD>̨<EFBFBD><CCA8>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define DIFTOF_COEFFICIENT (float)0.185217176// 16L/h<><68>Ӧ<EFBFBD><D3A6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ2.96347
#define R400Q1 (float)6.25
#define R400Q2 (float)10
#define R250Q2 (float)16
#define Q3_3_3 (float)825
#define Q3_6_6 (float)1650
#define MIN_FLOW_0_6 0x50000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>50%
#define MAX_FLOW_1_02 0xC730000//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>102%
#define MIN_FLOW_0_3 0x30000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>30%
#define LIMIT_FLOW_1_5Q4 4680//1.5<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define LIMIT_DIFTOF_FORWARD 0x00033333 //-200~-800nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define LIMIT_DIFTOF_REVERSE 0x8000CCCC //-200~-800nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define SEGMENT_NUM_SMALL 15
#define SEGMENT_NUM_MIDDLE 43
#define SEGMENT_NUM_LARGE 230
#define DXS_SEGMENT_NUM_LARGE 280 //<2F><><EFBFBD><EFBFBD>ʽ<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>ģ<EFBFBD>ͷֶ<CDB7>ֵ
#define CALIBRATION_PROTECT_VALUE ((float)0.9*R400Q2) //<2F><><EFBFBD><EFBFBD>У׼<D0A3><D7BC><EFBFBD><EFBFBD>С<EFBFBD><D0A1>0.9<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define TOF_AM_VALUE 190
#define TOF_UP_AM_0_8 (0.8*TOF_AM_VALUE)//up<75><70><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ0.8<EFBFBD><EFBFBD>
#define TOF_DOWN_AM_0_8 (0.8*TOF_AM_VALUE)//down<77><6E><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ0.8<EFBFBD><EFBFBD>
#define Q1_0_8 (float)8//0.8<EFBFBD><EFBFBD><EFBFBD><EFBFBD>R250<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD>ֵ
#define TOF_UP_DATA (float)57442.78//20<32><30><EFBFBD><EFBFBD>UP<55><50><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>ns
#define LEGENTH_SPEED_SOUND (float)85145.007//<2F><>·<EFBFBD><C2B7><EFBFBD><EFBFBD>=1482.257772*TOF_UP_DATA <20><>λum
#define LEGENTH_SPEED_SOUND_DAOSHU (float)5.8723349381e-9//<2F><>·<EFBFBD><C2B7><EFBFBD>ȵ<EFBFBD><C8B5><EFBFBD>
#define TOF_UP_DOWN_DAOSHUHE_LOW (float)0.035591 //1/up + 1/down 35<33><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define TOF_UP_DOWN_DAOSHUHE_MIDDLE (float)0.0359228//1/up + 1/down 35~45<34><35>
//<2F><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>
#define REAL_SOUND_PATH_LENGTH (float)62//
#define MEASYRING_TUBE_DIAMETER (float)11.5 //15<31><35>11.5, 20<32><30>12.5
#define FLOW_RATE_MULTIPLIER (float)8.064516e-9 // <20><><EFBFBD>ټ<EFBFBD><D9BC><EFBFBD><E3B3A3>= 1e-9/(2*(L<><4C>Ч))/0.001
#define FLOW_MULTIPLIER (float)373.92894 // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3B3A3>= (3.1416*D*D*1e-6/4 )*3600 *1000L/h 15<31>ھ<EFBFBD><DABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>103.86915 20<32>ھ<EFBFBD><DABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>122.71875
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//#define SUBSECTION_NUM_THREE 1
#define SUBSECTION_NUM_FOUR 1
//#define SUBSECTION_NUM_FIVE 1
#elif Plastic_LLGS_WDFS_DN15_PALSTIC_40KPA_GP30_32768
#define DEFAULT_START_FLOW 0x00B7 //DN15ͭ40KPAʱ<41><CAB1>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ 700ns
#define FLOW_RATE_FILTER_COEFFICIENT (float)0.2//˲ʱ<CBB2><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define GP30_DIFTOF_FILTER_COEFFICIENT (FLOW_RATE_FILTER_COEFFICIENT*(float)2)//<2F><><EFBFBD><EFBFBD>̨<EFBFBD><CCA8>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define DIFTOF_COEFFICIENT (float)0.163410708 // 16L/h<><68>Ӧ<EFBFBD><D3A6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ2.677016788
#define R400Q1 (float)6.25
#define R400Q2 (float)10
#define R250Q2 (float)16
#define Q3_3_3 (float)825
#define Q3_6_6 (float)1650
#define MIN_FLOW_0_6 0x50000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>50%
#define MAX_FLOW_1_02 0xC730000//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>102%
#define MIN_FLOW_0_3 0x30000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>30%
#define LIMIT_FLOW_1_5Q4 4680//1.5<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define LIMIT_DIFTOF_FORWARD 0x00033333 //-200~-800nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define LIMIT_DIFTOF_REVERSE 0x8000CCCC //-200~-800nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define SEGMENT_NUM_SMALL 13 // У׼<D0A3><D7BC> 6 10 16 80 2500
#define SEGMENT_NUM_MIDDLE 26
#define SEGMENT_NUM_LARGE 75
#define DXS_SEGMENT_NUM_LARGE 280 //<2F><><EFBFBD><EFBFBD>ʽ<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>ģ<EFBFBD>ͷֶ<CDB7>ֵ
#define CALIBRATION_PROTECT_VALUE ((float)0.9*R400Q2) //<2F><><EFBFBD><EFBFBD>У׼<D0A3><D7BC><EFBFBD><EFBFBD>С<EFBFBD><D0A1>0.9<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define TOF_AM_VALUE 240 //190
#define TOF_UP_AM_0_8 (0.8*TOF_AM_VALUE)//up<75><70><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ0.8<EFBFBD><EFBFBD>
#define TOF_DOWN_AM_0_8 (0.8*TOF_AM_VALUE)//down<77><6E><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ0.8<EFBFBD><EFBFBD>
#define Q1_0_8 (float)8//0.8<EFBFBD><EFBFBD><EFBFBD><EFBFBD>R250<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD>ֵ
#define TOF_UP_DATA (float)57442.78//20<32><30><EFBFBD><EFBFBD>UP<55><50><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>ns
#define LEGENTH_SPEED_SOUND (float)85145.007//<2F><>·<EFBFBD><C2B7><EFBFBD><EFBFBD>=1482.257772*TOF_UP_DATA <20><>λum
#define LEGENTH_SPEED_SOUND_DAOSHU (float)5.8723349381e-9//<2F><>·<EFBFBD><C2B7><EFBFBD>ȵ<EFBFBD><C8B5><EFBFBD>
#define TOF_UP_DOWN_DAOSHUHE_LOW (float)0.035591 //1/up + 1/down 35<33><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define TOF_UP_DOWN_DAOSHUHE_MIDDLE (float)0.0359228//1/up + 1/down 35~45<34><35>
//<2F><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>
#define REAL_SOUND_PATH_LENGTH (float)60//
#define MEASYRING_TUBE_DIAMETER (float)11.7 //15<31><35>11.5, 20<32><30>12.5
#define FLOW_RATE_MULTIPLIER (float)8.33333e-9 // <20><><EFBFBD>ټ<EFBFBD><D9BC><EFBFBD><E3B3A3>= 1e-9/(2*(L<><4C>Ч))/0.001
#define FLOW_MULTIPLIER (float)387.04826 // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3B3A3>= (3.1416*D*D*1e-6/4 )*3600 *1000L/h 15<31>ھ<EFBFBD><DABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>103.86915 20<32>ھ<EFBFBD><DABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>122.71875
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//#define SUBSECTION_NUM_THREE 1
#define SUBSECTION_NUM_FOUR 1
//#define SUBSECTION_NUM_FIVE 1
#elif Buxiugang_LLGS_WDFS_DN15_BXG_40KPA_GP30_32768
#define DEFAULT_START_FLOW 0x00B7 //DN15ͭ40KPAʱ<41><CAB1>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ 700ns
#define FLOW_RATE_FILTER_COEFFICIENT (float)0.2//˲ʱ<CBB2><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define GP30_DIFTOF_FILTER_COEFFICIENT (FLOW_RATE_FILTER_COEFFICIENT*(float)2)//<2F><><EFBFBD><EFBFBD>̨<EFBFBD><CCA8>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define DIFTOF_COEFFICIENT (float)0.189303125 // 16L/h<><68>Ӧ<EFBFBD><D3A6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ3.101189931
#define R400Q1 (float)6.25
#define R400Q2 (float)10
#define R250Q2 (float)16
#define Q3_3_3 (float)825
#define Q3_6_6 (float)1650
#define MIN_FLOW_0_6 0x50000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>50%
#define MAX_FLOW_1_02 0xC730000//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>102%
#define MIN_FLOW_0_3 0x30000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>30%
#define LIMIT_FLOW_1_5Q4 4680//1.5<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define LIMIT_DIFTOF_FORWARD 0x00033333 //-200~-800nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define LIMIT_DIFTOF_REVERSE 0x8000CCCC //-200~-800nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define SEGMENT_NUM_SMALL 13
#define SEGMENT_NUM_MIDDLE 26
#define SEGMENT_NUM_LARGE 75
#define SEGMENT_NUM_ERROR_MIDDLE 35 // 13~80 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ2<CEAA><32> 13~40һ<30>Ρ<EFBFBD>26~80һ<30><D2BB>
#define DXS_SEGMENT_NUM_LARGE 280 //<2F><><EFBFBD><EFBFBD>ʽ<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>ģ<EFBFBD>ͷֶ<CDB7>ֵ
#define CALIBRATION_PROTECT_VALUE ((float)0.9*R400Q2) //<2F><><EFBFBD><EFBFBD>У׼<D0A3><D7BC><EFBFBD><EFBFBD>С<EFBFBD><D0A1>0.9<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define TOF_AM_VALUE 190
#define TOF_UP_AM_0_8 (0.8*TOF_AM_VALUE)//up<75><70><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ0.8<EFBFBD><EFBFBD>
#define TOF_DOWN_AM_0_8 (0.8*TOF_AM_VALUE)//down<77><6E><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ0.8<EFBFBD><EFBFBD>
#define Q1_0_8 (float)8//0.8<EFBFBD><EFBFBD><EFBFBD><EFBFBD>R250<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD>ֵ
#define TOF_UP_DATA (float)57442.78//20<32><30><EFBFBD><EFBFBD>UP<55><50><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>ns
#define LEGENTH_SPEED_SOUND (float)85145.007//<2F><>·<EFBFBD><C2B7><EFBFBD><EFBFBD>=1482.257772*TOF_UP_DATA <20><>λum
#define LEGENTH_SPEED_SOUND_DAOSHU (float)5.8723349381e-9//<2F><>·<EFBFBD><C2B7><EFBFBD>ȵ<EFBFBD><C8B5><EFBFBD>
#define TOF_UP_DOWN_DAOSHUHE_LOW (float)0.035591 //1/up + 1/down 35<33><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define TOF_UP_DOWN_DAOSHUHE_MIDDLE (float)0.0359228//1/up + 1/down 35~45<34><35>
//<2F><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>
#define REAL_SOUND_PATH_LENGTH (float)62//
#define MEASYRING_TUBE_DIAMETER (float)11.1 //15<31><35>11.1,//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define FLOW_RATE_MULTIPLIER (float)8.064516e-9 // <20><><EFBFBD>ټ<EFBFBD><D9BC><EFBFBD><E3B3A3>= 1e-9/(2*(L<><4C>Ч))/0.001
#define FLOW_MULTIPLIER (float)348.36888 // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3B3A3>= (3.1416*D*D*1(e-6)/4 )*3600 *1000L/h 15<31>ھ<EFBFBD><DABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>103.86915 20<32>ھ<EFBFBD><DABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>122.71875
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//#define SUBSECTION_NUM_THREE 1
#define SUBSECTION_NUM_FOUR 1
//#define SUBSECTION_NUM_FIVE 1
#elif ROUND_LLGS_XFZ_DN15_BRASS_40KPA_GP30_32768
#define DEFAULT_START_FLOW 0x00B7 //DN15ͭ40KPAʱ<41><CAB1>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ 700ns
#define FLOW_RATE_FILTER_COEFFICIENT (float)0.2//˲ʱ<CBB2><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define GP30_DIFTOF_FILTER_COEFFICIENT (FLOW_RATE_FILTER_COEFFICIENT*(float)2)//<2F><><EFBFBD><EFBFBD>̨<EFBFBD><CCA8>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define DIFTOF_COEFFICIENT (float)0.185217176// 16L/h<><68>Ӧ<EFBFBD><D3A6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ2.96347
#define R400Q1 (float)6.25
#define R400Q2 (float)10
#define R250Q2 (float)16
#define Q3_3_3 (float)825
#define Q3_6_6 (float)1650
#define MIN_FLOW_0_6 0x50000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>50%
#define MAX_FLOW_1_02 0xC730000//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>102%
#define MIN_FLOW_0_3 0x30000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>30%
#define LIMIT_FLOW_1_5Q4 4680//1.5<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define LIMIT_DIFTOF_FORWARD 0x00033333 //-200~-800nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define LIMIT_DIFTOF_REVERSE 0x8000CCCC //-200~-800nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define SEGMENT_NUM_SMALL 15 // 10 16 28 100 2500
#define SEGMENT_NUM_MIDDLE 28
#define SEGMENT_NUM_LARGE 93
#define DXS_SEGMENT_NUM_LARGE 280 //<2F><><EFBFBD><EFBFBD>ʽ<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>ģ<EFBFBD>ͷֶ<CDB7>ֵ
#define CALIBRATION_PROTECT_VALUE ((float)0.9*R400Q2) //<2F><><EFBFBD><EFBFBD>У׼<D0A3><D7BC><EFBFBD><EFBFBD>С<EFBFBD><D0A1>0.9<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define TOF_AM_VALUE 240 //190
#define TOF_UP_AM_0_8 (0.8*TOF_AM_VALUE)//up<75><70><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ0.8<EFBFBD><EFBFBD>
#define TOF_DOWN_AM_0_8 (0.8*TOF_AM_VALUE)//down<77><6E><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ0.8<EFBFBD><EFBFBD>
#define Q1_0_8 (float)8//0.8<EFBFBD><EFBFBD><EFBFBD><EFBFBD>R250<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD>ֵ
#define TOF_UP_DATA (float)57442.78//20<32><30><EFBFBD><EFBFBD>UP<55><50><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>ns
#define LEGENTH_SPEED_SOUND (float)85145.007//<2F><>·<EFBFBD><C2B7><EFBFBD><EFBFBD>=1482.257772*TOF_UP_DATA <20><>λum
#define LEGENTH_SPEED_SOUND_DAOSHU (float)5.8723349381e-9//<2F><>·<EFBFBD><C2B7><EFBFBD>ȵ<EFBFBD><C8B5><EFBFBD>
#define TOF_UP_DOWN_DAOSHUHE_LOW (float)0.035591 //1/up + 1/down 35<33><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define TOF_UP_DOWN_DAOSHUHE_MIDDLE (float)0.0359228//1/up + 1/down 35~45<34><35>
//<2F><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>
#define REAL_SOUND_PATH_LENGTH (float)62//
#define MEASYRING_TUBE_DIAMETER (float)11.5 //15<31><35>11.5, 20<32><30>12.5
#define FLOW_RATE_MULTIPLIER (float)8.064516e-9 // <20><><EFBFBD>ټ<EFBFBD><D9BC><EFBFBD><E3B3A3>= 1e-9/(2*(L<><4C>Ч))/0.001
#define FLOW_MULTIPLIER (float)373.92894 // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3B3A3>= (3.1416*D*D*1e-6/4 )*3600 *1000L/h 15<31>ھ<EFBFBD><DABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>103.86915 20<32>ھ<EFBFBD><DABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>122.71875
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//#define SUBSECTION_NUM_THREE 1
#define SUBSECTION_NUM_FOUR 1
//#define SUBSECTION_NUM_FIVE 1
#elif MID_DN15_BRASS_63KPA_GP30_32768//<2F><><EFBFBD><EFBFBD><EEBBBB><EFBFBD><EFBFBD>ŷ<EFBFBD><C5B7>DN15<31>ھ<EFBFBD> 2022-08-04
#define DEFAULT_START_FLOW 0x00B7 //DN15ͭ63KPAʱ<41><CAB1>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
#define FLOW_RATE_FILTER_COEFFICIENT (float)0.3//˲ʱ<CBB2><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define GP30_DIFTOF_FILTER_COEFFICIENT (FLOW_RATE_FILTER_COEFFICIENT*(float)2)//<2F><><EFBFBD><EFBFBD>̨<EFBFBD><CCA8>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define DIFTOF_COEFFICIENT (float)0.200274918//
#define R400Q1 (float)6.25
#define R400Q2 (float)10
#define R250Q2 (float)16
#define Q3_3_3 (float)825
#define Q3_6_6 (float)1650
#define MIN_FLOW_0_6 0x50000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>50%
#define MAX_FLOW_1_02 0xC730000//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>102%
#define MIN_FLOW_0_3 0x30000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>30%
#define LIMIT_FLOW_1_5Q4 4680//1.5<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define LIMIT_DIFTOF_FORWARD 0x000347AE //-220~820nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define LIMIT_DIFTOF_REVERSE 0x8000E147 //-220~-820nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define SEGMENT_NUM_SMALL 8
#define SEGMENT_NUM_MIDDLE 25
#define SEGMENT_NUM_LARGE 85
#define SEGMENT_NUM_ERROR_MIDDLE (SEGMENT_NUM_LARGE/2) //<2F><><EFBFBD>˴<EFBFBD>DN15<31><35>ֵ<EFBFBD>õ<EFBFBD>ͬһ<CDAC><D2BB><EFBFBD><EFBFBD><EFBFBD>ߣ<EFBFBD>ֻΪ<D6BB>˼<EFBFBD><CBBC><EFBFBD>4<EFBFBD>Σ<EFBFBD><CEA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4<EFBFBD>εĽ<CEB5>ģ
#define DXS_SEGMENT_NUM_LARGE 280 //<2F><><EFBFBD><EFBFBD>ʽ<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>ģ<EFBFBD>ͷֶ<CDB7>ֵ
#define CALIBRATION_PROTECT_VALUE ((float)0.9*R400Q1) //<2F><><EFBFBD><EFBFBD>У׼<D0A3><D7BC><EFBFBD><EFBFBD>С<EFBFBD><D0A1>0.9<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>
#define REAL_SOUND_PATH_LENGTH (float)59.8//(float)74.863 //L*cos <20><><EFBFBD><EFBFBD> D*cot<6F><74><EFBFBD><EFBFBD> D׼ȷ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2021-2-1<><31>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD>ߴ<EFBFBD> 2021-7-21 <20><><EFBFBD><EFBFBD>15<31><35>59.8<EFBFBD><EFBFBD>20<EFBFBD><EFBFBD>59.95
#define MEASYRING_TUBE_DIAMETER (float)10
#define FLOW_RATE_MULTIPLIER (float)8.361204e-9//(float)6.6788667e-9 // <20><><EFBFBD>ټ<EFBFBD><D9BC><EFBFBD><E3B3A3>= 1e-9/(2*(L<><4C>Ч))/0.001
#define FLOW_MULTIPLIER (float)290.412 // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3B3A3>= (3.1416*D*D*1e-6/4 )*3600 *1000L/h //<2F><><EFBFBD><EFBFBD> PF 15:80.67 PF 20<32><30>134.95
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//#define SUBSECTION_NUM_THREE 1
#define SUBSECTION_NUM_FOUR 1
//#define SUBSECTION_NUM_FIVE 1
#elif EN_DN15_BRASS_63KPA_GP30_32768
#define DEFAULT_START_FLOW 0x00B7 //DN15ͭ63KPAʱ<41><CAB1>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
#define FLOW_RATE_FILTER_COEFFICIENT (float)0.3//˲ʱ<CBB2><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define GP30_DIFTOF_FILTER_COEFFICIENT (FLOW_RATE_FILTER_COEFFICIENT*(float)2)//<2F><><EFBFBD><EFBFBD>̨<EFBFBD><CCA8>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define DIFTOF_COEFFICIENT (float)0.200274918//
#define R400Q1 (float)6.25
#define R400Q2 (float)10
#define R250Q2 (float)16
#define Q3_3_3 (float)825
#define Q3_6_6 (float)1650
#define MIN_FLOW_0_6 0x50000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>50%
#define MAX_FLOW_1_02 0xC730000//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>102%
#define MIN_FLOW_0_3 0x30000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>30%
#define LIMIT_FLOW_1_5Q4 4680//1.5<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define LIMIT_DIFTOF_FORWARD 0x000347AE //-220~820nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define LIMIT_DIFTOF_REVERSE 0x8000E147 //-220~-820nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define SEGMENT_NUM_SMALL 8
#define SEGMENT_NUM_MIDDLE 25
#define SEGMENT_NUM_LARGE 77
#define SEGMENT_NUM_ERROR_MIDDLE (SEGMENT_NUM_LARGE/2) //<2F><><EFBFBD>˴<EFBFBD>DN15<31><35>ֵ<EFBFBD>õ<EFBFBD>ͬһ<CDAC><D2BB><EFBFBD><EFBFBD><EFBFBD>ߣ<EFBFBD>ֻΪ<D6BB>˼<EFBFBD><CBBC><EFBFBD>4<EFBFBD>Σ<EFBFBD><CEA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4<EFBFBD>εĽ<CEB5>ģ
#define DXS_SEGMENT_NUM_LARGE 280 //<2F><><EFBFBD><EFBFBD>ʽ<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>ģ<EFBFBD>ͷֶ<CDB7>ֵ
#define CALIBRATION_PROTECT_VALUE ((float)0.9*R400Q1) //<2F><><EFBFBD><EFBFBD>У׼<D0A3><D7BC><EFBFBD><EFBFBD>С<EFBFBD><D0A1>0.9<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>
#define REAL_SOUND_PATH_LENGTH (float)59.8//(float)74.863 //L*cos <20><><EFBFBD><EFBFBD> D*cot<6F><74><EFBFBD><EFBFBD> D׼ȷ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2021-2-1<><31>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD>ߴ<EFBFBD> 2021-7-21 <20><><EFBFBD><EFBFBD>15<31><35>59.8<EFBFBD><EFBFBD>20<EFBFBD><EFBFBD>59.95
#define MEASYRING_TUBE_DIAMETER (float)10
#define FLOW_RATE_MULTIPLIER (float)8.361204e-9//(float)6.6788667e-9 // <20><><EFBFBD>ټ<EFBFBD><D9BC><EFBFBD><E3B3A3>= 1e-9/(2*(L<><4C>Ч))/0.001
#define FLOW_MULTIPLIER (float)290.412 // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3B3A3>= (3.1416*D*D*1e-6/4 )*3600 *1000L/h //<2F><><EFBFBD><EFBFBD> PF 15:80.67 PF 20<32><30>134.95
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//#define SUBSECTION_NUM_THREE 1
#define SUBSECTION_NUM_FOUR 1
//#define SUBSECTION_NUM_FIVE 1
#elif BM_DN15_BRASS_63KPA_GP30_32768
#define DEFAULT_START_FLOW 0x00B7 //DN15ͭ63KPAʱ<41><CAB1>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ 700ps
#define FLOW_RATE_FILTER_COEFFICIENT (float)0.3//˲ʱ<CBB2><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define GP30_DIFTOF_FILTER_COEFFICIENT (FLOW_RATE_FILTER_COEFFICIENT*(float)2)//<2F><><EFBFBD><EFBFBD>̨<EFBFBD><CCA8>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define DIFTOF_COEFFICIENT (float)0.207551802 //16L/h<><68>Ӧ<EFBFBD><D3A6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ 3.320828833
#define R400Q1 (float)6.25
#define R400Q2 (float)10
#define R250Q2 (float)16
#define Q3_3_3 (float)825
#define Q3_6_6 (float)1650
#define MIN_FLOW_0_6 0x50000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>50%
#define MAX_FLOW_1_02 0xC730000//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>102%
#define MIN_FLOW_0_3 0x30000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>30%
#define LIMIT_FLOW_1_5Q4 4680//1.5<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define LIMIT_DIFTOF_FORWARD 0x000347AE //-220~820nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define LIMIT_DIFTOF_REVERSE 0x8000E147 //-220~-820nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define SEGMENT_NUM_SMALL 8
#define SEGMENT_NUM_MIDDLE 25
#define SEGMENT_NUM_LARGE 90
#define DXS_SEGMENT_NUM_LARGE 280 //<2F><><EFBFBD><EFBFBD>ʽ<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>ģ<EFBFBD>ͷֶ<CDB7>ֵ
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//#define SUBSECTION_NUM_THREE 1
#define SUBSECTION_NUM_FOUR 1
//#define SUBSECTION_NUM_FIVE 1
#define CALIBRATION_PROTECT_VALUE ((float)0.9*R400Q1) //<2F><><EFBFBD><EFBFBD>У׼<D0A3><D7BC><EFBFBD><EFBFBD>С<EFBFBD><D0A1>0.9<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//20211204
#elif PF_DN15_BRASS_63KPA_GP30_32768
#define DEFAULT_START_FLOW 0x00B7 //DN15ͭ63KPAʱ<41><CAB1>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
#define FLOW_RATE_FILTER_COEFFICIENT (float)0.3//˲ʱ<CBB2><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define GP30_DIFTOF_FILTER_COEFFICIENT (FLOW_RATE_FILTER_COEFFICIENT*(float)2)//<2F><><EFBFBD><EFBFBD>̨<EFBFBD><CCA8>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define DIFTOF_COEFFICIENT (float)0.200274918//
#define R400Q1 (float)6.25
#define R400Q2 (float)10
#define R250Q2 (float)16
#define Q3_3_3 (float)825
#define Q3_6_6 (float)1650
#define MIN_FLOW_0_6 0x50000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>50%
#define MAX_FLOW_1_02 0xC730000//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>102%
#define MIN_FLOW_0_3 0x30000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>30%
#define LIMIT_FLOW_1_5Q4 4680//1.5<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define LIMIT_DIFTOF_FORWARD 0x000347AE //-220~820nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define LIMIT_DIFTOF_REVERSE 0x8000E147 //-220~-820nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define SEGMENT_NUM_SMALL 8
#define SEGMENT_NUM_MIDDLE 25
#define SEGMENT_NUM_LARGE 85
#define SEGMENT_NUM_ERROR_MIDDLE (SEGMENT_NUM_LARGE/2) //<2F><><EFBFBD>˴<EFBFBD>DN15<31><35>ֵ<EFBFBD>õ<EFBFBD>ͬһ<CDAC><D2BB><EFBFBD><EFBFBD><EFBFBD>ߣ<EFBFBD>ֻΪ<D6BB>˼<EFBFBD><CBBC><EFBFBD>4<EFBFBD>Σ<EFBFBD><CEA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4<EFBFBD>εĽ<CEB5>ģ
#define DXS_SEGMENT_NUM_LARGE 280 //<2F><><EFBFBD><EFBFBD>ʽ<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>ģ<EFBFBD>ͷֶ<CDB7>ֵ
#define CALIBRATION_PROTECT_VALUE ((float)0.9*R400Q2) //<2F><><EFBFBD><EFBFBD>У׼<D0A3><D7BC><EFBFBD><EFBFBD>С<EFBFBD><D0A1>0.9<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define FLOAT_BETWEEN_DATA_DIF_MAX (float)3.8//950nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˲<EFBFBD>ʱ<EFBFBD><CAB1>float<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ=850/250 <20>ٽ<EFBFBD>״̬<D7B4>л<EFBFBD><D0BB><EFBFBD><EFBFBD><EFBFBD>ֵ
#define FLOAT_SWITCH_STATE_THRESHOLD (float)3.4//850nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˲<EFBFBD>ʱ<EFBFBD><CAB1>float<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ=850/250 <20>ٽ<EFBFBD>״̬<D7B4>л<EFBFBD><D0BB><EFBFBD><EFBFBD><EFBFBD>ֵ
#define FLOAT_BETWEEN_DATA_DIF (float)2.2//550nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˲<EFBFBD>ʱ<EFBFBD><CAB1>float<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ=550/250 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֮<EFBFBD><D6AE><EFBFBD>IJ<EFBFBD>ֵ
#define FLOAT_LAST_DATA_MAX_THRESHOULD (float)1.4//350nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˲<EFBFBD>ʱ<EFBFBD><CAB1>float<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ=350/250 <20><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD><DDB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD>ֵ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD>Ǹ<EFBFBD><C7B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-350<35><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define FLOAT_LAST_DATA_MIN_THRESHOULD (float)1.84//460nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˲<EFBFBD>ʱ<EFBFBD><CAB1>float<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ=460/250 <20><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD><DDB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD>ֵ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD>Ǹ<EFBFBD><C7B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-460<36><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define FLOAT_SWITCH_STATE_CURRENT_THRESHOLD (float)0.64//160nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˲<EFBFBD>ʱ<EFBFBD><CAB1>float<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ=160/250 <20>ٽ<EFBFBD>״̬<D7B4><CCAC>ǰ<EFBFBD><C7B0><EFBFBD>ݵ<EFBFBD><DDB5><EFBFBD><EFBFBD><EFBFBD>ֵ
//<2F><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>
#define REAL_SOUND_PATH_LENGTH (float)59.8//(float)74.863 //L*cos <20><><EFBFBD><EFBFBD> D*cot<6F><74><EFBFBD><EFBFBD> D׼ȷ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2021-2-1<><31>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD>ߴ<EFBFBD> 2021-7-21 <20><><EFBFBD><EFBFBD>15<31><35>59.8<EFBFBD><EFBFBD>20<EFBFBD><EFBFBD>59.95
#define MEASYRING_TUBE_DIAMETER (float)10
#define FLOW_RATE_MULTIPLIER (float)8.361204e-9//(float)6.6788667e-9 // <20><><EFBFBD>ټ<EFBFBD><D9BC><EFBFBD><E3B3A3>= 1e-9/(2*(L<><4C>Ч))/0.001
#define FLOW_MULTIPLIER (float)290.412 // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3B3A3>= (3.1416*D*D*1e-6/4 )*3600 *1000L/h //<2F><><EFBFBD><EFBFBD> PF 15:80.67 PF 20<32><30>134.95
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//#define SUBSECTION_NUM_THREE 1
#define SUBSECTION_NUM_FOUR 1
//#define SUBSECTION_NUM_FIVE 1
#elif DN20_BRASS_40KPA_GP30_32768 || WDFS_DN20_BRASS_40KPA_GP30_32768
#define DEFAULT_START_FLOW 0x00D1 //DN20ͭ40KPAʱ<41><CAB1>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
#define FLOW_RATE_FILTER_COEFFICIENT (float)0.2//˲ʱ<CBB2><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define GP30_DIFTOF_FILTER_COEFFICIENT (FLOW_RATE_FILTER_COEFFICIENT*(float)2)//<2F><><EFBFBD><EFBFBD>̨<EFBFBD><CCA8>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define DIFTOF_COEFFICIENT (float)0.129817327// 25L/h<><68>Ӧ<EFBFBD><D3A6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ3.245433172
#define R400Q1 (float)10
#define R400Q2 (float)16
#define R250Q2 (float)25
#define Q3_3_3 (float)1320
#define Q3_6_6 (float)2640
#define MIN_FLOW_0_6 0x80000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>50%
#define MAX_FLOW_1_02 0x14050000//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>102%
#define MIN_FLOW_0_3 0x40000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>25%
#define LIMIT_FLOW_1_5Q4 7500//1.5<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define LIMIT_DIFTOF_FORWARD 0x00033333 //-200~-800nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define LIMIT_DIFTOF_REVERSE 0x8000CCCC //-200~-800nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define SEGMENT_NUM_SMALL 14
#define SEGMENT_NUM_MIDDLE 34
#define SEGMENT_NUM_LARGE 155
#define DXS_SEGMENT_NUM_LARGE 280 //<2F><><EFBFBD><EFBFBD>ʽ<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>ģ<EFBFBD>ͷֶ<CDB7>ֵ
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//#define SUBSECTION_NUM_THREE 1
#define SUBSECTION_NUM_FOUR 1
//#define SUBSECTION_NUM_FIVE 1
#define CALIBRATION_PROTECT_VALUE ((float)0.9*R400Q2) //<2F><><EFBFBD><EFBFBD>У׼<D0A3><D7BC><EFBFBD><EFBFBD>С<EFBFBD><D0A1>0.9<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define TOF_AM_VALUE 190
#define TOF_UP_AM_0_8 (0.8*TOF_AM_VALUE)//up<75><70><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ0.8<EFBFBD><EFBFBD>
#define TOF_DOWN_AM_0_8 (0.8*TOF_AM_VALUE)//down<77><6E><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ0.8<EFBFBD><EFBFBD>
#define Q1_0_8 (float)12.8//0.8<EFBFBD><EFBFBD><EFBFBD><EFBFBD>R250<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD>ֵ
#define TOF_UP_DATA (float)57881.92//20<32><30><EFBFBD><EFBFBD>UP<55><50><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>ns
#define LEGENTH_SPEED_SOUND (float)85795.925778//<2F><>·<EFBFBD><C2B7><EFBFBD><EFBFBD>=1482.257772*TOF_UP_DATA <20><>λum
#define LEGENTH_SPEED_SOUND_DAOSHU (float)5.8277825603528e-9//<2F><>·<EFBFBD><C2B7><EFBFBD>ȵ<EFBFBD><C8B5><EFBFBD>
#elif LLGS_DN20_BRASS_40KPA_GP30_32768 || LLGS_WDFS_DN20_BRASS_40KPA_GP30_32768
#define DEFAULT_START_FLOW 0x00D1 //DN20ͭ40KPAʱ<41><CAB1>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
#define FLOW_RATE_FILTER_COEFFICIENT (float)0.2//˲ʱ<CBB2><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define GP30_DIFTOF_FILTER_COEFFICIENT (FLOW_RATE_FILTER_COEFFICIENT*(float)2)//<2F><><EFBFBD><EFBFBD>̨<EFBFBD><CCA8>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define DIFTOF_COEFFICIENT (float)0.129817327// 25L/h<><68>Ӧ<EFBFBD><D3A6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ3.245433172
#define R400Q1 (float)10
#define R400Q2 (float)16
#define R250Q2 (float)25
#define Q3_3_3 (float)1320
#define Q3_6_6 (float)2640
#define MIN_FLOW_0_6 0x80000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>50%
#define MAX_FLOW_1_02 0x14050000//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>102%
#define MIN_FLOW_0_3 0x40000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>25%
#define LIMIT_FLOW_1_5Q4 7500//1.5<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define LIMIT_DIFTOF_FORWARD 0x00033333 //-200~-800nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define LIMIT_DIFTOF_REVERSE 0x8000CCCC //-200~-800nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define SEGMENT_NUM_SMALL 16
#define SEGMENT_NUM_MIDDLE 25
#define SEGMENT_NUM_LARGE 155
#define SEGMENT_NUM_ERROR_MIDDLE 43 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4<EFBFBD>εĽ<CEB5>ģ
#define DXS_SEGMENT_NUM_LARGE 280 //<2F><><EFBFBD><EFBFBD>ʽ<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>ģ<EFBFBD>ͷֶ<CDB7>ֵ
//<2F><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>
#define REAL_SOUND_PATH_LENGTH (float)59.95//(float)74.863 //L*cos <20><><EFBFBD><EFBFBD> D*cot<6F><74><EFBFBD><EFBFBD> D׼ȷ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2021-2-1<><31>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD>ߴ<EFBFBD> 2021-7-21 <20><><EFBFBD><EFBFBD>15<31><35>59.8<EFBFBD><EFBFBD>20<EFBFBD><EFBFBD>59.95
#define MEASYRING_TUBE_DIAMETER (float)13.6 //15<31><35>10.7, 20<32><30>13.6
#define FLOW_RATE_MULTIPLIER (float)8.3402836e-9//(float)6.6788667e-9 // <20><><EFBFBD>ټ<EFBFBD><D9BC><EFBFBD><E3B3A3>= 1e-9/(2*(L<><4C>Ч))/0.001
#define FLOW_MULTIPLIER (float)527.8716 // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3B3A3>= (3.1416*D*D*1e-6/4 )*3600 *1000L/h //<2F><><EFBFBD><EFBFBD> 15:93.3307 20<32><30>146.631
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//#define SUBSECTION_NUM_THREE 1
#define SUBSECTION_NUM_FOUR 1
//#define SUBSECTION_NUM_FIVE 1
#define CALIBRATION_PROTECT_VALUE ((float)0.9*R400Q2) //<2F><><EFBFBD><EFBFBD>У׼<D0A3><D7BC><EFBFBD><EFBFBD>С<EFBFBD><D0A1>0.9<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define TOF_AM_VALUE 190
#define TOF_UP_AM_0_8 (0.8*TOF_AM_VALUE)//up<75><70><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ0.8<EFBFBD><EFBFBD>
#define TOF_DOWN_AM_0_8 (0.8*TOF_AM_VALUE)//down<77><6E><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ0.8<EFBFBD><EFBFBD>
#define Q1_0_8 (float)12.8//0.8<EFBFBD><EFBFBD><EFBFBD><EFBFBD>R250<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD>ֵ
#define TOF_UP_DATA (float)57881.92//20<32><30><EFBFBD><EFBFBD>UP<55><50><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>ns
#define LEGENTH_SPEED_SOUND (float)85795.925778//<2F><>·<EFBFBD><C2B7><EFBFBD><EFBFBD>=1482.257772*TOF_UP_DATA <20><>λum
#define LEGENTH_SPEED_SOUND_DAOSHU (float)5.8277825603528e-9//<2F><>·<EFBFBD><C2B7><EFBFBD>ȵ<EFBFBD><C8B5><EFBFBD>
#elif ROUND_LLGS_DN20_BRASS_40KPA_GP30_32768 || ROUND_LLGS_WDFS_DN20_BRASS_40KPA_GP30_32768
#define DEFAULT_START_FLOW 0x00D1 //DN20ͭ40KPAʱ<41><CAB1>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
#define FLOW_RATE_FILTER_COEFFICIENT (float)0.2//˲ʱ<CBB2><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define GP30_DIFTOF_FILTER_COEFFICIENT (FLOW_RATE_FILTER_COEFFICIENT*(float)2)//<2F><><EFBFBD><EFBFBD>̨<EFBFBD><CCA8>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define DIFTOF_COEFFICIENT (float)0.129817327// 25L/h<><68>Ӧ<EFBFBD><D3A6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ3.245433172
#define R400Q1 (float)10
#define R400Q2 (float)16
#define R250Q2 (float)25
#define Q3_3_3 (float)1320
#define Q3_6_6 (float)2640
#define MIN_FLOW_0_6 0x80000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>50%
#define MAX_FLOW_1_02 0x14050000//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>102%
#define MIN_FLOW_0_3 0x40000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>25%
#define LIMIT_FLOW_1_5Q4 7500//1.5<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define LIMIT_DIFTOF_FORWARD 0x00033333 //-200~-800nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define LIMIT_DIFTOF_REVERSE 0x8000CCCC //-200~-800nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define SEGMENT_NUM_SMALL 15
#define SEGMENT_NUM_MIDDLE 35
#define SEGMENT_NUM_LARGE 190
#define DXS_SEGMENT_NUM_LARGE 280 //<2F><><EFBFBD><EFBFBD>ʽ<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>ģ<EFBFBD>ͷֶ<CDB7>ֵ
#define CALIBRATION_PROTECT_VALUE ((float)0.9*R400Q2) //<2F><><EFBFBD><EFBFBD>У׼<D0A3><D7BC><EFBFBD><EFBFBD>С<EFBFBD><D0A1>0.9<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define TOF_AM_VALUE 190
#define TOF_UP_AM_0_8 (0.8*TOF_AM_VALUE)//up<75><70><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ0.8<EFBFBD><EFBFBD>
#define TOF_DOWN_AM_0_8 (0.8*TOF_AM_VALUE)//down<77><6E><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ0.8<EFBFBD><EFBFBD>
#define Q1_0_8 (float)12.8//0.8<EFBFBD><EFBFBD><EFBFBD><EFBFBD>R250<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD>ֵ
#define TOF_UP_DATA (float)60160.65//20<32><30><EFBFBD><EFBFBD>UP<55><50><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>ns
#define LEGENTH_SPEED_SOUND (float)89173.591031//<2F><>·<EFBFBD><C2B7><EFBFBD><EFBFBD>=1482.257772*TOF_UP_DATA <20><>λum
#define LEGENTH_SPEED_SOUND_DAOSHU (float)5.6070412e-9//<2F><>·<EFBFBD><C2B7><EFBFBD>ȵ<EFBFBD><C8B5><EFBFBD>
#define TOF_UP_DOWN_DAOSHUHE_LOW (float)0.03397054 //1/up + 1/down 35<33><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define TOF_UP_DOWN_DAOSHUHE_MIDDLE (float)0.03428789 //1/up + 1/down 35~45<34><35>
//<2F><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>
#define REAL_SOUND_PATH_LENGTH (float)62////
#define MEASYRING_TUBE_DIAMETER (float)12.5 //15<31><35>11.5, 20<32><30>12.5
#define FLOW_RATE_MULTIPLIER (float)8.064516e-9 // <20><><EFBFBD>ټ<EFBFBD><D9BC><EFBFBD><E3B3A3>= 1e-9/(2*(L<><4C>Ч))/0.001
#define FLOW_MULTIPLIER (float)441.7875 // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3B3A3>= (3.1416*D*D*1e-6/4 )*3600 *1000L/h 15<31>ھ<EFBFBD><DABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>103.86915 20<32>ھ<EFBFBD><DABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>122.71875
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//#define SUBSECTION_NUM_THREE 1
#define SUBSECTION_NUM_FOUR 1
//#define SUBSECTION_NUM_FIVE 1
#elif Buxiugang_LLGS_WDFS_DN20_BXG_40KPA_GP30_32768
#define DEFAULT_START_FLOW 0x00B8 //DN20ͭ40KPAʱ<41><CAB1>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
#define FLOW_RATE_FILTER_COEFFICIENT (float)0.2//˲ʱ<CBB2><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define GP30_DIFTOF_FILTER_COEFFICIENT (FLOW_RATE_FILTER_COEFFICIENT*(float)2)//<2F><><EFBFBD><EFBFBD>̨<EFBFBD><CCA8>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define DIFTOF_COEFFICIENT (float)0.1131270// 25L/h<><68>Ӧ<EFBFBD><D3A6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ2.8281742
#define R400Q1 (float)10
#define R400Q2 (float)16
#define R250Q2 (float)25
#define Q3_3_3 (float)1320
#define Q3_6_6 (float)2640
#define MIN_FLOW_0_6 0x80000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>50%
#define MAX_FLOW_1_02 0x14050000//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>102%
#define MIN_FLOW_0_3 0x40000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>25%
#define LIMIT_FLOW_1_5Q4 7500//1.5<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define LIMIT_DIFTOF_FORWARD 0x00033333 //-200~-800nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define LIMIT_DIFTOF_REVERSE 0x8000CCCC //-200~-800nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define SEGMENT_NUM_SMALL 15
#define SEGMENT_NUM_MIDDLE 33
#define SEGMENT_NUM_LARGE 130
#define SEGMENT_NUM_ERROR_MIDDLE 47 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4<EFBFBD>εĽ<CEB5>ģ
#define DXS_SEGMENT_NUM_LARGE 170 //<2F><><EFBFBD><EFBFBD>ʽ<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>ģ<EFBFBD>ͷֶ<CDB7>ֵ
#define CALIBRATION_PROTECT_VALUE ((float)0.9*R400Q2) //<2F><><EFBFBD><EFBFBD>У׼<D0A3><D7BC><EFBFBD><EFBFBD>С<EFBFBD><D0A1>0.9<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define TOF_AM_VALUE 190
#define TOF_UP_AM_0_8 (0.8*TOF_AM_VALUE)//up<75><70><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ0.8<EFBFBD><EFBFBD>
#define TOF_DOWN_AM_0_8 (0.8*TOF_AM_VALUE)//down<77><6E><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ0.8<EFBFBD><EFBFBD>
#define Q1_0_8 (float)12.8//0.8<EFBFBD><EFBFBD><EFBFBD><EFBFBD>R250<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD>ֵ
#define TOF_UP_DATA (float)60160.65//20<32><30><EFBFBD><EFBFBD>UP<55><50><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>ns
#define LEGENTH_SPEED_SOUND (float)89173.591031//<2F><>·<EFBFBD><C2B7><EFBFBD><EFBFBD>=1482.257772*TOF_UP_DATA <20><>λum
#define LEGENTH_SPEED_SOUND_DAOSHU (float)5.6070412e-9//<2F><>·<EFBFBD><C2B7><EFBFBD>ȵ<EFBFBD><C8B5><EFBFBD>
#define TOF_UP_DOWN_DAOSHUHE_LOW (float)0.03397054 //1/up + 1/down 35<33><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define TOF_UP_DOWN_DAOSHUHE_MIDDLE (float)0.03428789 //1/up + 1/down 35~45<34><35>
//<2F><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>
#define REAL_SOUND_PATH_LENGTH (float)62////
#define MEASYRING_TUBE_DIAMETER (float)14 //15<31><35>11.5, 20<32><30>12.5
#define FLOW_RATE_MULTIPLIER (float)8.06452E-09 // <20><><EFBFBD>ټ<EFBFBD><D9BC><EFBFBD><E3B3A3>= 1e-9/(2*(L<><4C>Ч))/0.001
#define FLOW_MULTIPLIER (float)554.17824 // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3B3A3>= (3.1416*D*D*1e-6/4 )*3600 *1000L/h 15<31>ھ<EFBFBD><DABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>103.86915 20<32>ھ<EFBFBD><DABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>122.71875
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//#define SUBSECTION_NUM_THREE 1
#define SUBSECTION_NUM_FOUR 1
//#define SUBSECTION_NUM_FIVE 1
#elif ROUND_LLGS_XFZ_DN20_BRASS_40KPA_GP30_32768
#define DEFAULT_START_FLOW 0x00D1 //DN20ͭ40KPAʱ<41><CAB1>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
#define FLOW_RATE_FILTER_COEFFICIENT (float)0.2//˲ʱ<CBB2><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define GP30_DIFTOF_FILTER_COEFFICIENT (FLOW_RATE_FILTER_COEFFICIENT*(float)2)//<2F><><EFBFBD><EFBFBD>̨<EFBFBD><CCA8>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define DIFTOF_COEFFICIENT (float)0.129817327// 25L/h<><68>Ӧ<EFBFBD><D3A6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ3.245433172
#define R400Q1 (float)10
#define R400Q2 (float)16
#define R250Q2 (float)25
#define Q3_3_3 (float)1320
#define Q3_6_6 (float)2640
#define MIN_FLOW_0_6 0x80000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>50%
#define MAX_FLOW_1_02 0x14050000//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>102%
#define MIN_FLOW_0_3 0x40000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>25%
#define LIMIT_FLOW_1_5Q4 7500//1.5<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define LIMIT_DIFTOF_FORWARD 0x00033333 //-200~-800nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define LIMIT_DIFTOF_REVERSE 0x8000CCCC //-200~-800nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define SEGMENT_NUM_SMALL 15 //10 16 25 150 4000У׼<D0A3><D7BC>
#define SEGMENT_NUM_MIDDLE 38
#define SEGMENT_NUM_LARGE 136
#define DXS_SEGMENT_NUM_LARGE 280 //<2F><><EFBFBD><EFBFBD>ʽ<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>ģ<EFBFBD>ͷֶ<CDB7>ֵ
#define CALIBRATION_PROTECT_VALUE ((float)0.9*R400Q2) //<2F><><EFBFBD><EFBFBD>У׼<D0A3><D7BC><EFBFBD><EFBFBD>С<EFBFBD><D0A1>0.9<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define TOF_AM_VALUE 190
#define TOF_UP_AM_0_8 (0.8*TOF_AM_VALUE)//up<75><70><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ0.8<EFBFBD><EFBFBD>
#define TOF_DOWN_AM_0_8 (0.8*TOF_AM_VALUE)//down<77><6E><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ0.8<EFBFBD><EFBFBD>
#define Q1_0_8 (float)12.8//0.8<EFBFBD><EFBFBD><EFBFBD><EFBFBD>R250<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD>ֵ
#define TOF_UP_DATA (float)60160.65//20<32><30><EFBFBD><EFBFBD>UP<55><50><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>ns
#define LEGENTH_SPEED_SOUND (float)89173.591031//<2F><>·<EFBFBD><C2B7><EFBFBD><EFBFBD>=1482.257772*TOF_UP_DATA <20><>λum
#define LEGENTH_SPEED_SOUND_DAOSHU (float)5.6070412e-9//<2F><>·<EFBFBD><C2B7><EFBFBD>ȵ<EFBFBD><C8B5><EFBFBD>
#define TOF_UP_DOWN_DAOSHUHE_LOW (float)0.03397054 //1/up + 1/down 35<33><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define TOF_UP_DOWN_DAOSHUHE_MIDDLE (float)0.03428789 //1/up + 1/down 35~45<34><35>
//<2F><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>
#define REAL_SOUND_PATH_LENGTH (float)62////
#define MEASYRING_TUBE_DIAMETER (float)12.5 //15<31><35>11.5, 20<32><30>12.5
#define FLOW_RATE_MULTIPLIER (float)8.064516e-9 // <20><><EFBFBD>ټ<EFBFBD><D9BC><EFBFBD><E3B3A3>= 1e-9/(2*(L<><4C>Ч))/0.001
#define FLOW_MULTIPLIER (float)441.7875 // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3B3A3>= (3.1416*D*D*1e-6/4 )*3600 *1000L/h 15<31>ھ<EFBFBD><DABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>103.86915 20<32>ھ<EFBFBD><DABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>122.71875
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//#define SUBSECTION_NUM_THREE 1
#define SUBSECTION_NUM_FOUR 1
//#define SUBSECTION_NUM_FIVE 1
#elif MID_DN20_BRASS_63KPA_GP30_32768
#define DEFAULT_START_FLOW 0x00B7 //DN20ͭ63KPAʱ<41><CAB1>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
#define FLOW_RATE_FILTER_COEFFICIENT (float)0.3//˲ʱ<CBB2><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define GP30_DIFTOF_FILTER_COEFFICIENT (FLOW_RATE_FILTER_COEFFICIENT*(float)2)//<2F><><EFBFBD><EFBFBD>̨<EFBFBD><CCA8>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define DIFTOF_COEFFICIENT (float)0.119770896//
#define R400Q1 (float)10
#define R400Q2 (float)16
#define R250Q2 (float)25
#define Q3_3_3 (float)1320
#define Q3_6_6 (float)2640
#define MIN_FLOW_0_6 0x80000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>50%
#define MAX_FLOW_1_02 0x14050000//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>102%
#define MIN_FLOW_0_3 0x40000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>25%
#define LIMIT_FLOW_1_5Q4 7500//1.5<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define LIMIT_DIFTOF_FORWARD 0x000347AE //-220~820nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define LIMIT_DIFTOF_REVERSE 0x8000E147 //-220~-820nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define SEGMENT_NUM_SMALL 16
#define SEGMENT_NUM_MIDDLE 23// ֮ǰ<D6AE><C7B0>40 <20>޸<EFBFBD>0816
#define SEGMENT_NUM_LARGE 155
#define SEGMENT_NUM_ERROR_MIDDLE 43 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4<EFBFBD>εĽ<CEB5>ģ
#define DXS_SEGMENT_NUM_LARGE 280 //<2F><><EFBFBD><EFBFBD>ʽ<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>ģ<EFBFBD>ͷֶ<CDB7>ֵ
//<2F><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>----------------<2D><>Ҫ<EFBFBD>޸<EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IJ<EFBFBD><C4B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>--------------------------------------------------------------------------------------
#define REAL_SOUND_PATH_LENGTH (float)59.95//(float)74.863 //L*cos <20><><EFBFBD><EFBFBD> D*cot<6F><74><EFBFBD><EFBFBD> D׼ȷ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2021-2-1<><31>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD>ߴ<EFBFBD> 2021-7-21 <20><><EFBFBD><EFBFBD>15<31><35>59.8<EFBFBD><EFBFBD>20<EFBFBD><EFBFBD>59.95
#define MEASYRING_TUBE_DIAMETER (float)13.6 //15<31><35>10.7, 20<32><30>13.6
#define FLOW_RATE_MULTIPLIER (float)8.3402836e-9//(float)6.6788667e-9 // <20><><EFBFBD>ټ<EFBFBD><D9BC><EFBFBD><E3B3A3>= 1e-9/(2*(L<><4C>Ч))/0.001
#define FLOW_MULTIPLIER (float)485.82 // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3B3A3>= (3.1416*D*D*1e-6/4 )*3600 *1000L/h //<2F><><EFBFBD><EFBFBD> PF 15:80.67 PF 20<32><30>134.95
#define CALIBRATION_PROTECT_VALUE ((float)0.9*R400Q1) //<2F><><EFBFBD><EFBFBD>У׼<D0A3><D7BC><EFBFBD><EFBFBD>С<EFBFBD><D0A1>0.9<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//#define SUBSECTION_NUM_THREE 1
#define SUBSECTION_NUM_FOUR 1
//#define SUBSECTION_NUM_FIVE 1
#elif EN_DN20_BRASS_63KPA_GP30_32768
#define DEFAULT_START_FLOW 0x00B7 //DN20ͭ63KPAʱ<41><CAB1>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
#define FLOW_RATE_FILTER_COEFFICIENT (float)0.3//˲ʱ<CBB2><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define GP30_DIFTOF_FILTER_COEFFICIENT ((float)FLOW_RATE_FILTER_COEFFICIENT*2)//<2F><><EFBFBD><EFBFBD>̨<EFBFBD><CCA8>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define DIFTOF_COEFFICIENT (float)0.119770896//
#define R400Q1 (float)10
#define R400Q2 (float)16
#define R250Q2 (float)25
#define Q3_3_3 (float)1320
#define Q3_6_6 (float)2640
#define MIN_FLOW_0_6 0x80000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>50%
#define MAX_FLOW_1_02 0x14050000//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>102%
#define MIN_FLOW_0_3 0x40000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>25%
#define LIMIT_FLOW_1_5Q4 7500//1.5<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define LIMIT_DIFTOF_FORWARD 0x000347AE //-220~820nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define LIMIT_DIFTOF_REVERSE 0x8000E147 //-220~-820nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define SEGMENT_NUM_SMALL 16
#define SEGMENT_NUM_MIDDLE 38// ֮ǰ<D6AE><C7B0>40 <20>޸<EFBFBD>0816
#define SEGMENT_NUM_LARGE 128
#define SEGMENT_NUM_ERROR_MIDDLE 43 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4<EFBFBD>εĽ<CEB5>ģ
#define DXS_SEGMENT_NUM_LARGE 280 //<2F><><EFBFBD><EFBFBD>ʽ<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>ģ<EFBFBD>ͷֶ<CDB7>ֵ
//<2F><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>----------------<2D><>Ҫ<EFBFBD>޸<EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IJ<EFBFBD><C4B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>--------------------------------------------------------------------------------------
#define REAL_SOUND_PATH_LENGTH (float)59.95//(float)74.863 //L*cos <20><><EFBFBD><EFBFBD> D*cot<6F><74><EFBFBD><EFBFBD> D׼ȷ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2021-2-1<><31>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD>ߴ<EFBFBD> 2021-7-21 <20><><EFBFBD><EFBFBD>15<31><35>59.8<EFBFBD><EFBFBD>20<EFBFBD><EFBFBD>59.95
#define MEASYRING_TUBE_DIAMETER (float)13.6 //15<31><35>10.7, 20<32><30>13.6
#define FLOW_RATE_MULTIPLIER (float)8.3402836e-9//(float)6.6788667e-9 // <20><><EFBFBD>ټ<EFBFBD><D9BC><EFBFBD><E3B3A3>= 1e-9/(2*(L<><4C>Ч))/0.001
#define FLOW_MULTIPLIER (float)485.82 // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3B3A3>= (3.1416*D*D*1e-6/4 )*3600 *1000L/h //<2F><><EFBFBD><EFBFBD> PF 15:80.67 PF 20<32><30>134.95
#define CALIBRATION_PROTECT_VALUE ((float)0.9*R400Q1) //<2F><><EFBFBD><EFBFBD>У׼<D0A3><D7BC><EFBFBD><EFBFBD>С<EFBFBD><D0A1>0.9<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//#define SUBSECTION_NUM_THREE 1
#define SUBSECTION_NUM_FOUR 1
//#define SUBSECTION_NUM_FIVE 1
#elif BM_DN20_BRASS_63KPA_GP30_32768
#define DEFAULT_START_FLOW 0x00B7 //DN20ͭ63KPAʱ<41><CAB1>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ 700ps
#define FLOW_RATE_FILTER_COEFFICIENT (float)0.3//˲ʱ<CBB2><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define GP30_DIFTOF_FILTER_COEFFICIENT (FLOW_RATE_FILTER_COEFFICIENT*(float)2)//<2F><><EFBFBD><EFBFBD>̨<EFBFBD><CCA8>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define DIFTOF_COEFFICIENT (float)0.114827154
#define R400Q1 (float)10
#define R400Q2 (float)16
#define R250Q2 (float)25
#define Q3_3_3 (float)1320
#define Q3_6_6 (float)2640
#define MIN_FLOW_0_6 0x80000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>50%
#define MAX_FLOW_1_02 0x14050000//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>102%
#define MIN_FLOW_0_3 0x40000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>25%
#define LIMIT_FLOW_1_5Q4 7500//1.5<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define LIMIT_DIFTOF_FORWARD 0x000347AE //-220~820nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define LIMIT_DIFTOF_REVERSE 0x8000E147 //-220~-820nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define SEGMENT_NUM_SMALL 14
#define SEGMENT_NUM_MIDDLE 40
#define SEGMENT_NUM_LARGE 160
#define DXS_SEGMENT_NUM_LARGE 280 //<2F><><EFBFBD><EFBFBD>ʽ<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>ģ<EFBFBD>ͷֶ<CDB7>ֵ
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//#define SUBSECTION_NUM_THREE 1
#define SUBSECTION_NUM_FOUR 1
//#define SUBSECTION_NUM_FIVE 1
#define CALIBRATION_PROTECT_VALUE ((float)0.9*R400Q1) //<2F><><EFBFBD><EFBFBD>У׼<D0A3><D7BC><EFBFBD><EFBFBD>С<EFBFBD><D0A1>0.9<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//20211205
#elif PF_DN20_BRASS_63KPA_GP30_32768
#define DEFAULT_START_FLOW 0x00B7 //DN20ͭ63KPAʱ<41><CAB1>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
#define FLOW_RATE_FILTER_COEFFICIENT (float)0.3//˲ʱ<CBB2><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define GP30_DIFTOF_FILTER_COEFFICIENT (FLOW_RATE_FILTER_COEFFICIENT*(float)2)//<2F><><EFBFBD><EFBFBD>̨<EFBFBD><CCA8>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define DIFTOF_COEFFICIENT (float)0.119770896//
#define R400Q1 (float)10
#define R400Q2 (float)16
#define R250Q2 (float)25
#define Q3_3_3 (float)1320
#define Q3_6_6 (float)2640
#define MIN_FLOW_0_6 0x80000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>50%
#define MAX_FLOW_1_02 0x14050000//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>102%
#define MIN_FLOW_0_3 0x40000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>25%
#define LIMIT_FLOW_1_5Q4 7500//1.5<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define LIMIT_DIFTOF_FORWARD 0x000347AE //-220~820nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define LIMIT_DIFTOF_REVERSE 0x8000E147 //-220~-820nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define SEGMENT_NUM_SMALL 16
#define SEGMENT_NUM_MIDDLE 23// ֮ǰ<D6AE><C7B0>40 <20>޸<EFBFBD>0816
#define SEGMENT_NUM_LARGE 155
#define SEGMENT_NUM_ERROR_MIDDLE 43 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4<EFBFBD>εĽ<CEB5>ģ
#define DXS_SEGMENT_NUM_LARGE 280 //<2F><><EFBFBD><EFBFBD>ʽ<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>ģ<EFBFBD>ͷֶ<CDB7>ֵ
//<2F><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>----------------<2D><>Ҫ<EFBFBD>޸<EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IJ<EFBFBD><C4B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>--------------------------------------------------------------------------------------
#define REAL_SOUND_PATH_LENGTH (float)59.95//(float)74.863 //L*cos <20><><EFBFBD><EFBFBD> D*cot<6F><74><EFBFBD><EFBFBD> D׼ȷ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2021-2-1<><31>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD>ߴ<EFBFBD> 2021-7-21 <20><><EFBFBD><EFBFBD>15<31><35>59.8<EFBFBD><EFBFBD>20<EFBFBD><EFBFBD>59.95
#define MEASYRING_TUBE_DIAMETER (float)13.6 //15<31><35>10.7, 20<32><30>13.6
#define FLOW_RATE_MULTIPLIER (float)8.3402836e-9//(float)6.6788667e-9 // <20><><EFBFBD>ټ<EFBFBD><D9BC><EFBFBD><E3B3A3>= 1e-9/(2*(L<><4C>Ч))/0.001
#define FLOW_MULTIPLIER (float)485.82 // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3B3A3>= (3.1416*D*D*1e-6/4 )*3600 *1000L/h //<2F><><EFBFBD><EFBFBD> PF 15:80.67 PF 20<32><30>134.95
#define CALIBRATION_PROTECT_VALUE ((float)0.9*R400Q1) //<2F><><EFBFBD><EFBFBD>У׼<D0A3><D7BC><EFBFBD><EFBFBD>С<EFBFBD><D0A1>0.9<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define FLOAT_BETWEEN_DATA_DIF_MAX (float)3.8//950nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˲<EFBFBD>ʱ<EFBFBD><CAB1>float<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ=850/250 <20>ٽ<EFBFBD>״̬<D7B4>л<EFBFBD><D0BB><EFBFBD><EFBFBD><EFBFBD>ֵ
#define FLOAT_SWITCH_STATE_THRESHOLD (float)3.4//850nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˲<EFBFBD>ʱ<EFBFBD><CAB1>float<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ=850/250 <20>ٽ<EFBFBD>״̬<D7B4>л<EFBFBD><D0BB><EFBFBD><EFBFBD><EFBFBD>ֵ
#define FLOAT_BETWEEN_DATA_DIF (float)2.2//550nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˲<EFBFBD>ʱ<EFBFBD><CAB1>float<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ=550/250 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֮<EFBFBD><D6AE><EFBFBD>IJ<EFBFBD>ֵ
#define FLOAT_LAST_DATA_MAX_THRESHOULD (float)1.4//350nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˲<EFBFBD>ʱ<EFBFBD><CAB1>float<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ=350/250 <20><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD><DDB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD>ֵ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD>Ǹ<EFBFBD><C7B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-350<35><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define FLOAT_LAST_DATA_MIN_THRESHOULD (float)1.84//460nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˲<EFBFBD>ʱ<EFBFBD><CAB1>float<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ=460/250 <20><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD><DDB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD>ֵ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD>Ǹ<EFBFBD><C7B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-460<36><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define FLOAT_SWITCH_STATE_CURRENT_THRESHOLD (float)0.64//160nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˲<EFBFBD>ʱ<EFBFBD><CAB1>float<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ=160/250 <20>ٽ<EFBFBD>״̬<D7B4><CCAC>ǰ<EFBFBD><C7B0><EFBFBD>ݵ<EFBFBD><DDB5><EFBFBD><EFBFBD><EFBFBD>ֵ
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//#define SUBSECTION_NUM_THREE 1
#define SUBSECTION_NUM_FOUR 1
//#define SUBSECTION_NUM_FIVE 1
#elif BM_DN25_BRASS_63KPA_GP30_32768
#define DEFAULT_START_FLOW 0xEC //DN25ͭ63KPAʱ<41><CAB1>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ 900ps
#define FLOW_RATE_FILTER_COEFFICIENT (float)0.3//˲ʱ<CBB2><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define GP30_DIFTOF_FILTER_COEFFICIENT (FLOW_RATE_FILTER_COEFFICIENT*(float)2)//<2F><><EFBFBD><EFBFBD>̨<EFBFBD><CCA8>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define DIFTOF_COEFFICIENT (float)0.123358832 //25L/h<><68>Ӧ<EFBFBD><D3A6>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD>ֵ
#define R400Q1 (float)16
#define R400Q2 (float)25
#define R250Q2 (float)40
#define Q3_3_3 (float)2079
#define Q3_6_6 (float)4158
#define MIN_FLOW_0_6 0xF0000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>50%
#define MAX_FLOW_1_02 0x1F600000//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>102%
#define MIN_FLOW_0_3 0x60000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>25%
#define LIMIT_FLOW_1_5Q4 11700//1.5<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define LIMIT_DIFTOF_FORWARD 0x00039999 //-100~900nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define LIMIT_DIFTOF_REVERSE 0x80006666 //-100~900nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define SEGMENT_NUM_SMALL 22
#define SEGMENT_NUM_MIDDLE 60
#define SEGMENT_NUM_LARGE 320
#define DXS_SEGMENT_NUM_LARGE 280 //<2F><><EFBFBD><EFBFBD>ʽ<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>ģ<EFBFBD>ͷֶ<CDB7>ֵ
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//#define SUBSECTION_NUM_THREE 1
#define SUBSECTION_NUM_FOUR 1
//#define SUBSECTION_NUM_FIVE 1
#define CALIBRATION_PROTECT_VALUE ((float)0.9*R400Q1) //<2F><><EFBFBD><EFBFBD>У׼<D0A3><D7BC><EFBFBD><EFBFBD>С<EFBFBD><D0A1>0.9<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#elif DN25_BRASS_40KPA_GP30_32768 || LLGS_DN25_BRASS_40KPA_GP30_32768
#define DEFAULT_START_FLOW 0xEC //DN25ͭ63KPAʱ<41><CAB1>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ 900ps
#define FLOW_RATE_FILTER_COEFFICIENT (float)0.3//˲ʱ<CBB2><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define GP30_DIFTOF_FILTER_COEFFICIENT (FLOW_RATE_FILTER_COEFFICIENT*(float)2)//<2F><><EFBFBD><EFBFBD>̨<EFBFBD><CCA8>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define DIFTOF_COEFFICIENT (float)0.123358832 //25L/h<><68>Ӧ<EFBFBD><D3A6>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD>ֵ
#define R400Q1 (float)16
#define R400Q2 (float)25
#define R250Q2 (float)40
#define Q3_3_3 (float)2079
#define Q3_6_6 (float)4158
#define MIN_FLOW_0_6 0xF0000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>50%
#define MAX_FLOW_1_02 0x1F600000//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>102%
#define MIN_FLOW_0_3 0x60000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>25%
#define LIMIT_FLOW_1_5Q4 11700//1.5<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define LIMIT_DIFTOF_FORWARD 0x000347AE //-220~820nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define LIMIT_DIFTOF_REVERSE 0x8000E147 //-220~-820nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define SEGMENT_NUM_SMALL 35
#define SEGMENT_NUM_MIDDLE 50
#define SEGMENT_NUM_LARGE 320
#define DXS_SEGMENT_NUM_LARGE 280 //<2F><><EFBFBD><EFBFBD>ʽ<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>ģ<EFBFBD>ͷֶ<CDB7>ֵ
/*<2A><>Ҫ<EFBFBD>޸<EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IJ<EFBFBD><C4B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>20211105*/
#define SEGMENT_NUM_ERROR_MIDDLE 60
#define CALIBRATION_PROTECT_VALUE ((float)0.9*R400Q2) //<2F><><EFBFBD><EFBFBD>У׼<D0A3><D7BC><EFBFBD><EFBFBD>С<EFBFBD><D0A1>0.9<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define TOF_AM_VALUE 160//2022-09-17
#define TOF_UP_AM_0_8 (0.8*TOF_AM_VALUE)//up<75><70><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ0.8<EFBFBD><EFBFBD>
#define TOF_DOWN_AM_0_8 (0.8*TOF_AM_VALUE)//down<77><6E><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ0.8<EFBFBD><EFBFBD>
#define Q1_0_8 (float)20//0.8<EFBFBD><EFBFBD><EFBFBD><EFBFBD>R250<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD>ֵ
//<2F><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>----------------<2D><>Ҫ<EFBFBD>޸<EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IJ<EFBFBD><C4B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>--------------------------------------------------------------------------------------
#define REAL_SOUND_PATH_LENGTH (float)85//(float)74.863 //L*cos <20><><EFBFBD><EFBFBD> D*cot<6F><74><EFBFBD><EFBFBD> D׼ȷ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2021-2-1<><31>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD>ߴ<EFBFBD> 2021-7-21 <20><><EFBFBD><EFBFBD>15<31><35>59.8<EFBFBD><EFBFBD>20<EFBFBD><EFBFBD>59.95
#define MEASYRING_TUBE_DIAMETER (float)17 //15<31><35>10.7, 20<32><30>13.6
#define FLOW_RATE_MULTIPLIER (float)5.8823529e-9//(float)6.6788667e-9 // <20><><EFBFBD>ټ<EFBFBD><D9BC><EFBFBD><E3B3A3>= 1e-9/(2*(L<><4C>Ч))/0.001
#define FLOW_MULTIPLIER (float)826.7796 // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3B3A3>= (3.1416*D*D*1e-6/4 )*3600 *1000L/h //<2F><><EFBFBD><EFBFBD> 15:93.3307 20<32><30>146.631 25 229.661mm2
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//#define SUBSECTION_NUM_THREE 1
#define SUBSECTION_NUM_FOUR 1
//#define SUBSECTION_NUM_FIVE 1
#elif MID_DN25_BRASS_63KPA_GP30_32768
#define DEFAULT_START_FLOW 0x106 //DN25ͭ63KPAʱ<41><CAB1>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
#define FLOW_RATE_FILTER_COEFFICIENT (float)0.3//˲ʱ<CBB2><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define GP30_DIFTOF_FILTER_COEFFICIENT (FLOW_RATE_FILTER_COEFFICIENT*(float)2)//<2F><><EFBFBD><EFBFBD>̨<EFBFBD><CCA8>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define DIFTOF_COEFFICIENT (float)0.125176377 //40L/h<><68>Ӧ<EFBFBD><D3A6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ4.862376622
#define R400Q1 (float)16
#define R400Q2 (float)25
#define R250Q2 (float)40
#define Q3_3_3 (float)2079
#define Q3_6_6 (float)4158
#define MIN_FLOW_0_6 0xF0000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>50%
#define MAX_FLOW_1_02 0x1F600000//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>102%
#define MIN_FLOW_0_3 0x60000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>25%
#define LIMIT_FLOW_1_5Q4 11700//1.5<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define LIMIT_DIFTOF_FORWARD 0x00039999 //-100~900nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define LIMIT_DIFTOF_REVERSE 0x80006666 //-100~900nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define SEGMENT_NUM_SMALL 23////////???
#define SEGMENT_NUM_MIDDLE 45////////???
#define SEGMENT_NUM_LARGE 530
#define DXS_SEGMENT_NUM_LARGE 280 //<2F><><EFBFBD><EFBFBD>ʽ<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>ģ<EFBFBD>ͷֶ<CDB7>ֵ
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//#define SUBSECTION_NUM_THREE 1
#define SUBSECTION_NUM_FOUR 1
//#define SUBSECTION_NUM_FIVE 1
#define CALIBRATION_PROTECT_VALUE ((float)0.9*R400Q1) //<2F><><EFBFBD><EFBFBD>У׼<D0A3><D7BC><EFBFBD><EFBFBD>С<EFBFBD><D0A1>0.9<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//20211205
#elif PF_DN25_BRASS_63KPA_GP30_32768
#define DEFAULT_START_FLOW 0xEC //DN25ͭ63KPAʱ<41><CAB1>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ 900ps
#define FLOW_RATE_FILTER_COEFFICIENT (float)0.3//˲ʱ<CBB2><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define GP30_DIFTOF_FILTER_COEFFICIENT (FLOW_RATE_FILTER_COEFFICIENT*(float)2)//<2F><><EFBFBD><EFBFBD>̨<EFBFBD><CCA8>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>ϵ<EFBFBD><CFB5>
#define DIFTOF_COEFFICIENT (float)0.123358832 //25L/h<><68>Ӧ<EFBFBD><D3A6>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD>ֵ
#define R400Q1 (float)16
#define R400Q2 (float)25
#define R250Q2 (float)40
#define Q3_3_3 (float)2079
#define Q3_6_6 (float)4158
#define MIN_FLOW_0_6 0xF0000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>50%
#define MAX_FLOW_1_02 0x1F600000//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>102%
#define MIN_FLOW_0_3 0x60000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>25%
#define LIMIT_FLOW_1_5Q4 11700//1.5<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define LIMIT_DIFTOF_FORWARD 0x000347AE //-220~820nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define LIMIT_DIFTOF_REVERSE 0x8000E147 //-220~-820nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define SEGMENT_NUM_SMALL 35
#define SEGMENT_NUM_MIDDLE 50
#define SEGMENT_NUM_LARGE 320
#define DXS_SEGMENT_NUM_LARGE 280 //<2F><><EFBFBD><EFBFBD>ʽ<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>ģ<EFBFBD>ͷֶ<CDB7>ֵ
/*<2A><>Ҫ<EFBFBD>޸<EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IJ<EFBFBD><C4B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>20211105*/
#define SEGMENT_NUM_ERROR_MIDDLE 60////
//<2F><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>----------------------------<2D><>Ҫ<EFBFBD>޸IJ<DEB8><C4B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-------
#define REAL_SOUND_PATH_LENGTH (float)85//(float)74.863 //L*cos <20><><EFBFBD><EFBFBD> D*cot<6F><74><EFBFBD><EFBFBD> D׼ȷ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2021-2-1<><31>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD>ߴ<EFBFBD> 2021-7-21 <20><><EFBFBD><EFBFBD>15<31><35>59.8<EFBFBD><EFBFBD>20<EFBFBD><EFBFBD>59.95
#define MEASYRING_TUBE_DIAMETER (float)17 //15<31><35>10.7, 20<32><30>13.6
#define FLOW_RATE_MULTIPLIER (float)5.8823529e-9//(float)6.6788667e-9 // <20><><EFBFBD>ټ<EFBFBD><D9BC><EFBFBD><E3B3A3>= 1e-9/(2*(L<><4C>Ч))/0.001
#define FLOW_MULTIPLIER (float)826.7796 // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3B3A3>= (3.1416*D*D*1e-6/4 )*3600 *1000L/h //<2F><><EFBFBD><EFBFBD> 15:93.3307 20<32><30>146.631 25 229.661mm2
#define CALIBRATION_PROTECT_VALUE ((float)0.9*R400Q1) //<2F><><EFBFBD><EFBFBD>У׼<D0A3><D7BC><EFBFBD><EFBFBD>С<EFBFBD><D0A1>0.9<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define FLOAT_BETWEEN_DATA_DIF_MAX (float)3.8//950nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˲<EFBFBD>ʱ<EFBFBD><CAB1>float<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ=850/250 <20>ٽ<EFBFBD>״̬<D7B4>л<EFBFBD><D0BB><EFBFBD><EFBFBD><EFBFBD>ֵ
#define FLOAT_SWITCH_STATE_THRESHOLD (float)3.4//850nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˲<EFBFBD>ʱ<EFBFBD><CAB1>float<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ=850/250 <20>ٽ<EFBFBD>״̬<D7B4>л<EFBFBD><D0BB><EFBFBD><EFBFBD><EFBFBD>ֵ
#define FLOAT_BETWEEN_DATA_DIF (float)2.2//550nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˲<EFBFBD>ʱ<EFBFBD><CAB1>float<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ=550/250 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֮<EFBFBD><D6AE><EFBFBD>IJ<EFBFBD>ֵ
#define FLOAT_LAST_DATA_MAX_THRESHOULD (float)1.4//350nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˲<EFBFBD>ʱ<EFBFBD><CAB1>float<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ=350/250 <20><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD><DDB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD>ֵ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD>Ǹ<EFBFBD><C7B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-350<35><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define FLOAT_LAST_DATA_MIN_THRESHOULD (float)1.84//460nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˲<EFBFBD>ʱ<EFBFBD><CAB1>float<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ=460/250 <20><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD><DDB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD>ֵ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD>Ǹ<EFBFBD><C7B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-460<36><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define FLOAT_SWITCH_STATE_CURRENT_THRESHOLD (float)0.64//160nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˲<EFBFBD>ʱ<EFBFBD><CAB1>float<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ=160/250 <20>ٽ<EFBFBD>״̬<D7B4><CCAC>ǰ<EFBFBD><C7B0><EFBFBD>ݵ<EFBFBD><DDB5><EFBFBD><EFBFBD><EFBFBD>ֵ
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//#define SUBSECTION_NUM_THREE 1
#define SUBSECTION_NUM_FOUR 1
//#define SUBSECTION_NUM_FIVE 1
#elif DN32_BRASS_63KPA_GP30_32768
#define DEFAULT_START_FLOW 0x0106
#define DIFTOF_COEFFICIENT (float)0.081530677//40L/h<><68>Ӧ<EFBFBD><D3A6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
#define R400Q1 (float)25
#define R400Q2 (float)40
#define R250Q2 (float)64
#define Q3_3_3 (float)3300
#define Q3_6_6 (float)6600
#define MIN_FLOW_0_6 0x140000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>50%
#define MAX_FLOW_1_02 0x31CE0000//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>102%
#define MIN_FLOW_0_3 0xA0000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>25%
#define LIMIT_FLOW_1_5Q4 18750//1.5<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define LIMIT_DIFTOF_FORWARD 0x0003AE14 //-80~920nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA> 2022-08-09<30><39><EFBFBD><EFBFBD>
#define LIMIT_DIFTOF_REVERSE 0x800051EB //-80~920nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define SEGMENT_NUM_SMALL 50
#define SEGMENT_NUM_MIDDLE 120
#define SEGMENT_NUM_LARGE 520
/*<2A><>Ҫ<EFBFBD>޸<EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IJ<EFBFBD><C4B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>20211105*/
#define SEGMENT_NUM_ERROR_MIDDLE 130 //<2F><><EFBFBD><EFBFBD>ֵ
#define DXS_SEGMENT_NUM_LARGE 280 //<2F><><EFBFBD><EFBFBD>ʽ<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>ģ<EFBFBD>ͷֶ<CDB7>ֵ
//<2F><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>----------------------------<2D><>Ҫ<EFBFBD>޸IJ<DEB8><C4B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-------
#define REAL_SOUND_PATH_LENGTH (float)85//(float)74.863 //L*cos <20><><EFBFBD><EFBFBD> D*cot<6F><74><EFBFBD><EFBFBD> D׼ȷ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2021-2-1<><31>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD>ߴ<EFBFBD> 2021-7-21 <20><><EFBFBD><EFBFBD>15<31><35>59.8<EFBFBD><EFBFBD>20<EFBFBD><EFBFBD>59.95
#define MEASYRING_TUBE_DIAMETER (float)21 //15<31><35>10.7, 20<32><30>13.6
#define FLOW_RATE_MULTIPLIER (float)5.8823529e-9//(float)6.6788667e-9 // <20><><EFBFBD>ټ<EFBFBD><D9BC><EFBFBD><E3B3A3>= 1e-9/(2*(L<><4C>Ч))/0.001
#define FLOW_MULTIPLIER (float)1252.1376 // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3B3A3>= (3.1416*D*D*1e-6/4 )*3600 *1000L/h //<2F><><EFBFBD><EFBFBD> 15:93.3307 20<32><30>146.631
#define CALIBRATION_PROTECT_VALUE ((float)0.9*R400Q1) //<2F><><EFBFBD><EFBFBD>У׼<D0A3><D7BC><EFBFBD><EFBFBD>С<EFBFBD><D0A1>0.9<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define TOF_AM_VALUE 190
#define TOF_UP_AM_0_8 (0.8*TOF_AM_VALUE)//up<75><70><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ0.8<EFBFBD><EFBFBD>
#define TOF_DOWN_AM_0_8 (0.8*TOF_AM_VALUE)//down<77><6E><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ0.8<EFBFBD><EFBFBD>
#define Q1_0_8 (float)20//0.8<EFBFBD><EFBFBD><EFBFBD><EFBFBD>R400<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD>ֵ
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//#define SUBSECTION_NUM_THREE 1
#define SUBSECTION_NUM_FOUR 1
//#define SUBSECTION_NUM_FIVE 1
#elif BM_DN32_BRASS_63KPA_GP30_32768
#define DEFAULT_START_FLOW 0x0106
#define DIFTOF_COEFFICIENT (float)0.081530677//40L/h<><68>Ӧ<EFBFBD><D3A6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
#define R400Q1 (float)25
#define R400Q2 (float)40
#define R250Q2 (float)64
#define Q3_3_3 (float)3300
#define Q3_6_6 (float)6600
#define MIN_FLOW_0_6 0x140000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>50%
#define MAX_FLOW_1_02 0x31CE0000//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>102%
#define MIN_FLOW_0_3 0xA0000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>25%
#define LIMIT_FLOW_1_5Q4 18750//1.5<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define LIMIT_DIFTOF_FORWARD 0x00039999 //-100~900nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define LIMIT_DIFTOF_REVERSE 0x80006666 //-100~900nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define SEGMENT_NUM_SMALL 55//<2F>ֶζ<D6B6><CEB6><EFBFBD>һ<EFBFBD>²<EFBFBD><C2B2>Ե<EFBFBD>
#define SEGMENT_NUM_MIDDLE 80//<2F>ֶζ<D6B6><CEB6><EFBFBD>һ<EFBFBD>²<EFBFBD><C2B2>Ե<EFBFBD>
#define SEGMENT_NUM_LARGE 520
#define DXS_SEGMENT_NUM_LARGE 280 //<2F><><EFBFBD><EFBFBD>ʽ<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>ģ<EFBFBD>ͷֶ<CDB7>ֵ
#define CALIBRATION_PROTECT_VALUE ((float)0.9*R400Q1) //<2F><><EFBFBD><EFBFBD>У׼<D0A3><D7BC><EFBFBD><EFBFBD>С<EFBFBD><D0A1>0.9<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define TOF_AM_VALUE 190
#define TOF_UP_AM_0_8 (0.8*TOF_AM_VALUE)//up<75><70><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ0.8<EFBFBD><EFBFBD>
#define TOF_DOWN_AM_0_8 (0.8*TOF_AM_VALUE)//down<77><6E><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ0.8<EFBFBD><EFBFBD>
#define Q1_0_8 (float)20//0.8<EFBFBD><EFBFBD><EFBFBD><EFBFBD>R400<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD>ֵ
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//#define SUBSECTION_NUM_THREE 1
#define SUBSECTION_NUM_FOUR 1
//#define SUBSECTION_NUM_FIVE 1
//20211205
#elif PF_DN32_BRASS_63KPA_GP30_32768
#define DEFAULT_START_FLOW 0x106
#define DIFTOF_COEFFICIENT (float)0.081530677//40L/h<><68>Ӧ<EFBFBD><D3A6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
#define R400Q1 (float)25
#define R400Q2 (float)40
#define R250Q2 (float)64
#define Q3_3_3 (float)3300
#define Q3_6_6 (float)6600
#define MIN_FLOW_0_6 0x140000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>50%
#define MAX_FLOW_1_02 0x31CE0000//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>102%
#define MIN_FLOW_0_3 0xA0000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>25%
#define LIMIT_FLOW_1_5Q4 18750//1.5<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define LIMIT_DIFTOF_FORWARD 0x000347AE //-220~820nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define LIMIT_DIFTOF_REVERSE 0x8000E147 //-220~-820nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define SEGMENT_NUM_SMALL 50
#define SEGMENT_NUM_MIDDLE 75
#define SEGMENT_NUM_LARGE 520
#define DXS_SEGMENT_NUM_LARGE 280 //<2F><><EFBFBD><EFBFBD>ʽ<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>ģ<EFBFBD>ͷֶ<CDB7>ֵ
/*<2A><>Ҫ<EFBFBD>޸<EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IJ<EFBFBD><C4B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>20211105*/
#define SEGMENT_NUM_ERROR_MIDDLE 120 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4<EFBFBD>εĽ<CEB5>ģ
//<2F><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>----------------------------<2D><>Ҫ<EFBFBD>޸IJ<DEB8><C4B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-------
#define REAL_SOUND_PATH_LENGTH (float)85//(float)74.863 //L*cos <20><><EFBFBD><EFBFBD> D*cot<6F><74><EFBFBD><EFBFBD> D׼ȷ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2021-2-1<><31>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD>ߴ<EFBFBD> 2021-7-21 <20><><EFBFBD><EFBFBD>15<31><35>59.8<EFBFBD><EFBFBD>20<EFBFBD><EFBFBD>59.95
#define MEASYRING_TUBE_DIAMETER (float)21 //15<31><35>10.7, 20<32><30>13.6
#define FLOW_RATE_MULTIPLIER (float)5.8823529e-9//(float)6.6788667e-9 // <20><><EFBFBD>ټ<EFBFBD><D9BC><EFBFBD><E3B3A3>= 1e-9/(2*(L<><4C>Ч))/0.001
#define FLOW_MULTIPLIER (float)1252.1376 // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3B3A3>= (3.1416*D*D*1e-6/4 )*3600 *1000L/h //<2F><><EFBFBD><EFBFBD> 15:93.3307 20<32><30>146.631
#define CALIBRATION_PROTECT_VALUE ((float)0.9*R400Q1) //<2F><><EFBFBD><EFBFBD>У׼<D0A3><D7BC><EFBFBD><EFBFBD>С<EFBFBD><D0A1>0.9<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define FLOAT_BETWEEN_DATA_DIF_MAX (float)3.8//950nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˲<EFBFBD>ʱ<EFBFBD><CAB1>float<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ=850/250 <20>ٽ<EFBFBD>״̬<D7B4>л<EFBFBD><D0BB><EFBFBD><EFBFBD><EFBFBD>ֵ
#define FLOAT_SWITCH_STATE_THRESHOLD (float)3.4//850nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˲<EFBFBD>ʱ<EFBFBD><CAB1>float<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ=850/250 <20>ٽ<EFBFBD>״̬<D7B4>л<EFBFBD><D0BB><EFBFBD><EFBFBD><EFBFBD>ֵ
#define FLOAT_BETWEEN_DATA_DIF (float)2.2//550nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˲<EFBFBD>ʱ<EFBFBD><CAB1>float<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ=550/250 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֮<EFBFBD><D6AE><EFBFBD>IJ<EFBFBD>ֵ
#define FLOAT_LAST_DATA_MAX_THRESHOULD (float)1.4//350nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˲<EFBFBD>ʱ<EFBFBD><CAB1>float<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ=350/250 <20><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD><DDB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD>ֵ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD>Ǹ<EFBFBD><C7B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-350<35><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define FLOAT_LAST_DATA_MIN_THRESHOULD (float)1.84//460nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˲<EFBFBD>ʱ<EFBFBD><CAB1>float<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ=460/250 <20><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD><DDB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD>ֵ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD>Ǹ<EFBFBD><C7B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-460<36><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define FLOAT_SWITCH_STATE_CURRENT_THRESHOLD (float)0.64//160nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˲<EFBFBD>ʱ<EFBFBD><CAB1>float<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ=160/250 <20>ٽ<EFBFBD>״̬<D7B4><CCAC>ǰ<EFBFBD><C7B0><EFBFBD>ݵ<EFBFBD><DDB5><EFBFBD><EFBFBD><EFBFBD>ֵ
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//#define SUBSECTION_NUM_THREE 1
#define SUBSECTION_NUM_FOUR 1
//#define SUBSECTION_NUM_FIVE 1
#elif DN40_BRASS_63KPA_GP30_32768
#define DEFAULT_START_FLOW 0x00D2 //800ps
#define DIFTOF_COEFFICIENT (float)0.042673614 //64 L/h<><68>Ӧ<EFBFBD><D3A6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
#define R400Q1 (float)40
#define R400Q2 (float)64
#define R250Q2 (float)102
#define Q3_3_3 (float)5280
#define Q3_6_6 (float)10560
#define MIN_FLOW_0_6 0x200000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>50%
#define MAX_FLOW_1_02 0x4FB00000//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>102%
#define MIN_FLOW_0_3 0x100000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>25%
#define LIMIT_FLOW_1_5Q4 30000//1.5<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define LIMIT_DIFTOF_FORWARD 0x0003AE14 //-80~920nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define LIMIT_DIFTOF_REVERSE 0x800051EB //-80~920nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define SEGMENT_NUM_SMALL 76
#define SEGMENT_NUM_MIDDLE 530//
#define SEGMENT_NUM_LARGE 2700
#define DXS_SEGMENT_NUM_LARGE 280 //<2F><><EFBFBD><EFBFBD>ʽ<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>ģ<EFBFBD>ͷֶ<CDB7>ֵ
/*<2A><>Ҫ<EFBFBD>޸<EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IJ<EFBFBD><C4B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>20211105*/
#define SEGMENT_NUM_ERROR_MIDDLE 550 ////<2F><><EFBFBD><EFBFBD>ֵû<D6B5><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>----------------------------<2D><>Ҫ<EFBFBD>޸IJ<DEB8><C4B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-------
#define REAL_SOUND_PATH_LENGTH (float)85//(float)74.863 //L*cos <20><><EFBFBD><EFBFBD> D*cot<6F><74><EFBFBD><EFBFBD> D׼ȷ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2021-2-1<><31>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD>ߴ<EFBFBD> 2021-7-21 <20><><EFBFBD><EFBFBD>15<31><35>59.8<EFBFBD><EFBFBD>20<EFBFBD><EFBFBD>59.95
#define MEASYRING_TUBE_DIAMETER (float)26 //15<31><35>10.7, 20<32><30>13.6
#define FLOW_RATE_MULTIPLIER (float)5.8823529e-9//(float)6.6788667e-9 // <20><><EFBFBD>ټ<EFBFBD><D9BC><EFBFBD><E3B3A3>= 1e-9/(2*(L<><4C>Ч))/0.001
#define FLOW_MULTIPLIER (float)1935.0432 // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3B3A3>= (3.1416*D*D*1e-6/4 )*3600 *1000L/h //<2F><><EFBFBD><EFBFBD> 15:93.3307 20<32><30>146.631
#define CALIBRATION_PROTECT_VALUE ((float)0.9*R400Q1) //<2F><><EFBFBD><EFBFBD>У׼<D0A3><D7BC><EFBFBD><EFBFBD>С<EFBFBD><D0A1>0.9<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define TOF_AM_VALUE 250
#define TOF_UP_AM_0_8 (0.8*TOF_AM_VALUE)//up<75><70><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ0.8<EFBFBD><EFBFBD>
#define TOF_DOWN_AM_0_8 (0.8*TOF_AM_VALUE)//down<77><6E><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ0.8<EFBFBD><EFBFBD>
#define Q1_0_8 (float)32//0.8<EFBFBD><EFBFBD><EFBFBD><EFBFBD>R400<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD>ֵ
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//#define SUBSECTION_NUM_THREE 1
#define SUBSECTION_NUM_FOUR 1
//#define SUBSECTION_NUM_FIVE 1
#elif BM_DN40_BRASS_63KPA_GP30_32768
#define DEFAULT_START_FLOW 0x00D2 //800ps
#define DIFTOF_COEFFICIENT (float)0.042673614 //64 L/h<><68>Ӧ<EFBFBD><D3A6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
#define R400Q1 (float)40
#define R400Q2 (float)64
#define R250Q2 (float)102
#define Q3_3_3 (float)5280
#define Q3_6_6 (float)10560
#define MIN_FLOW_0_6 0x200000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>50%
#define MAX_FLOW_1_02 0x4FB00000//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>102%
#define MIN_FLOW_0_3 0x100000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>25%
#define LIMIT_FLOW_1_5Q4 30000//1.5<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define LIMIT_DIFTOF_FORWARD 0x00039999 //-100~900nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define LIMIT_DIFTOF_REVERSE 0x80006666 //-100~900nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define SEGMENT_NUM_SMALL 80
#define SEGMENT_NUM_MIDDLE 120 //100<30><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>107<30><37><EFBFBD><EFBFBD>102<30>ĵ<EFBFBD>Ҳ<EFBFBD><D2B2><EFBFBD><EFBFBD>ȥ
#define SEGMENT_NUM_LARGE 2600
#define DXS_SEGMENT_NUM_LARGE 280 //<2F><><EFBFBD><EFBFBD>ʽ<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>ģ<EFBFBD>ͷֶ<CDB7>ֵ
#define CALIBRATION_PROTECT_VALUE ((float)0.9*R400Q1) //<2F><><EFBFBD><EFBFBD>У׼<D0A3><D7BC><EFBFBD><EFBFBD>С<EFBFBD><D0A1>0.9<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define TOF_AM_VALUE 250
#define TOF_UP_AM_0_8 (0.8*TOF_AM_VALUE)//up<75><70><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ0.8<EFBFBD><EFBFBD>
#define TOF_DOWN_AM_0_8 (0.8*TOF_AM_VALUE)//down<77><6E><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ0.8<EFBFBD><EFBFBD>
#define Q1_0_8 (float)32//0.8<EFBFBD><EFBFBD><EFBFBD><EFBFBD>R400<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD>ֵ
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//#define SUBSECTION_NUM_THREE 1
#define SUBSECTION_NUM_FOUR 1
//#define SUBSECTION_NUM_FIVE 1
//20211205
#elif PF_DN40_BRASS_63KPA_GP30_32768
#define DEFAULT_START_FLOW 0xD2 //800ps
#define DIFTOF_COEFFICIENT (float)0.042673614 //64 L/h<><68>Ӧ<EFBFBD><D3A6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
#define R400Q1 (float)40
#define R400Q2 (float)64
#define R250Q2 (float)102
#define Q3_3_3 (float)5280
#define Q3_6_6 (float)10560
#define MIN_FLOW_0_6 0x200000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>50%
#define MAX_FLOW_1_02 0x4FB00000//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>102%
#define MIN_FLOW_0_3 0x100000//<2F><>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>25%
#define LIMIT_FLOW_1_5Q4 30000//1.5<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define LIMIT_DIFTOF_FORWARD 0x000347AE //-220~820nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define LIMIT_DIFTOF_REVERSE 0x8000E147 //-220~-820nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define SEGMENT_NUM_SMALL 76
#define SEGMENT_NUM_MIDDLE 530//
#define SEGMENT_NUM_LARGE 2700
#define DXS_SEGMENT_NUM_LARGE 280 //<2F><><EFBFBD><EFBFBD>ʽ<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>ģ<EFBFBD>ͷֶ<CDB7>ֵ
/*<2A><>Ҫ<EFBFBD>޸<EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IJ<EFBFBD><C4B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>20211105*/
#define SEGMENT_NUM_ERROR_MIDDLE 550 ////<2F><><EFBFBD><EFBFBD>ֵû<D6B5><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>----------------------------<2D><>Ҫ<EFBFBD>޸IJ<DEB8><C4B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-------
#define REAL_SOUND_PATH_LENGTH (float)85//(float)74.863 //L*cos <20><><EFBFBD><EFBFBD> D*cot<6F><74><EFBFBD><EFBFBD> D׼ȷ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2021-2-1<><31>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD>ߴ<EFBFBD> 2021-7-21 <20><><EFBFBD><EFBFBD>15<31><35>59.8<EFBFBD><EFBFBD>20<EFBFBD><EFBFBD>59.95
#define MEASYRING_TUBE_DIAMETER (float)26 //15<31><35>10.7, 20<32><30>13.6
#define FLOW_RATE_MULTIPLIER (float)5.8823529e-9//(float)6.6788667e-9 // <20><><EFBFBD>ټ<EFBFBD><D9BC><EFBFBD><E3B3A3>= 1e-9/(2*(L<><4C>Ч))/0.001
#define FLOW_MULTIPLIER (float)1935.0432 // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3B3A3>= (3.1416*D*D*1e-6/4 )*3600 *1000L/h //<2F><><EFBFBD><EFBFBD> 15:93.3307 20<32><30>146.631
#define CALIBRATION_PROTECT_VALUE ((float)0.9*R400Q1) //<2F><><EFBFBD><EFBFBD>У׼<D0A3><D7BC><EFBFBD><EFBFBD>С<EFBFBD><D0A1>0.9<EFBFBD><EFBFBD>Q1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define FLOAT_BETWEEN_DATA_DIF_MAX (float)3.8//950nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˲<EFBFBD>ʱ<EFBFBD><CAB1>float<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ=850/250 <20>ٽ<EFBFBD>״̬<D7B4>л<EFBFBD><D0BB><EFBFBD><EFBFBD><EFBFBD>ֵ
#define FLOAT_SWITCH_STATE_THRESHOLD (float)3.4//850nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˲<EFBFBD>ʱ<EFBFBD><CAB1>float<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ=850/250 <20>ٽ<EFBFBD>״̬<D7B4>л<EFBFBD><D0BB><EFBFBD><EFBFBD><EFBFBD>ֵ
#define FLOAT_BETWEEN_DATA_DIF (float)2.2//550nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˲<EFBFBD>ʱ<EFBFBD><CAB1>float<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ=550/250 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֮<EFBFBD><D6AE><EFBFBD>IJ<EFBFBD>ֵ
#define FLOAT_LAST_DATA_MAX_THRESHOULD (float)1.4//350nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˲<EFBFBD>ʱ<EFBFBD><CAB1>float<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ=350/250 <20><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD><DDB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD>ֵ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD>Ǹ<EFBFBD><C7B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-350<35><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define FLOAT_LAST_DATA_MIN_THRESHOULD (float)1.84//460nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˲<EFBFBD>ʱ<EFBFBD><CAB1>float<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ=460/250 <20><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD><DDB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD>ֵ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD>Ǹ<EFBFBD><C7B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-460<36><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define FLOAT_SWITCH_STATE_CURRENT_THRESHOLD (float)0.64//160nsʱ<73><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˲<EFBFBD>ʱ<EFBFBD><CAB1>float<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ=160/250 <20>ٽ<EFBFBD>״̬<D7B4><CCAC>ǰ<EFBFBD><C7B0><EFBFBD>ݵ<EFBFBD><DDB5><EFBFBD><EFBFBD><EFBFBD>ֵ
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//#define SUBSECTION_NUM_THREE 1
#define SUBSECTION_NUM_FOUR 1
//#define SUBSECTION_NUM_FIVE 1
#endif
#define MIN_START_FLOW 0x1A //100ps <20><>Ӧ<EFBFBD><D3A6>Gp30<33><30>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0.1/250*65536
#define MAX_START_FLOW 0x189 //1500ps <20><>Ӧ<EFBFBD><D3A6>Gp30<33><30>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1.5/250*65536
#define MIN_FLOW_TO_PS 0x64 //100ps <20><>Ӧ<EFBFBD><D3A6>ʮ<EFBFBD><CAAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define MAX_FLOW_TO_PS 0x05DC //1500ps <20><>Ӧ<EFBFBD><D3A6>ʮ<EFBFBD><CAAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//#define RESET_LIMIT_DATE 200 //<2F><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD>޶<EFBFBD>ֵ<EFBFBD><D6B5>DN15 250 ,DN20 400, DN25 500, DN32 1000, DN40 1200<30><30>
//<2F><>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD>
/*************************<2A><EFBFBD><EAB6A8>****************************/
#define GP22_APP_S0 0
#define GP22_APP_S1 1
#define GP22_APP_S2 2
#define GP22_APP_S3 3
#define GP22_APP_S10 4
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define GP22_APP_FLOW 01 //GP22ֻ<32><D6BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define GP22_APP_FLOW_TEMP 10 //GP22<32><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>+<2B>¶ȡ<C2B6>
//<2F>˲<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ű<EFBFBD>־
#define GP22_APP_DIFTOF_POST 01 //<2F>˲<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
#define GP22_APP_DIFTOF_NEGT 10 //<2F>˲<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
//<2F><><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5>
#define GP22_SAMPLE_2HZ 1 //2Hz
#define GP22_SAMPLE_1HZ 2 //1Hz
#define GP22_SAMPLE_0_5HZ 4 //0.5Hz
//<2F>춨״̬<D7B4>£<EFBFBD><C2A3>ۻ<EFBFBD><DBBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><CFB5>
#define FACTOR_0_5 0.5
#define FACTOR_1 1
#define FACTOR_2 2
// 0<><30><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EEA3A8><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><31><CBB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>䡢2<E4A1A2><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1> 4<><34><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ŵ<EFBFBD>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>
#define GP22_APP_FLOW_DIFFER 0 //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EEA3A8><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>
#define GP22_APP_UP_TOF 1 //˳<><CBB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
#define GP22_APP_DOWN_TOF 2 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
#define GP22_APP_STAND_DIFFER 3 //ȱʡ
#define GP22_APP_FLOW_DIFFER_SIGN 4 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ŵ<EFBFBD>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>
//<2F>ӿڲ<D3BF>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define GP30_APP_INS_FLOW 1//˲ʱ<CBB2><CAB1><EFBFBD><EFBFBD>
#define GP30_APP_TOTAL_FLOW 2//<2F>ۼ<EFBFBD><DBBC><EFBFBD><EFBFBD><EFBFBD>
#define GP30_APP_TOTAL_FLOW_REVERSE 3//<2F>ۼ<EFBFBD><DBBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define GP30_APP_TOF 4//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>up
#define GP30_APP_RATIO_UP 5//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȱ<EFBFBD>up
#define GP30_APP_PEAK_UP 6//<2F><>ֵup
#define GP30_APP_DOWN 7//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>down
#define GP30_APP_RATIO_DOWN 8//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȱ<EFBFBD>DOWN
#define GP30_APP_PEAK_DOWN 9//<2F><>ֵDOWN
#define GP30_APP_DIFF 10//ʱ<><CAB1><EFBFBD><EFBFBD>
#define GP30_APP_INS_FLOW_LCD 12//<2F>춨״̬<D7B4><CCAC>˲ʱ<CBB2><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ
//#define GP30_APP_TOTAL_FLOW_REVERSE 13//<2F><><EFBFBD><EFBFBD><EFBFBD>ۼ<EFBFBD><DBBC><EFBFBD><EFBFBD><EFBFBD>
#define GP30_APP_TEMP 14//<2F><EFBFBD>
//<2F><>Լ<EFBFBD><D4BC><EFBFBD>ݵ<EFBFBD>MSG
#define GP30_APP_STILL_WATER_FRAME 4 //<2F><>ѯ<EFBFBD><D1AF>ˮʱ<CBAE><CAB1><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
#define GP30_APP_CLEAR_DATA_FRAME 1 //<2F><>GP30 ʵʱ<CAB5><CAB1><EFBFBD><EFBFBD>
//<2F><><EFBFBD><EFBFBD>
//#define GP30_APP_QUEUE_SIZE 12
//#define GP30_APP_START_FLOW_FILTER 0xD1 //DN15<31><35>DN20<32><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>900<30><30>700ps<70><73>3.77L<EFBFBD><EFBFBD>5 L<><4C><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD>800<30><30>600<30><30>3.3L<EFBFBD><EFBFBD>4.2<EFBFBD><EFBFBD>
//#define GP22_APP_START_FLOW_RESERVER 0x80000000|GP30_APP_START_FLOW_FILTER //<2F><><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>DN15<31><35>DN20<32><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>900<30><30>700ps<70><73>3.77L<EFBFBD><EFBFBD>5 L<><4C><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD>800<30><30>600<30><30>3.3L<EFBFBD><EFBFBD>4.2<EFBFBD><EFBFBD>
//#define GP30_APP_START_FLOW_FILTER_FOR_FLOAT (float)GP30_APP_START_FLOW_FILTER/(float)65536
#define MAX_TEMP_NUM 10//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><C2B6>˲<EFBFBD><CBB2><EFBFBD>BUFFER<45><52><EFBFBD><EFBFBD>ֵ
#define MAX_TOF_BUCHANG_NUM 150//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>У׼<D0A3><D7BC><EFBFBD>ݴ洢BUFFER----------<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>Ҫʵ<D2AA>ʻ<EFBFBD><CABB><EFBFBD>̨<EFBFBD>Ӳ<EFBFBD><D3B2><EFBFBD>
#define TOF_BUCHANG_IDLE 0//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><E4B2B9>---<2D><><EFBFBD><EFBFBD>״̬
#define TOF_BUCHANG_START_SAMPLE 1//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><E4B2B9>---<2D><><EFBFBD><EFBFBD>״̬
#define GP30_DIFTOF_FILTER_ENABLE_MAX_VALUE 0x1EB8//GP30ʱ<30><CAB1><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD><CBB2><EFBFBD><E3B7A8><EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>ֻ<EFBFBD><D6BB>С<EFBFBD><D0A1>30ns<6E><73>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>Ż<EFBFBD><C5BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD><C2B5>˲<EFBFBD><CBB2>
#define TOF_MAX_DIF_FOR_HUADONG 0x0000E147// 150ns<6E><73>Ӧ<EFBFBD><D3A6>GP30<33><30>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD>
#define TOF_DIF_FOR_HUADONG 0x00023333// 550ns<6E><73>Ӧ<EFBFBD><D3A6>GP30<33><30>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD>
#define TOF_UP_FOR_FILTER_FLAG 1//UP<55><50><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>˲<EFBFBD><CBB2><EFBFBD>־
#define TOF_DOWN_FOR_FILTER_FLAG 0//DOwn<77><6E><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>˲<EFBFBD><CBB2><EFBFBD>־
#define TOF_6_US 1572864 //6us <20><>Ӧ<EFBFBD><D3A6>GP30<33><30>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD>
typedef union {
u32 gp30_u32;
float gp30_float;
} To_Float_GP30;
#define GP30_APP_MAX_DATA 18 //GP30<33><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݸ<EFBFBD><DDB8><EFBFBD>
typedef union {
u32 gp30_u32;
float gp30_float;
} To_Float;
typedef union {
u64 gp30_u64;
double gp30_double;
} To_Double;
typedef union {
struct {
u32 temp; //<2F>ȣ<C2B6>GP30<33><30><EFBFBD>ݸ<EFBFBD>ʽ<EFBFBD><CABD>
To_Float_GP30 total_flow; //<2F>ۼ<EFBFBD><DBBC><EFBFBD><EFBFBD><EFBFBD>(float<61><74>iEEE754<35><34><EFBFBD><EFBFBD><EFBFBD>Ǽ춨<C7BC>Ŵ<EFBFBD><C5B4><EFBFBD><EFBFBD><EFBFBD>100)
To_Float_GP30 total_flow_reverse;//<2F><><EFBFBD><EFBFBD><EFBFBD>ۼ<EFBFBD><DBBC><EFBFBD><EFBFBD><EFBFBD>
u32 ins_flow; //˲ʱ<CBB2><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>GP30<33><30><EFBFBD>ݸ<EFBFBD>ʽ<EFBFBD><CABD>
u32 TOF_up; //<2F><><EFBFBD><EFBFBD>TOF_up<75><70>ֵ<EFBFBD><D6B5>GP30<33><30><EFBFBD>ݸ<EFBFBD>ʽ<EFBFBD><CABD>
u32 ratio_up; //Pulse_Width_Ratio_Up<55><70>GP30<33><30><EFBFBD>ݸ<EFBFBD>ʽ<EFBFBD><CABD>
u32 peak_up; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>GP30<33><30><EFBFBD>ݸ<EFBFBD>ʽ<EFBFBD><CABD>//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ_up
u32 TOF_down; //<2F><><EFBFBD><EFBFBD>TOF_down<77><6E>ֵ<EFBFBD><D6B5>GP30<33><30><EFBFBD>ݸ<EFBFBD>ʽ<EFBFBD><CABD>
u32 ratio_down; //Pulse_Width_Ratio_down<77><6E>GP30<33><30><EFBFBD>ݸ<EFBFBD>ʽ<EFBFBD><CABD>
u32 peak_down; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>GP30<33><30><EFBFBD>ݸ<EFBFBD>ʽ<EFBFBD><CABD>//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ_down
u32 TOF_diff; //ʱ<><CAB1><EFBFBD>GP30<33><30><EFBFBD>ݸ<EFBFBD>ʽ<EFBFBD><CABD>
To_Float up_tof_dif; //UP<55>˵ı<CBB5><C4B1><EFBFBD><EFBFBD><EFBFBD>ֵ
To_Float down_tof_dif; //DOwn<77>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD>ֵ
u32 ins_flow_cnt; //˲ʱ<CBB2><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܴ<EFBFBD><DCB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>cnt<6E><74>1<EFBFBD><31>
float ins_flow_sum;//˲ʱ<CBB2><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܺͣ<DCBA><CDA3><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>sum<75><6D>1<EFBFBD><31>
float ins_flow_sum_temp;//˲ʱ<CBB2><CAB1><EFBFBD><EFBFBD><EFBFBD>ۼ<EFBFBD><DBBC><EFBFBD>ʱֵ
float ins_flow_max;//˲ʱ<CBB2><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
float ins_flow_min;//˲ʱ<CBB2><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Сֵ
}s;
u32 data[GP30_APP_MAX_DATA]; //<2F><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>
} GP30_SYS_Date;
typedef struct {
u16 communication_err;
u16 no_water;
u16 low_flow;
u16 out_temp;
u16 low_high_flow;
u16 reverse_flow;
u16 tof_overrun;
u16 low_amp;
u16 gp30_err;
u16 water_direction_reverse;//ˮ<><CBAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
} EVENT;
typedef struct {
u8 communication_err;
u8 no_water;
u8 low_flow;
u8 out_temp;
u8 low_high_flow;
u8 reverse_flow;
u8 tof_overrun;
u8 low_amp;
u8 gp30_err;
u8 water_direction;//ˮ<><CBAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
} EVENT_FLAG;
typedef union {
struct {
u8 time[6]; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ
To_Float total_flow; //<2F>ۼ<EFBFBD><DBBC><EFBFBD><EFBFBD><EFBFBD>
u16 state; //״̬<D7B4><CCAC>
}s;
u8 data[12];
} GP30_APP_EVENT_DATA;
typedef struct {
u8 diftof_overrun_num;
u8 tdc_overrun_num; //<2F><>ˮ
u8 tof_overrun_num;
u8 type_err_num;
u8 GP30_sample_err_num;
} OVERRUN_NUM;
#define GP30_APP_EVENT_SUM_NORMAL 20
#define GP30_APP_EVENT_SUM_TEST 160
#define GP30_communication_err 1
#define GP30_no_water 2
#define GP30_low_flow 4
#define GP30_out_temp 5
#define GP30_low_high_flow 6
#define GP30_reverse_flow 7
#define GP30_TOF_overrun 8
#define GP30_low_amp 9
#define GP30_err 3
#define GP30_water_direction 10
#define GP30_communication_err_DE 11
#define GP30_no_water_DE 22
#define GP30_low_flow_DE 44
#define GP30_out_temp_DE 55
#define GP30_low_high_flow_DE 66
#define GP30_reverse_flow_DE 77
#define GP30_TOF_overrun_DE 88
#define GP30_low_amp_DE 99
#define GP30_err_DE 33
#define GP30_water_direction_DE 23
#define GP30_clear_all 0xFF
//2017-12-4 13:25:56<35><36>
//#define GP30_APP_LOWPOW_ERR_ADDR 0x800
//#define GP30_APP_TRANS_ERR_ADDR 0x900
//#define GP30_APP_NO_WATER_ADDR 0xA00
//#define GP30_APP_LOW_FLOW_ADDR 0xB00
//#define GP30_APP_OUT_TEMP_ADDR 0xC00
#define GP30_APP_LOWPOW_ERR_ADDR 0x800 //2015-6-4 <20><>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>
#define GP30_APP_TRANS_ERR_ADDR (GP30_APP_LOWPOW_ERR_ADDR + sizeof(GP30_APP_EVENT_DATA))
#define GP30_APP_NO_WATER_ADDR (GP30_APP_TRANS_ERR_ADDR + sizeof(GP30_APP_EVENT_DATA))
#define GP30_APP_LOW_FLOW_ADDR (GP30_APP_NO_WATER_ADDR + sizeof(GP30_APP_EVENT_DATA))
#define GP30_APP_OUT_TEMP_ADDR (GP30_APP_LOW_FLOW_ADDR + sizeof(GP30_APP_EVENT_DATA))
//<2F>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>6 +<2B>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>ۻ<EFBFBD><DBBB><EFBFBD><EFBFBD><EFBFBD>4 + ״̬<D7B4><CCAC>2 = 12<31>ֽڡ<D6BD>ÿ<EFBFBD><C3BF><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD>0x900 - 0x9FF<46><46>GP30Ӧ<30>ô<EFBFBD><C3B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:1Сʱ<D0A1><CAB1><EFBFBD><EFBFBD><EFBFBD>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>90%<25><>Ϊ<EFBFBD><CEAA>Ч<EFBFBD><D0A7>¼
//<2F>ܶ<EFBFBD><DCB6><EFBFBD>ˮ<EFBFBD><CBAE>0xA00 - 0xAFF<46><46>GP30Ӧ<30>ô<EFBFBD><C3B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:1Сʱ<D0A1><CAB1><EFBFBD><EFBFBD><EFBFBD>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>90%<25><>Ϊ<EFBFBD><CEAA>Ч<EFBFBD><D0A7>¼
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0xB00 - 0xBFF<46><46>GP30Ӧ<30>ô<EFBFBD><C3B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:1Сʱ<D0A1><CAB1><EFBFBD><EFBFBD><EFBFBD>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>90%<25><>Ϊ<EFBFBD><CEAA>Ч<EFBFBD><D0A7>¼
//ˮ<>³<EFBFBD><C2B3><EFBFBD><EFBFBD>¶ȵȼ<C8B5><C8BC><EFBFBD>Χ<EFBFBD><CEA7>0xC00 - 0xCFF<46><46>GP30Ӧ<30>ô<EFBFBD><C3B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:1Сʱ<D0A1><CAB1><EFBFBD><EFBFBD><EFBFBD>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>90%<25><>Ϊ<EFBFBD><CEAA>Ч<EFBFBD><D0A7>¼
//GP30<33><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3B4A6><EFBFBD><EFBFBD>
//<2F><>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EEA3AC><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define GP30_APP_CLEAR_DATA_S0 0
#define GP30_APP_CLEAR_DATA_S1 1
#define GP30_APP_DATA_ADDR EEP_GP30_BASE_ADDR //<2F><><EFBFBD>ݱ<EFBFBD><DDB1>ݵ<EFBFBD>EE<45><45>ַ 0x100
#define GP30_APP_DATA_TOTAL_FLOW_ADDR (GP30_APP_DATA_ADDR +6) //2017 02,<2C><><EFBFBD>ĸ<EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define GP30_APP_DATA_TOTAL_FLOW_ADDR_REVERSE (GP30_APP_DATA_ADDR +10) //2017 02,<2C><><EFBFBD>ĸ<EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define GP30_APP_DATA_UP_TOF_DIF_ADDR (GP30_APP_DATA_ADDR +14) //2021-03-22//
#define GP30_APP_DATA_DOWN_TOF_DIF_ADDR (GP30_APP_DATA_ADDR +18) //2021-03-22
#define DIFTOF_CALIBRATION_FLAG_ADDR 0X150 //2021,04,<2C><><EFBFBD>ӻ<EFBFBD><D3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У׼<D0A3><D7BC>־<EFBFBD><D6BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0xA1B2C3D4E5F6A7B8<42><38>ʾУ׼<D0A3><D7BC>
#define DIFTOF_CALIBRATION_VALUE_ADDR (DIFTOF_CALIBRATION_FLAG_ADDR +8) //2021,04,<2C><><EFBFBD>ӻ<EFBFBD><D3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У׼ֵ4<D6B5>ֽ<EFBFBD>
typedef union {
struct {
u8 flag[2]; //<2F><>һ<EFBFBD><D2BB><EFBFBD>ϵ<EFBFBD><CFB5><EFBFBD>־
u8 time[4]; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ
To_Float total_flow; //<2F><><EFBFBD><EFBFBD><EFBFBD>ۼ<EFBFBD><DBBC><EFBFBD><EFBFBD><EFBFBD>
To_Float total_flow_reverse; //<2F><><EFBFBD><EFBFBD><EFBFBD>ۼ<EFBFBD><DBBC><EFBFBD><EFBFBD><EFBFBD>
To_Float up_tof_dif; //UP<55>˵ı<CBB5><C4B1><EFBFBD><EFBFBD><EFBFBD>ֵ
To_Float down_tof_dif; //DOwn<77>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD>ֵ
}s;
u8 data[22]; //<2F><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>
} GP30_APP_SAVE_DATA;
typedef union {
struct {
U8TOU64 diftof_calibration_flag; //ʱ<><CAB1><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD>У׼<D0A3><D7BC><EFBFBD>ı<EFBFBD>־
U8TOU32 diftof_calibration_value; //ʱ<><CAB1><EFBFBD><EFBFBD>У׼ֵ
}s;
u8 data[12];
} GP30_DIFTOF_CAL_DATA;
//<2F><>ǰ<EFBFBD><C7B0><EFBFBD>ݱ<EFBFBD><DDB1>ݴ<EFBFBD><DDB4><EFBFBD><EFBFBD><EFBFBD>
//<2F><>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>: <20><><EFBFBD><EFBFBD>GP30<33><30>ǰ<EFBFBD>ۼ<EFBFBD><DBBC><EFBFBD><EFBFBD>ݱ<EFBFBD><DDB1>ݴ洢
/*************************<2A><EFBFBD><EAB6A8>****************************/
#define GP30_APP_SAVE_S0 0
#define GP30_APP_SAVE_S1 1
#define GP30_APP_SAVE_S2 2
#define GP30_APP_SAVE_S3 3
#define GP30_APP_SAVE_S4 4
#define GP30_APP_SAVE_S5 5
#define GP30_APP_SAVE_S6 6
#define SAMPLE_INTERVAL_1h 3600 //<2F><><EFBFBD>ݱ<EFBFBD><DDB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define FLOW_DETECT_5S 3 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//GP22Ӧ<32>ô<EFBFBD><C3B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><CFB5><EFBFBD>ʼ<EFBFBD><CABC>
//<2F><>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>: GP22Ӧ<32>ô<EFBFBD><C3B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><CFB5><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD> EE<45><45><EFBFBD>ݶ<EFBFBD>ȡ
//EEPROM<4F><4D><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0x80-0xB7
//<2F><>һ<EFBFBD><D2BB><EFBFBD>ϵ<EFBFBD><CFB5><EFBFBD>־: 0x77 0x88
#define GP30_APP_INIT_S0 0
#define GP30_APP_INIT_S1 1
#define GP30_APP_INIT_S2 2
#define GP30_APP_INIT_S3 3
#define GP30_APP_INIT_S4 4
#define GP30_APP_INIT_S5 5
#define GP30_APP_INIT_S6 6
#define GP30_APP_INIT_S7 7
#define GP30_APP_INIT_S8 8
//GP22<32><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define GP22_APP_SAMPLE_S0 0
#define GP22_APP_SAMPLE_S1 1
#define GP22_APP_SAMPLE_S2 2
#define GP22_APP_SAMPLE_S3 3
#define GP22_APP_SAMPLE_S4 4
//Send_Data<74><61><EFBFBD><EFBFBD><EFBFBD>ϱ<EFBFBD><CFB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define SEND_DATA_S0 0
#define SEND_DATA_S1 1
#define SEND_DATA_S2 2
#define SEND_DATA_S3 3
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>л<EFBFBD><D0BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define GP30_CONTROL_S0 0
#define GP30_CONTROL_S1 1
#define GP30_APP_FLOW_DETECT_S0 0//<2F><><EFBFBD>ټ<EFBFBD><D9BC><EFBFBD>״̬<D7B4><CCAC> 2022-05-30
#define GP30_APP_FLOW_DETECT_S1 1
#define GP30_APP_FLOW_DETECT_S2 2
#define GP30_APP_FLOW_DETECT_S3 3
//λ<><CEBB>20211213
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<D7B4><CCAC>
#define MSASURE_STATE_OPEN 0
#define MSASURE_STATE_SWITCH 1
#define MSASURE_STATE_CLOSE 2
//#define GP22_APP_SAMPLE_SIZE 6 //GP22ÿ<32><C3BF><EFBFBD><EFBFBD>GP22_APP_SAMPLE_SIZE <20>ν<EFBFBD><CEBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD>¶Ȳɼ<C8B2>,<2C><><EFBFBD><EFBFBD>һ<EFBFBD>Ρ<EFBFBD>
//#define GP22_APP_QUEUE_SIZE 12 //GP22<32><32><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD><CBB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԫ<EFBFBD>ظ<EFBFBD><D8B8><EFBFBD>
//#define GP22_APP_DIFTOF_SIZE 10 //GP22<32><32><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ԫ<EFBFBD>ظ<EFBFBD><D8B8><EFBFBD>
//#define GP22_APP_DIFTOF_SIZE_2 60 //<2F>ڶ<EFBFBD><DAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԫ<EFBFBD>ظ<EFBFBD><D8B8><EFBFBD>
#define GP22_APP_QUEUE_SIZE 16 //GP22<32><32><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD><CBB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԫ<EFBFBD>ظ<EFBFBD><D8B8><EFBFBD>
#define GP22_APP_TEMP_INVERSE_DATA_SIZE 3 //GP22FHLģʽ<C4A3><CABD>UP<55><50>DOWN<57><4E><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԫ<EFBFBD>ظ<EFBFBD><D8B8><EFBFBD>
#define GP22_APP_TEMP_INVERSE_DATA_SIZE_FIVE 5 //GP22FHLģʽ<C4A3><CABD>UP<55><50>DOWN<57><4E><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԫ<EFBFBD>ظ<EFBFBD><D8B8><EFBFBD>
#define GP30_APP_FILTER_SIZE (GP22_APP_QUEUE_SIZE/4) //<2F>춨״̬<D7B4>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>ۼ<EFBFBD><DBBC><EFBFBD><EFBFBD>˲<EFBFBD>ֵ
#define GP30_APP_FILTER_MAX_MIN_SIZE (GP30_APP_FILTER_SIZE/2) //GP30<33>춨״̬<D7B4>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>ۼ<EFBFBD><DBBC><EFBFBD><EFBFBD>˲<EFBFBD>ֵ,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD>
#define GP22_APP_DIFTOF_SIZE GP22_APP_QUEUE_SIZE //GP22<32><32><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ԫ<EFBFBD>ظ<EFBFBD><D8B8><EFBFBD>
#if EN_SMALL_FILITER
#define GP22_APP_DIFTOF_SIZE_2 40 //<2F>ڶ<EFBFBD><DAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԫ<EFBFBD>ظ<EFBFBD><D8B8><EFBFBD> 16*40 = 640
#elif EN_LARGE_FILITER
#define GP22_APP_DIFTOF_SIZE_2 20 //<2F>ڶ<EFBFBD><DAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԫ<EFBFBD>ظ<EFBFBD><D8B8><EFBFBD>
#define GP22_APP_DIFTOF_SIZE_3 30 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԫ<EFBFBD>ظ<EFBFBD><D8B8><EFBFBD> 16*30 *20 = 9600 //10<31><30><EFBFBD>ӳ<EFBFBD><D3B3><EFBFBD><EFBFBD>˲<EFBFBD>
#define GP22_APP_DIFTOF_SUM 600 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD><CBB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 30*20 //10<31><30><EFBFBD>ӳ<EFBFBD><D3B3><EFBFBD><EFBFBD>˲<EFBFBD>
#endif
#define SAMPLE_FREQUENCY_NON_VERIFICATION 8 //GP30<33>Ǽ춨״̬<D7B4><CCAC><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5>
#define TOTAL_FLOW_COEFFICIENT_NON_VERIFICATION (GP22_APP_QUEUE_SIZE / SAMPLE_FREQUENCY_NON_VERIFICATION) //<2F>Ǽ춨״̬<D7B4><CCAC><EFBFBD><EFBFBD><EFBFBD>ۼ<EFBFBD><DBBC><EFBFBD><EFBFBD><EFBFBD> <20>õ<EFBFBD><C3B5><EFBFBD>ϵ<EFBFBD><CFB5>
#define SAMPLE_FREQUENCY_VERIFICATION 16 //GP30<33>춨״̬<D7B4><CCAC><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5>
#define TOTAL_FLOW_COEFFICIENT_VERIFICATION (GP22_APP_QUEUE_SIZE / SAMPLE_FREQUENCY_VERIFICATION) //<2F>춨״̬<D7B4><CCAC><EFBFBD><EFBFBD><EFBFBD>ۼ<EFBFBD><DBBC><EFBFBD><EFBFBD><EFBFBD> <20>õ<EFBFBD><C3B5><EFBFBD>ϵ<EFBFBD><CFB5>
#define GP22_APP_EXCEED_START_FLOW_SUM 3/* <20>޸<EFBFBD>ԭ<EFBFBD>򣺴<EFBFBD><F2A3BAB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д2<D0B4><32><EFBFBD><EFBFBD><EFBFBD>ڷ<EFBFBD><DAB7><EFBFBD>;GP22_APP_QUEUE_SIZE/8 //GP30_APP_FILTER_SIZE <20><><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ھ<EFBFBD>ˮ<EFBFBD><CBAE><EFBFBD><EFBFBD><EFBFBD>㷨 2019-5-7*/
#define GP22_APP_EXCEED_START_FLOW_SUM_VERIFICATION (GP22_APP_QUEUE_SIZE/2) //<2F><><EFBFBD>ڼ춨״̬<D7B4><CCAC>GP30_APP_FILTER_SIZE //<2F><><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ھ<EFBFBD>ˮ<EFBFBD><CBAE><EFBFBD><EFBFBD><EFBFBD>㷨 2019-5-7
#define GP22_APP_MAX_AM_BUFFER (GP22_APP_QUEUE_SIZE/2) //<2F><><EFBFBD>ڼ춨״̬<D7B4><CCAC>GP30_APP_FILTER_SIZE //<2F><><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ھ<EFBFBD>ˮ<EFBFBD><CBAE><EFBFBD><EFBFBD><EFBFBD>㷨 2019-5-7
#define GP22_MAX_BUFFERLENTH 16 //GP30<33><30><EFBFBD><EFBFBD>bufferlenth
#define INS_FLOW_CAL_CNT_MAX 1800//30<33><30><EFBFBD><EFBFBD>˲ʱ<CBB2><CAB1><EFBFBD><EFBFBD>ѭ<EFBFBD><D1AD>һ<EFBFBD><D2BB>
//GP22<32><32><EFBFBD>ݴ洢<DDB4><E6B4A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define GP22_APP_MONITOR_S(X) X
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*
while (!g_gp22_init_flag)
{
GP22Ӧ<EFBFBD>ô<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
EE<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}*/
//<2F>ӿ<EFBFBD>ʹ<EFBFBD><CAB9>
#define SLEEP_TRUE 1
#define SLEEP_FALSE 0
//<2F>ӿ<EFBFBD>ʹ<EFBFBD><CAB9>
#define GP30_APP_IDLE 1
#define GP30_APP_BUSY 0
#define GP30_APP_TEST 2
//<2F><><EFBFBD><EFBFBD>
#define GP22_APP_3P6 0x00039999 //3.6
#define GP22_APP_TOTAL_FLOW_PARA_NOR 0x0000071C //100/3600 <20>Ǽ춨 <20>Ŵ<EFBFBD>100<30><30>
#define GP22_APP_TOTAL_FLOW_PARA_JIAN 0x0000071C //100000/3600/1000 <20><20>Ŵ<EFBFBD>100000<30><30>
//#define GP22_APP_TOTAL_FLOW_PARA_NOR 0x0000071C //100/3600 <20>Ǽ춨 <20>Ŵ<EFBFBD>100<30><30>
//#define GP22_APP_TOTAL_FLOW_PARA_JIAN 0x0000071C //100000/3600 <20><20>Ŵ<EFBFBD>100000<30><30> <20><><EFBFBD>Ѽ춨״̬ msת<73><D7AA> /1000 ͬ<><CDAC><EFBFBD><EFBFBD>
#define GP22_APP_1_3600 0x0000471D // 1000 /3600
#define GP22_APP_TOTAL_HEAT_PARA_NOR 0x0000071C //100/3600 <20>Ǽ춨 <20>Ŵ<EFBFBD>100<30><30>
#define GP22_APP_TOTAL_HEAT_PARA_JIAN 0x00000012 //1000/3600 <20><20>Ŵ<EFBFBD>1000<30><30> /1000 ת<><D7AA>ms
extern GP30_DIFTOF_CAL_DATA g_diftof_cal_data;//У׼<D0A3><D7BC>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>ͱ<EFBFBD>־
/*---------------------------------- Function Declare -----------------------------------*/
void Gp30MachineApp(void);
void Gp30InitApp(void);
u32 Gp30CheckDataApp(u8 data_para);
u32 Gp30CheckTestDataApp(u8 data_para);
u8 Gp30IfSleepApp(void);
u8 Gp30InitDataApp(u32 total_flow, u32 negative_total_flow);
u8 Gp30CurInitDataApp(u32 cur_total_flow);
//void Gp30TestFlowInit(void);
void gp22CheckErrEventApp (u8 err_event);
u8 Gp30CheckBootloaderMsgApp(void);
u32 Gp30GetTestRamFlag(void);
void Meter_ResetCountAdd(u8 reason);
u16 Meter_GetResetCount(void);
u16 Gp30CheckErrDataApp(void);
void Gp30StartMeasureApp(u8 flag);
//u8 Gp30CheckSetWindowApp(void);
//void Gp30ClearSetWindowApp(void);
u32 FilterJunZhi(u32 *data, u8 data_len);
u8 Check_Start_STOP_Filter_Flag(void);//<2F><>ȡ<EFBFBD><EFBFBD><C2B6>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD><CBB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־
void Clear_Start_STOP_Filter_Flag(void);//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><C2B6>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD><CBB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־
float Check_Temperature_Parameter(void);//<2F><>ȡ<EFBFBD>˲<EFBFBD><CBB2><EFBFBD>
u32 FloatToGp30Data(float data);
float Gp30DataToFloat(u32 data);
u32 bcdToHex32(u32 value);
void Gp22AppSetGp22Err(void);
void FlowIntvalTimeLPTimer(void);
void RecordCalculativeIntvalTimeLPTimer(void);
void NormalResetCompensation(void);
void Gp30DiftofCalibration(void);
u8 CheckAutoCalibrationMsg(void);
u8 CheckTransducerErrorMsg(void);
u8 CheckDiftofCalibrationFlag(void);
float ModifyForVolumeTestbench(float temp_ins_flow_float);
float modify_flow( float ins_flow_temp_float);//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>㵱ǰ<E3B5B1><C7B0><EFBFBD><EFBFBD>
u8 GP30_Check_Data_UpdateMsg(void);
void GP30_Set_Data_UpdateMsg(void);
void GP30_Clear_Data_UpdateMsg(void);
void DiftofForTestbench(float temp_ins_flow_float);
//void VerificationResetCompensation(void);
//extern u16 g_test_start_sum ;
//extern u16 g_test_stop_sum ;
#endif /* __UWater_GP30_APP_H */