#include "gas_sensor.h" #include "bsp/bsp.h" #include "bsp/adc.h" static gas_t _gas; void gas_sensor_init(void){ _gas.voltage = 0; _gas.lowpass = 5; gas_sample_voltage(); } void gas_sample_voltage(void){ u32 vadc = adc_sample_regular_channel(HANDLERBAR_CHAN, 16); _gas.voltage = ((float)vadc)/(65536.0f) * ADC_REFERENCE_VOLTAGE; } float gas_get_value(void){ return _gas.voltage/ADC_REFERENCE_VOLTAGE; } /* 检测到有效转把信号 */ bool gas_detect_speed_signal(void) { return gas_get_value() >= 1.0f; }