/**** Includes ****/ #include "../utils/utils.h" #include "mcu/mcu_hal.h" #include "pwm.h" using namespace bsp; /**** Private definitions ****/ /**** Private constants ****/ /**** Private variables ****/ /**** Private function declarations ****/ /**** Public function definitions ****/ bsp::PWMout::PWMout(uint8_t pwm_ch) { this->pwm_ch = pwm_ch; this->write(0); } bsp::PWMout::~PWMout(void) { this->write(0); } void bsp::PWMout::write(uint8_t duty) { // Convert percent to 16b duty cycle uint16_t dc = util::percent_to_16b(duty); // Set PWM mcu::pwm_write(this->pwm_ch, dc); this->last_duty = duty; } uint8_t bsp::PWMout::get_set_duty(void) { return this->last_duty; } /**** Private function definitions ****/