/* Implementation of Delta-Sigma modulator support. * * Part of esp-open-rtos * Copyright (C) 2018 ourairquality (https://github.com/ourairquality) * Copyright (C) 2018 Zaltora (https://github.com/Zaltora) * BSD Licensed as described in the file LICENSE */ #ifndef EXTRAS_DSM_H_ #define EXTRAS_DSM_H_ #ifdef __cplusplus extern "C" { #endif #include #define MAX_DSM_PINS (8) #define DSM_DEBUG (0) /* * Freq = (80,000,000/prescale) * (target / 256) HZ (0 < target < 128) * Freq = (80,000,000/prescale) * ((256 - target) / 256) HZ (128 < target < 256) */ void dsm_init(uint8_t npins, const uint8_t* pins); void dsm_set_prescale(uint8_t prescale); void dsm_set_target(uint8_t target); void dsm_start(); void dsm_stop(); #ifdef __cplusplus } #endif #endif /* EXTRAS_DSM_H_ */