| 123456789101112131415161718192021222324252627 |
- #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;
- }
|