#include "hardwareDescription.h" typedef enum { functionNotSupported, prescalerOutOfRange } timerError_t; typedef enum { upCounting, downCounting, centerAligned } timerCountDirection_t; typedef enum { inputCapture, outputCompare, pwm, onePulse } timerMode_t; void timerActivateBus(timerNo_t timer); void timerEnableTimer(timerNo_t timer); void timerSetClkSource(timerNo_t timer, clkSources_t clk); void timerSetMode(timerNo_t timer, timerMode_t mode); void timerSetCountDirection(timerNo_t timer, timerCountDirection_t direction); void timerSetPrescaler(timerNo_t timer, uint32_t prescaler); void timerSetPostscaler(timerNo_t timer, uint32_t postscaler); void timerSetAutoReload(timerNo_t timer, uint32_t reload); void timerClearCounter(timerNo_t timer); /* Second stage configuration */ void timerSetHz(timerNo_t timer, uint16_t hz); void timerSetMs(timerNo_t timer, uint16_t ms); void timerSetNs(timerNo_t timer, uint16_t ns); void timerSetPs(timerNo_t timer, uint16_t ps); void timerSart(timerNo_t timer); void timerStop(timerNo_t timer); uint32_t timerGetCount(timerNo_t timer); void timerThrowError(timerError_t error);