#ifndef __DP2201V01_h__ #define __DP2201V01_h__ #include "../user/Main/Macro_Flange.h" #if(DP2201_M0CONTROL) //采样定时器 #define SamplingTimer TIM1 #define StartSamplingTimerInterval(uploadCounter) StartTimer1_CC1(uploadCounter) #define ResetSamplingTimerInterval(uploadCounter) ResetTimer1_CC1(uploadCounter) #define StopSamplingTimerInterval() StopTimer1() //ADC转换采集定时器 #define ConversionTimer TIM2 #define StartConversionTimerInterval(uploadCounter) StartTimer2_UIE(uploadCounter) #define ResetConversionTimerInterval(uploadCounter) ResetTimer2_UIE(uploadCounter) #define StopConversionTimerInterval() StopTimer2() //for GPIO START============================================================================== // for soft I2C #define I2C_SDA GPIO_PIN_0 #define I2C_SDA_PINPOS GPIO_PinPos_0 #define I2C_SDA_GPIO GPIO1 #define I2C_SCL GPIO_PIN_1 #define I2C_SCL_PINPOS GPIO_PinPos_1 #define I2C_SCL_GPIO GPIO1 //for eeprom #define EEPROM_WP_PIN GPIO_PIN_4 #define EEPROM_WP_PINPOS GPIO_PinPos_4 #define EEPROM_WP_GPIO GPIO1 #define PARA_EEPROM BIT1 #define DATA_EEPROM BIT2 #define FROCK_EEPROM BIT1+BIT2+BIT3 // for FRAM #define FRAM_WP_PIN GPIO_PIN_6 #define FRAM_WP_PINPOS GPIO_PinPos_6 #define FRAM_WP_GPIO GPIO2 #define FRAM_CS_PIN GPIO_PIN_5 #define FRAM_CS_PINPOS GPIO_PINPos_5 #define FRAM_CS_GPIO GPIO2 // for SPI #define SCLK_PIN GPIO_PIN_5 #define SCLK_PINPOS GPIO_PinPos_5 #define SCLK_PIN_SOURCE GPIO_PinSource5 #define SCLK_PIN_CONFIG GPIO1_5_AF_SCLK0 #define SCLK_GPIO GPIO1 #define SOMI_PIN GPIO_PIN_4 #define SOMI_PINPOS GPIO_PinPos_4 #define SOMI_PIN_SOURCE GPIO_PinSource4 #define SOMI_PIN_CONFIG GPIO1_4_AF_MISO0 #define SOMI_GPIO GPIO1 #define SIMO_PIN GPIO_PIN_6 #define SIMO_PINPOS GPIO_PinPos_6 #define SIMO_PIN_SOURCE GPIO_PinSource6 #define SIMO_PIN_CONFIG GPIO1_6_AF_MOSI0 #define SIMO_GPIO GPIO1 // for IO #define TDU_SET_PIN GPIO_PIN_5 #define TDU_SET_PINPOS GPIO_PinPos_5 #define TDU_SET_GPIO GPIO1 #define TDU_SET_PIN_OUT() EnableOutput(TDU_SET_GPIO, TDU_SET_PINPOS) #define CLR_TDU_SET_PIN() CLR_PIN(TDU_SET_GPIO,TDU_SET_PIN) #define SET_TDU_SET_PIN() SET_PIN(TDU_SET_GPIO,TDU_SET_PIN) #define HEATING_PIN GPIO_PIN_6 #define HEATING_PINPOS GPIO_PinPos_6 #define HEATING_GPIO GPIO1 #define HEATING_PIN_OUT() EnableOutput(HEATING_GPIO, HEATING_PINPOS) #define CLR_HEATING_PIN() CLR_PIN(HEATING_GPIO,HEATING_PIN) #define SET_HEATING_PIN() SET_PIN(HEATING_GPIO,HEATING_PIN) #define HP_CON_PIN GPIO_PIN_0 #define HP_CON_PINPOS GPIO_PinPos_0 #define HP_CON_GPIO GPIO0 #define HP_CON_PIN_OUT() EnableOutput(HP_CON_GPIO, HP_CON_PINPOS) #define CLR_HP_CON_PIN() CLR_PIN(HP_CON_GPIO,HP_CON_PIN) #define SET_HP_CON_PIN() SET_PIN(HP_CON_GPIO,HP_CON_PIN) #define TEST_PIN GPIO_PIN_7 #define TEST_PIN_PINPOS GPIO_PinPos_7 #define TEST_PIN_GPIO GPIO1 #define TEST_PIN_OUT() EnableOutput(TEST_PIN_GPIO, TEST_PIN_PINPOS) #define TEST_PIN_TOGGLE() TOGGLE_PIN(TEST_PIN_GPIO, TEST_PIN) #define RS485DE_PIN GPIO_PIN_1 #define RS485DE_PINPOS GPIO_PinPos_1 #define RS485DE_GPIO GPIO1 #define RS485DE_OUTPUT() EnableOutput(RS485DE_GPIO, RS485DE_PINPOS) #define ENABLE_TXD() SET_PIN(RS485DE_GPIO, RS485DE_PIN) #define ENABLE_RXD() CLR_PIN(RS485DE_GPIO, RS485DE_PIN) // //for GPIO END===============================================================================\ //============================================================================================================================================================================================= //for ADC START==============================================================================/ typedef struct { u8 State ; u8 Index ; u16 NextTime ; }__Process_TypeDef; typedef struct //__SAMPLE_STATUS_BIT_TypeDef { u16 DisplayZero : 1; // 1 u16 Mode: 2; // 3 u16 CType: 2; // 5 u16 AType: 1; // 7 u16 RType: 1; // 7 u16 HType: 2; // 9 u16 PreSampling: 1; // 10 u16 AutoDetectOffset: 1; // 11 u16 AutoDetectProcess: 2; // 13 u16 EnableRHTest : 1; // 14 u16 EnableRoughTest: 1; // 15 } __SAMPLE_STATUS_BIT_TypeDef; void FlowProcessManagement(void);//流量过程管理 void StartNormolFlowMeasurement(void);//开始测量流量 void ComputeFlowRateIndexAndFlowRate(void);//处理采样数据 void FlowRateDealAndOuputSub(void); //for ADC END==============================================================================\ //====================================================================================================================================================================================== //for FLOWMETER START======================================================================/ // ***************************************************************************** #define CURVE_1ST 0 #define CURVE_2ND 1 #define CURVE_3RD 2 #define CTYPE_FR CURVE_1ST #define ATYPE_VH CURVE_2ND #define MICRO_FR CURVE_3RD #define FRIDX CTYPE_FR // 0 #define RGIDX ATYPE_VH // 1 #define GAINX MICRO_FR // 2 #define VDUX 3 // *From ADC CTcode #define VDUGX 4 // * CTcode #define RIDX 5 // #define NIDX 6 // NORMAL_VL - LOW_VL (TD INDEX) * VDUX #define TPCB 7 // PCB temperature *From eeprom #define TGAS 8 // GAS temperature *From IIC dev TPCB #define TRH 9 // RH temperature *From eeprom #define BATT 10 // Battery volatge #define IVHDX 11 // IRH CODE test VHH By TD Control *From ADC HTcode #define VRHX 12 // VRH CODE *From ADC ATcode #define IVHUX 13 // IRH CODE test VHH By TU Control #define VRRX 14 // VRR CODE *From ADC RTcode #define RHVOL 15 // RH VOLATAGE * VRHX #define RRVOL 16 // RR VOLATAGE * VRRX #define RHRES 17 // RH resistance * IVHDX #define RRRES 18 // RR resistance * VRRX #define PORH 19 // RH Power * IVHDX #define PDRH 20 // RH current Power #define CVHHX 21 // #define DVHHX 22 // #define VHPA 23 // #define RATO 24 // RR:RH NRH--RRRES--VRRX---ADC RTcode #define SDT 25 // ATYPE OFFSET #define DIVHX 26 // IVHH(TD) - IVHH(TU) *目前未使能 #define TCOE 27 // * TGAS #define TVDUX 28 // * TGAS #define TVDUGX 29 // * TGAS #define FR_H 30 // #define FR_L 31 // #define ANX 32 // #define ANX_MASK (ANX-1) //***************************************************************************** #define CODE1 FR_H // 8300 FIDX #define CODE2 FR_L // 8301 FIDX #define CODE3 FRIDX // 8302 FIDX #define CODE4 NIDX // 8303 #define CODE5 VRHX // 8304 #define CODE6 IVHDX // 8305 #define CODE7 RHVOL // 8306 #define CODE8 VDUGX // 8307 #define CODE9 TPCB // 8308 #define CODE10 RHVOL // 8309 #define CODE11 VDUX // 830A #define CODE12 VDUGX // 830B #define CODE13 NIDX // 830C #define CODE14 BATT // 830D #define CODE15 IVHDX // 830E #define CODE16 VRHX // 830F //for FLOWMETER END==============================================================================\ //=============================================================================================================================================================================================== //for Device Start===============================================================================/ void TestTemperatureInit(void); void TestTemperature(void); extern __SAMPLE_STATUS_BIT_TypeDef sampleState; extern u16 FRType; extern u32 voltageANX; extern u16 voltageDetected[], adcGain; //for Device END==============================================================================\ //=============================================================================================================================================================================================== //for func Start==============================================================================/ u16 WordSubFunction(u16 minuend, u16 subtractor); #endif #endif