#include "GasData.h" #include "stdio.h" #include "bsp_Print.h" #include "dsp_Demod.h" #include "bsp_TEC.h" #include "bsp_ADC.h" #include "laser.h" #include "algo_Laser.h" #include "bsp_Uart.h" #include "algo_Calib.h" #include "GasData.h" #include "algo_Filter.h" #include "dsp_Demod.h" #include "app.h" #include "bsp_Flash.h" #include "bsp_print.h" static void GasData_Task(void); static char *GasData_GetName(u8 GasType); static char *GasData_GetUnit(u8 Unit); GasData_t GasData= { .Task = GasData_Task, .GetName = GasData_GetName, .GetUnit = GasData_GetUnit, }; GasData_t *pGasData = &GasData; static void GasData_Task(void) { // if(BSP_PRINT_CURDATA == bsp_Print_DataTyppe) // { // printf("R_AD,%u,Cal_AD,%u,M_AD,%u,C_AD,%u,C_Val,%d,Val,%d\n", // pGasData->Gas_1.R_AD,pGasData->Gas_1.R_AD_Cal,pGasData->Gas_1.Measur_AD,pGasData->Gas_1.Cali_AD,pGasData->Gas_1.Fac_Value,pGasData->Gas_1.Usr_Value); // } pGasData->Gas_1.Left = LaserSensor.SHG.Pix_Light_Max; pGasData->Gas_1.Mid = LaserSensor.SHG.Pix_Light_Min; pGasData->Gas_1.Light_AD = LaserSensor.ORI.Light_AD; pGasData->Gas_1.TempAD = ADC.AD[ADC_BOARD]; pGasData->Gas_1.Temp = ADC.Value[ADC_BOARD] * 100; pGasData->Gas_1.TECAD = ADC.AD[ADC_TEC]; pGasData->Gas_1.TECTemp = ADC.Value[ADC_TEC] * 100; pGasData->Gas_1.Slope = FilterMeasur.Slope; pGasData->Gas_1.FastFlag = FilterMeasur.FastFlag; if(BSP_PRINT_CURDATA == bsp_Print_DataTyppe) { printf("f2pp=%u,caliAD=%u,RRtestAD=%u,cr=%d,con=%d,Cz=%d,left=%u,mid=%u,light_AD=%u,T=%d,TAD=%u,TECTemp=%d,TECAD=%u,Slope=%f,Fast=%d\n", pGasData->Gas_1.Measur_AD, pGasData->Gas_1.Cali_AD, pGasData->Gas_1.R_AD_Cal, pGasData->Gas_1.R_Value, pGasData->Gas_1.Fac_Value, pGasData->Gas_1.Usr_Value, pGasData->Gas_1.Left, pGasData->Gas_1.Mid, pGasData->Gas_1.Light_AD, pGasData->Gas_1.Temp, pGasData->Gas_1.TempAD, pGasData->Gas_1.TECTemp, pGasData->Gas_1.TECAD, pGasData->Gas_1.Slope, pGasData->Gas_1.FastFlag ); } } static char *GasData_GetName(u8 GasType) { switch(GasType) { case GASDATA_TYPE_CH4 : return "CH4 "; case GASDATA_TYPE_CO2 : return "CO2 "; case GASDATA_TYPE_CO : return "CO2 "; case GASDATA_TYPE_CnHm: return "CnHm"; case GASDATA_TYPE_SO2 : return "SO2 "; case GASDATA_TYPE_H2S : return "H2S "; case GASDATA_TYPE_H2 : return "H2 "; case GASDATA_TYPE_O2 : return "O2 "; case GASDATA_TYPE_HF : return "HF "; case GASDATA_TYPE_NH3 : return "NH3 "; default : return "unknow"; } } static char *GasData_GetUnit(u8 Unit) { switch(Unit) { case GASDATA_UNIT_PPM : return "ppm "; case GASDATA_UNIT_MG_M3 : return "mg/m3"; case GASDATA_UNIT_PERCENT : return "% "; case GASDATA_UNIT_M_S : return "m/s "; case GASDATA_UNIT_M3_H : return "m3/h "; default : return "unknow"; } }