stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_tim_ex.h
Go to the documentation of this file.
1 
20 /* Define to prevent recursive inclusion -------------------------------------*/
21 #ifndef STM32F4xx_HAL_TIM_EX_H
22 #define STM32F4xx_HAL_TIM_EX_H
23 
24 #ifdef __cplusplus
25 extern "C" {
26 #endif
27 
28 /* Includes ------------------------------------------------------------------*/
29 #include "stm32f4xx_hal_def.h"
30 
39 /* Exported types ------------------------------------------------------------*/
48 typedef struct
49 {
50  uint32_t IC1Polarity;
53  uint32_t IC1Prescaler;
56  uint32_t IC1Filter;
59  uint32_t Commutation_Delay;
65 /* End of exported types -----------------------------------------------------*/
66 
67 /* Exported constants --------------------------------------------------------*/
75 #if defined (TIM2)
76 #if defined(TIM8)
77 #define TIM_TIM2_TIM8_TRGO 0x00000000U
78 #else
79 #define TIM_TIM2_ETH_PTP TIM_OR_ITR1_RMP_0
80 #endif /* TIM8 */
81 #define TIM_TIM2_USBFS_SOF TIM_OR_ITR1_RMP_1
82 #define TIM_TIM2_USBHS_SOF (TIM_OR_ITR1_RMP_1 | TIM_OR_ITR1_RMP_0)
83 #endif /* TIM2 */
84 
85 #define TIM_TIM5_GPIO 0x00000000U
86 #define TIM_TIM5_LSI TIM_OR_TI4_RMP_0
87 #define TIM_TIM5_LSE TIM_OR_TI4_RMP_1
88 #define TIM_TIM5_RTC (TIM_OR_TI4_RMP_1 | TIM_OR_TI4_RMP_0)
90 #define TIM_TIM11_GPIO 0x00000000U
91 #define TIM_TIM11_HSE TIM_OR_TI1_RMP_1
92 #if defined(SPDIFRX)
93 #define TIM_TIM11_SPDIFRX TIM_OR_TI1_RMP_0
94 #endif /* SPDIFRX*/
95 
96 #if defined(LPTIM_OR_TIM1_ITR2_RMP) && defined(LPTIM_OR_TIM5_ITR1_RMP) && defined(LPTIM_OR_TIM5_ITR1_RMP)
97 #define LPTIM_REMAP_MASK 0x10000000U
98 
99 #define TIM_TIM9_TIM3_TRGO LPTIM_REMAP_MASK
100 #define TIM_TIM9_LPTIM (LPTIM_REMAP_MASK | LPTIM_OR_TIM9_ITR1_RMP)
102 #define TIM_TIM5_TIM3_TRGO LPTIM_REMAP_MASK
103 #define TIM_TIM5_LPTIM (LPTIM_REMAP_MASK | LPTIM_OR_TIM5_ITR1_RMP)
105 #define TIM_TIM1_TIM3_TRGO LPTIM_REMAP_MASK
106 #define TIM_TIM1_LPTIM (LPTIM_REMAP_MASK | LPTIM_OR_TIM1_ITR2_RMP)
107 #endif /* LPTIM_OR_TIM1_ITR2_RMP && LPTIM_OR_TIM5_ITR1_RMP && LPTIM_OR_TIM5_ITR1_RMP */
108 
115 /* End of exported constants -------------------------------------------------*/
116 
117 /* Exported macro ------------------------------------------------------------*/
125 /* End of exported macro -----------------------------------------------------*/
126 
127 /* Private macro -------------------------------------------------------------*/
131 #if defined(SPDIFRX)
132 #define IS_TIM_REMAP(INSTANCE, TIM_REMAP) \
133  ((((INSTANCE) == TIM2) && (((TIM_REMAP) == TIM_TIM2_TIM8_TRGO) || \
134  ((TIM_REMAP) == TIM_TIM2_USBFS_SOF) || \
135  ((TIM_REMAP) == TIM_TIM2_USBHS_SOF))) || \
136  (((INSTANCE) == TIM5) && (((TIM_REMAP) == TIM_TIM5_GPIO) || \
137  ((TIM_REMAP) == TIM_TIM5_LSI) || \
138  ((TIM_REMAP) == TIM_TIM5_LSE) || \
139  ((TIM_REMAP) == TIM_TIM5_RTC))) || \
140  (((INSTANCE) == TIM11) && (((TIM_REMAP) == TIM_TIM11_GPIO) || \
141  ((TIM_REMAP) == TIM_TIM11_SPDIFRX) || \
142  ((TIM_REMAP) == TIM_TIM11_HSE))))
143 #elif defined(TIM2)
144 #if defined(LPTIM_OR_TIM1_ITR2_RMP) && defined(LPTIM_OR_TIM5_ITR1_RMP) && defined(LPTIM_OR_TIM5_ITR1_RMP)
145 #define IS_TIM_REMAP(INSTANCE, TIM_REMAP) \
146  ((((INSTANCE) == TIM2) && (((TIM_REMAP) == TIM_TIM2_TIM8_TRGO) || \
147  ((TIM_REMAP) == TIM_TIM2_USBFS_SOF) || \
148  ((TIM_REMAP) == TIM_TIM2_USBHS_SOF))) || \
149  (((INSTANCE) == TIM5) && (((TIM_REMAP) == TIM_TIM5_GPIO) || \
150  ((TIM_REMAP) == TIM_TIM5_LSI) || \
151  ((TIM_REMAP) == TIM_TIM5_LSE) || \
152  ((TIM_REMAP) == TIM_TIM5_RTC))) || \
153  (((INSTANCE) == TIM11) && (((TIM_REMAP) == TIM_TIM11_GPIO) || \
154  ((TIM_REMAP) == TIM_TIM11_HSE))) || \
155  (((INSTANCE) == TIM1) && (((TIM_REMAP) == TIM_TIM1_TIM3_TRGO) || \
156  ((TIM_REMAP) == TIM_TIM1_LPTIM))) || \
157  (((INSTANCE) == TIM5) && (((TIM_REMAP) == TIM_TIM5_TIM3_TRGO) || \
158  ((TIM_REMAP) == TIM_TIM5_LPTIM))) || \
159  (((INSTANCE) == TIM9) && (((TIM_REMAP) == TIM_TIM9_TIM3_TRGO) || \
160  ((TIM_REMAP) == TIM_TIM9_LPTIM))))
161 #elif defined(TIM8)
162 #define IS_TIM_REMAP(INSTANCE, TIM_REMAP) \
163  ((((INSTANCE) == TIM2) && (((TIM_REMAP) == TIM_TIM2_TIM8_TRGO) || \
164  ((TIM_REMAP) == TIM_TIM2_USBFS_SOF) || \
165  ((TIM_REMAP) == TIM_TIM2_USBHS_SOF))) || \
166  (((INSTANCE) == TIM5) && (((TIM_REMAP) == TIM_TIM5_GPIO) || \
167  ((TIM_REMAP) == TIM_TIM5_LSI) || \
168  ((TIM_REMAP) == TIM_TIM5_LSE) || \
169  ((TIM_REMAP) == TIM_TIM5_RTC))) || \
170  (((INSTANCE) == TIM11) && (((TIM_REMAP) == TIM_TIM11_GPIO) || \
171  ((TIM_REMAP) == TIM_TIM11_HSE))))
172 #else
173 #define IS_TIM_REMAP(INSTANCE, TIM_REMAP) \
174  ((((INSTANCE) == TIM2) && (((TIM_REMAP) == TIM_TIM2_ETH_PTP) || \
175  ((TIM_REMAP) == TIM_TIM2_USBFS_SOF) || \
176  ((TIM_REMAP) == TIM_TIM2_USBHS_SOF))) || \
177  (((INSTANCE) == TIM5) && (((TIM_REMAP) == TIM_TIM5_GPIO) || \
178  ((TIM_REMAP) == TIM_TIM5_LSI) || \
179  ((TIM_REMAP) == TIM_TIM5_LSE) || \
180  ((TIM_REMAP) == TIM_TIM5_RTC))) || \
181  (((INSTANCE) == TIM11) && (((TIM_REMAP) == TIM_TIM11_GPIO) || \
182  ((TIM_REMAP) == TIM_TIM11_HSE))))
183 #endif /* LPTIM_OR_TIM1_ITR2_RMP && LPTIM_OR_TIM5_ITR1_RMP && LPTIM_OR_TIM5_ITR1_RMP */
184 #else
185 #define IS_TIM_REMAP(INSTANCE, TIM_REMAP) \
186  ((((INSTANCE) == TIM5) && (((TIM_REMAP) == TIM_TIM5_GPIO) || \
187  ((TIM_REMAP) == TIM_TIM5_LSI) || \
188  ((TIM_REMAP) == TIM_TIM5_LSE) || \
189  ((TIM_REMAP) == TIM_TIM5_RTC))) || \
190  (((INSTANCE) == TIM11) && (((TIM_REMAP) == TIM_TIM11_GPIO) || \
191  ((TIM_REMAP) == TIM_TIM11_HSE))))
192 #endif /* SPDIFRX */
193 
197 /* End of private macro ------------------------------------------------------*/
198 
199 /* Exported functions --------------------------------------------------------*/
208 /* Timer Hall Sensor functions **********************************************/
211 
214 
215 /* Blocking mode: Polling */
218 /* Non-Blocking mode: Interrupt */
221 /* Non-Blocking mode: DMA */
222 HAL_StatusTypeDef HAL_TIMEx_HallSensor_Start_DMA(TIM_HandleTypeDef *htim, uint32_t *pData, uint16_t Length);
232 /* Timer Complementary Output Compare functions *****************************/
233 /* Blocking mode: Polling */
236 
237 /* Non-Blocking mode: Interrupt */
240 
241 /* Non-Blocking mode: DMA */
242 HAL_StatusTypeDef HAL_TIMEx_OCN_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData, uint16_t Length);
252 /* Timer Complementary PWM functions ****************************************/
253 /* Blocking mode: Polling */
256 
257 /* Non-Blocking mode: Interrupt */
260 /* Non-Blocking mode: DMA */
261 HAL_StatusTypeDef HAL_TIMEx_PWMN_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData, uint16_t Length);
271 /* Timer Complementary One Pulse functions **********************************/
272 /* Blocking mode: Polling */
273 HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Start(TIM_HandleTypeDef *htim, uint32_t OutputChannel);
274 HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Stop(TIM_HandleTypeDef *htim, uint32_t OutputChannel);
275 
276 /* Non-Blocking mode: Interrupt */
287 /* Extended Control functions ************************************************/
289  uint32_t CommutationSource);
291  uint32_t CommutationSource);
293  uint32_t CommutationSource);
295  TIM_MasterConfigTypeDef *sMasterConfig);
297  TIM_BreakDeadTimeConfigTypeDef *sBreakDeadTimeConfig);
307 /* Extended Callback **********************************************************/
319 /* Extended Peripheral State functions ***************************************/
328 /* End of exported functions -------------------------------------------------*/
329 
330 /* Private functions----------------------------------------------------------*/
339 /* End of private functions --------------------------------------------------*/
340 
349 #ifdef __cplusplus
350 }
351 #endif
352 
353 
354 #endif /* STM32F4xx_HAL_TIM_EX_H */
355 
356 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
HAL_TIMEx_PWMN_Start
HAL_StatusTypeDef HAL_TIMEx_PWMN_Start(TIM_HandleTypeDef *htim, uint32_t Channel)
HAL_TIMEx_RemapConfig
HAL_StatusTypeDef HAL_TIMEx_RemapConfig(TIM_HandleTypeDef *htim, uint32_t Remap)
HAL_StatusTypeDef
HAL_StatusTypeDef
HAL Status structures definition
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_def.h:40
HAL_TIMEx_HallSensor_MspDeInit
void HAL_TIMEx_HallSensor_MspDeInit(TIM_HandleTypeDef *htim)
HAL_TIMEx_PWMN_Start_DMA
HAL_StatusTypeDef HAL_TIMEx_PWMN_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData, uint16_t Length)
HAL_TIMEx_OCN_Stop_DMA
HAL_StatusTypeDef HAL_TIMEx_OCN_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel)
HAL_TIMEx_CommutHalfCpltCallback
void HAL_TIMEx_CommutHalfCpltCallback(TIM_HandleTypeDef *htim)
__DMA_HandleTypeDef
DMA handle Structure definition.
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_dma.h:139
HAL_TIMEx_OnePulseN_Stop_IT
HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Stop_IT(TIM_HandleTypeDef *htim, uint32_t OutputChannel)
HAL_TIMEx_BreakCallback
void HAL_TIMEx_BreakCallback(TIM_HandleTypeDef *htim)
HAL_TIMEx_HallSensor_MspInit
void HAL_TIMEx_HallSensor_MspInit(TIM_HandleTypeDef *htim)
HAL_TIMEx_ConfigCommutEvent
HAL_StatusTypeDef HAL_TIMEx_ConfigCommutEvent(TIM_HandleTypeDef *htim, uint32_t InputTrigger, uint32_t CommutationSource)
HAL_TIMEx_HallSensor_Start_IT
HAL_StatusTypeDef HAL_TIMEx_HallSensor_Start_IT(TIM_HandleTypeDef *htim)
TIMEx_DMACommutationCplt
void TIMEx_DMACommutationCplt(DMA_HandleTypeDef *hdma)
HAL_TIMEx_PWMN_Start_IT
HAL_StatusTypeDef HAL_TIMEx_PWMN_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel)
HAL_TIMEx_OnePulseN_Start
HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Start(TIM_HandleTypeDef *htim, uint32_t OutputChannel)
HAL_TIMEx_OCN_Stop_IT
HAL_StatusTypeDef HAL_TIMEx_OCN_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel)
HAL_TIMEx_ConfigCommutEvent_IT
HAL_StatusTypeDef HAL_TIMEx_ConfigCommutEvent_IT(TIM_HandleTypeDef *htim, uint32_t InputTrigger, uint32_t CommutationSource)
TIM_HallSensor_InitTypeDef::IC1Filter
uint32_t IC1Filter
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_tim_ex.h:56
TIM_HallSensor_InitTypeDef::IC1Prescaler
uint32_t IC1Prescaler
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_tim_ex.h:53
HAL_TIMEx_OnePulseN_Stop
HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Stop(TIM_HandleTypeDef *htim, uint32_t OutputChannel)
TIM_HallSensor_InitTypeDef
TIM Hall sensor Configuration Structure definition.
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_tim_ex.h:48
HAL_TIMEx_PWMN_Stop_IT
HAL_StatusTypeDef HAL_TIMEx_PWMN_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel)
HAL_TIMEx_PWMN_Stop
HAL_StatusTypeDef HAL_TIMEx_PWMN_Stop(TIM_HandleTypeDef *htim, uint32_t Channel)
stm32f4xx_hal_def.h
This file contains HAL common defines, enumeration, macros and structures definitions.
HAL_TIMEx_OCN_Stop
HAL_StatusTypeDef HAL_TIMEx_OCN_Stop(TIM_HandleTypeDef *htim, uint32_t Channel)
HAL_TIMEx_OCN_Start
HAL_StatusTypeDef HAL_TIMEx_OCN_Start(TIM_HandleTypeDef *htim, uint32_t Channel)
TIM_HandleTypeDef
TIM Time Base Handle Structure definition.
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_tim.h:315
HAL_TIMEx_HallSensor_Stop_DMA
HAL_StatusTypeDef HAL_TIMEx_HallSensor_Stop_DMA(TIM_HandleTypeDef *htim)
HAL_TIMEx_HallSensor_Start_DMA
HAL_StatusTypeDef HAL_TIMEx_HallSensor_Start_DMA(TIM_HandleTypeDef *htim, uint32_t *pData, uint16_t Length)
HAL_TIMEx_HallSensor_Init
HAL_StatusTypeDef HAL_TIMEx_HallSensor_Init(TIM_HandleTypeDef *htim, TIM_HallSensor_InitTypeDef *sConfig)
HAL_TIM_StateTypeDef
HAL_TIM_StateTypeDef
HAL State structures definition.
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_tim.h:288
HAL_TIMEx_HallSensor_Stop
HAL_StatusTypeDef HAL_TIMEx_HallSensor_Stop(TIM_HandleTypeDef *htim)
HAL_TIMEx_CommutCallback
void HAL_TIMEx_CommutCallback(TIM_HandleTypeDef *htim)
TIM_HallSensor_InitTypeDef::IC1Polarity
uint32_t IC1Polarity
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_tim_ex.h:50
HAL_TIMEx_PWMN_Stop_DMA
HAL_StatusTypeDef HAL_TIMEx_PWMN_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel)
HAL_TIMEx_OnePulseN_Start_IT
HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Start_IT(TIM_HandleTypeDef *htim, uint32_t OutputChannel)
HAL_TIMEx_OCN_Start_IT
HAL_StatusTypeDef HAL_TIMEx_OCN_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel)
HAL_TIMEx_HallSensor_Start
HAL_StatusTypeDef HAL_TIMEx_HallSensor_Start(TIM_HandleTypeDef *htim)
TIM_MasterConfigTypeDef
TIM Master configuration Structure definition.
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_tim.h:229
HAL_TIMEx_MasterConfigSynchronization
HAL_StatusTypeDef HAL_TIMEx_MasterConfigSynchronization(TIM_HandleTypeDef *htim, TIM_MasterConfigTypeDef *sMasterConfig)
HAL_TIMEx_HallSensor_GetState
HAL_TIM_StateTypeDef HAL_TIMEx_HallSensor_GetState(TIM_HandleTypeDef *htim)
HAL_TIMEx_ConfigCommutEvent_DMA
HAL_StatusTypeDef HAL_TIMEx_ConfigCommutEvent_DMA(TIM_HandleTypeDef *htim, uint32_t InputTrigger, uint32_t CommutationSource)
TIMEx_DMACommutationHalfCplt
void TIMEx_DMACommutationHalfCplt(DMA_HandleTypeDef *hdma)
HAL_TIMEx_HallSensor_DeInit
HAL_StatusTypeDef HAL_TIMEx_HallSensor_DeInit(TIM_HandleTypeDef *htim)
TIM_HallSensor_InitTypeDef::Commutation_Delay
uint32_t Commutation_Delay
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_tim_ex.h:59
TIM_BreakDeadTimeConfigTypeDef
TIM Break input(s) and Dead time configuration Structure definition.
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_tim.h:265
HAL_TIMEx_ConfigBreakDeadTime
HAL_StatusTypeDef HAL_TIMEx_ConfigBreakDeadTime(TIM_HandleTypeDef *htim, TIM_BreakDeadTimeConfigTypeDef *sBreakDeadTimeConfig)
HAL_TIMEx_OCN_Start_DMA
HAL_StatusTypeDef HAL_TIMEx_OCN_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData, uint16_t Length)
HAL_TIMEx_HallSensor_Stop_IT
HAL_StatusTypeDef HAL_TIMEx_HallSensor_Stop_IT(TIM_HandleTypeDef *htim)


picovoice_driver
Author(s):
autogenerated on Fri Apr 1 2022 02:14:52