// #include // #include // #include "math.h" // #include // #include // #ifndef RT_USING_NANO // #endif /* RT_USING_NANO */ // #define PM25_READ_TIMES 20 // #define GPIO_PIN GET_PIN(G, 5) // extern float ADC_Read(); // extern float ADC1_Read(); // float PM25_GetData(void) // { // int ADCVal; // int dustVal = 0; // float Voltage; // rt_pin_write(GPIO_PIN, PIN_HIGH);//置1 开启内部LED // rt_hw_us_delay(280); // ADCVal = ADC1_Read(); // rt_hw_us_delay(25); // rt_pin_write(GPIO_PIN, PIN_LOW); //置0 关闭内部LED // rt_hw_us_delay(9680); //需要脉宽比0.32ms/10ms的PWM信号驱动传感器中的LED // Voltage = 3.3f * ADCVal / 4096.f * 2; //获得AO输出口的电压值 // dustVal = (0.17*Voltage-0.1)*1000; //乘以1000单位换成ug/m3// // if (dustVal < 0) // dustVal = 0; //限位// // if (dustVal>500) // dustVal=500; // return dustVal; // } // /** // * @brief 平均值滤波法 // * @param 无 // * @retval 返回滤波后的数据 // */ // float Get_PM25_Average_Data(void) // { // float temp_val=0; // float t; // for(t=0;t