SimpleFOClibrary 2.4.0
Loading...
Searching...
No Matches
stm32_timerutils.h
Go to the documentation of this file.
1
2#pragma once
3
4#include "./stm32_mcu.h"
5
6#if defined(_STM32_DEF_) || defined(TARGET_STM32H7)
7
8void stm32_pauseTimer(TIM_HandleTypeDef* handle);
9void stm32_resumeTimer(TIM_HandleTypeDef* handle);
10void stm32_refreshTimer(TIM_HandleTypeDef* handle);
11void stm32_pauseChannel(TIM_HandleTypeDef* handle, uint32_t llchannels);
12void stm32_resumeChannel(TIM_HandleTypeDef* handle, uint32_t llchannels);
13uint32_t stm32_setClockAndARR(TIM_HandleTypeDef* handle, uint32_t PWM_freq);
14uint8_t stm32_countTimers(TIM_HandleTypeDef *timers[], uint8_t num_timers);
15uint8_t stm32_distinctTimers(TIM_HandleTypeDef* timers_in[], uint8_t num_timers, TIM_HandleTypeDef* timers_out[]);
16uint32_t stm32_getHALChannel(uint32_t channel);
17uint32_t stm32_getLLChannel(PinMap* timer);
18int stm32_getInternalSourceTrigger(TIM_HandleTypeDef* master, TIM_HandleTypeDef* slave);
19TIM_HandleTypeDef* stm32_alignTimers(TIM_HandleTypeDef *timers_in[], uint8_t num_timers_in);
20void stm32_setPwm(TIM_HandleTypeDef *timer, uint32_t channel, uint32_t value);
21uint32_t stm32_getTimerClockFreq(TIM_HandleTypeDef* handle);
22
23#if defined(__MBED__)
24void enableTimerClock(TIM_HandleTypeDef *htim);
25uint8_t getTimerClkSrc(TIM_TypeDef *tim);
26#endif
27
28#if defined(SIMPLEFOC_STM32_DEBUG)
29void stm32_printTimerCombination(int numPins, PinMap* timers[], int score);
30int stm32_getTimerNumber(TIM_TypeDef *instance);
31#endif
32
33#endif