/* * IPwmOverride.h * * Created on: 26 окт. 2016 г. * Author: titov */ #ifndef SOURCE_PERIPHERAL_IPWMOVERRIDE_H_ #define SOURCE_PERIPHERAL_IPWMOVERRIDE_H_ #include "IPwm.hh" namespace peripheral { struct IPwmOverride : public IPwmInfo { typedef IPwm::PwmTime PwmTime; /*!\brief Функция включения режима перезаписи значения. * Разрешение выхода ШИМ при этом будет снято. * */ virtual void setupOverride() = 0; /*!\brief Функция устанавливает новую уставку сравнения ШИМ, перезаписывая текущую от ПО. *\param[in] value - значение уставки сравнения в отсчетах таймера ШИМ. */ virtual void overrideThreshold( PwmTime value ) = 0; virtual void overrideDisableOutput() = 0; virtual void overrideEnableOutput() = 0; /*!\brief Функция возращает уставку сравнения ШИМ скрытую перезаписью. *\param[in] value - значение уставки сравнения в отсчетах таймера ШИМ. */ virtual PwmTime getHiddenThreshold() = 0; /*!\brief Функция возращает скрытое состояния ШИМ. *\return true - выход активен, false - выход не активен. */ virtual bool getHiddenOutputState() = 0; /*!\brief Функция выключения режима перезаписи. * Управление состоянием выхода ШИМ и уставками порога срабатывания будет производиться по интерфейсу IPwm. * */ virtual void resetOverride() = 0; virtual ~IPwmOverride() = default; }; } #endif /* SOURCE_PERIPHERAL_IPWMOVERRIDE_H_ */