TimeBase management functions.
More...
|
void | TIM_DeInit (TIM_TypeDef *TIMx) |
| Deinitializes the TIMx peripheral registers to their default reset values. More...
|
|
void | TIM_TimeBaseInit (TIM_TypeDef *TIMx, TIM_TimeBaseInitTypeDef *TIM_TimeBaseInitStruct) |
| Initializes the TIMx Time Base Unit peripheral according to the specified parameters in the TIM_TimeBaseInitStruct. More...
|
|
void | TIM_TimeBaseStructInit (TIM_TimeBaseInitTypeDef *TIM_TimeBaseInitStruct) |
| Fills each TIM_TimeBaseInitStruct member with its default value. More...
|
|
void | TIM_PrescalerConfig (TIM_TypeDef *TIMx, uint16_t Prescaler, uint16_t TIM_PSCReloadMode) |
| Configures the TIMx Prescaler. More...
|
|
void | TIM_CounterModeConfig (TIM_TypeDef *TIMx, uint16_t TIM_CounterMode) |
| Specifies the TIMx Counter Mode to be used. More...
|
|
void | TIM_SetCounter (TIM_TypeDef *TIMx, uint32_t Counter) |
| Sets the TIMx Counter Register value. More...
|
|
void | TIM_SetAutoreload (TIM_TypeDef *TIMx, uint32_t Autoreload) |
| Sets the TIMx Autoreload Register value. More...
|
|
uint32_t | TIM_GetCounter (TIM_TypeDef *TIMx) |
| Gets the TIMx Counter value. More...
|
|
uint16_t | TIM_GetPrescaler (TIM_TypeDef *TIMx) |
| Gets the TIMx Prescaler value. More...
|
|
void | TIM_UpdateDisableConfig (TIM_TypeDef *TIMx, FunctionalState NewState) |
| Enables or Disables the TIMx Update event. More...
|
|
void | TIM_UpdateRequestConfig (TIM_TypeDef *TIMx, uint16_t TIM_UpdateSource) |
| Configures the TIMx Update Request Interrupt source. More...
|
|
void | TIM_ARRPreloadConfig (TIM_TypeDef *TIMx, FunctionalState NewState) |
| Enables or disables TIMx peripheral Preload register on ARR. More...
|
|
void | TIM_SelectOnePulseMode (TIM_TypeDef *TIMx, uint16_t TIM_OPMode) |
| Selects the TIMx's One Pulse Mode. More...
|
|
void | TIM_SetClockDivision (TIM_TypeDef *TIMx, uint16_t TIM_CKD) |
| Sets the TIMx Clock Division value. More...
|
|
void | TIM_Cmd (TIM_TypeDef *TIMx, FunctionalState NewState) |
| Enables or disables the specified TIM peripheral. More...
|
|
TimeBase management functions.
===============================================================================
TimeBase management functions
===============================================================================
===================================================================
TIM Driver: how to use it in Timing(Time base) Mode
===================================================================
To use the Timer in Timing(Time base) mode, the following steps are mandatory:
1. Enable TIM clock using RCC_APBxPeriphClockCmd(RCC_APBxPeriph_TIMx, ENABLE) function
2. Fill the TIM_TimeBaseInitStruct with the desired parameters.
3. Call TIM_TimeBaseInit(TIMx, &TIM_TimeBaseInitStruct) to configure the Time Base unit
with the corresponding configuration
4. Enable the NVIC if you need to generate the update interrupt.
5. Enable the corresponding interrupt using the function TIM_ITConfig(TIMx, TIM_IT_Update)
6. Call the TIM_Cmd(ENABLE) function to enable the TIM counter.
Note1: All other functions can be used separately to modify, if needed,
a specific feature of the Timer.
void TIM_ARRPreloadConfig |
( |
TIM_TypeDef * |
TIMx, |
|
|
FunctionalState |
NewState |
|
) |
| |
Enables or disables TIMx peripheral Preload register on ARR.
- Parameters
-
TIMx,: | where x can be 1 to 14 to select the TIM peripheral. |
NewState,: | new state of the TIMx peripheral Preload register This parameter can be: ENABLE or DISABLE. |
- Return values
-
void TIM_Cmd |
( |
TIM_TypeDef * |
TIMx, |
|
|
FunctionalState |
NewState |
|
) |
| |
Enables or disables the specified TIM peripheral.
- Parameters
-
TIMx,: | where x can be 1 to 14 to select the TIMx peripheral. |
NewState,: | new state of the TIMx peripheral. This parameter can be: ENABLE or DISABLE. |
- Return values
-
void TIM_CounterModeConfig |
( |
TIM_TypeDef * |
TIMx, |
|
|
uint16_t |
TIM_CounterMode |
|
) |
| |
Specifies the TIMx Counter Mode to be used.
- Parameters
-
TIMx,: | where x can be 1, 2, 3, 4, 5 or 8 to select the TIM peripheral. |
TIM_CounterMode,: | specifies the Counter Mode to be used This parameter can be one of the following values:
- TIM_CounterMode_Up: TIM Up Counting Mode
- TIM_CounterMode_Down: TIM Down Counting Mode
- TIM_CounterMode_CenterAligned1: TIM Center Aligned Mode1
- TIM_CounterMode_CenterAligned2: TIM Center Aligned Mode2
- TIM_CounterMode_CenterAligned3: TIM Center Aligned Mode3
|
- Return values
-
void TIM_DeInit |
( |
TIM_TypeDef * |
TIMx | ) |
|
Deinitializes the TIMx peripheral registers to their default reset values.
- Parameters
-
TIMx,: | where x can be 1 to 14 to select the TIM peripheral. |
- Return values
-
uint32_t TIM_GetCounter |
( |
TIM_TypeDef * |
TIMx | ) |
|
Gets the TIMx Counter value.
- Parameters
-
TIMx,: | where x can be 1 to 14 to select the TIM peripheral. |
- Return values
-
uint16_t TIM_GetPrescaler |
( |
TIM_TypeDef * |
TIMx | ) |
|
Gets the TIMx Prescaler value.
- Parameters
-
TIMx,: | where x can be 1 to 14 to select the TIM peripheral. |
- Return values
-
void TIM_PrescalerConfig |
( |
TIM_TypeDef * |
TIMx, |
|
|
uint16_t |
Prescaler, |
|
|
uint16_t |
TIM_PSCReloadMode |
|
) |
| |
Configures the TIMx Prescaler.
- Parameters
-
TIMx,: | where x can be 1 to 14 to select the TIM peripheral. |
Prescaler,: | specifies the Prescaler Register value |
TIM_PSCReloadMode,: | specifies the TIM Prescaler Reload mode This parameter can be one of the following values:
- TIM_PSCReloadMode_Update: The Prescaler is loaded at the update event.
- TIM_PSCReloadMode_Immediate: The Prescaler is loaded immediatly.
|
- Return values
-
void TIM_SelectOnePulseMode |
( |
TIM_TypeDef * |
TIMx, |
|
|
uint16_t |
TIM_OPMode |
|
) |
| |
Selects the TIMx's One Pulse Mode.
- Parameters
-
TIMx,: | where x can be 1 to 14 to select the TIM peripheral. |
TIM_OPMode,: | specifies the OPM Mode to be used. This parameter can be one of the following values:
- TIM_OPMode_Single
- TIM_OPMode_Repetitive
|
- Return values
-
void TIM_SetAutoreload |
( |
TIM_TypeDef * |
TIMx, |
|
|
uint32_t |
Autoreload |
|
) |
| |
Sets the TIMx Autoreload Register value.
- Parameters
-
TIMx,: | where x can be 1 to 14 to select the TIM peripheral. |
Autoreload,: | specifies the Autoreload register new value. |
- Return values
-
void TIM_SetClockDivision |
( |
TIM_TypeDef * |
TIMx, |
|
|
uint16_t |
TIM_CKD |
|
) |
| |
Sets the TIMx Clock Division value.
- Parameters
-
TIMx,: | where x can be 1 to 14 except 6 and 7, to select the TIM peripheral. |
TIM_CKD,: | specifies the clock division value. This parameter can be one of the following value:
- TIM_CKD_DIV1: TDTS = Tck_tim
- TIM_CKD_DIV2: TDTS = 2*Tck_tim
- TIM_CKD_DIV4: TDTS = 4*Tck_tim
|
- Return values
-
void TIM_SetCounter |
( |
TIM_TypeDef * |
TIMx, |
|
|
uint32_t |
Counter |
|
) |
| |
Sets the TIMx Counter Register value.
- Parameters
-
TIMx,: | where x can be 1 to 14 to select the TIM peripheral. |
Counter,: | specifies the Counter register new value. |
- Return values
-
Initializes the TIMx Time Base Unit peripheral according to the specified parameters in the TIM_TimeBaseInitStruct.
- Parameters
-
TIMx,: | where x can be 1 to 14 to select the TIM peripheral. |
TIM_TimeBaseInitStruct,: | pointer to a TIM_TimeBaseInitTypeDef structure that contains the configuration information for the specified TIM peripheral. |
- Return values
-
Fills each TIM_TimeBaseInitStruct member with its default value.
- Parameters
-
- Return values
-
void TIM_UpdateDisableConfig |
( |
TIM_TypeDef * |
TIMx, |
|
|
FunctionalState |
NewState |
|
) |
| |
Enables or Disables the TIMx Update event.
- Parameters
-
TIMx,: | where x can be 1 to 14 to select the TIM peripheral. |
NewState,: | new state of the TIMx UDIS bit This parameter can be: ENABLE or DISABLE. |
- Return values
-
void TIM_UpdateRequestConfig |
( |
TIM_TypeDef * |
TIMx, |
|
|
uint16_t |
TIM_UpdateSource |
|
) |
| |
Configures the TIMx Update Request Interrupt source.
- Parameters
-
TIMx,: | where x can be 1 to 14 to select the TIM peripheral. |
TIM_UpdateSource,: | specifies the Update source. This parameter can be one of the following values:
- TIM_UpdateSource_Global: Source of update is the counter overflow/underflow or the setting of UG bit, or an update generation through the slave mode controller.
- TIM_UpdateSource_Regular: Source of update is counter overflow/underflow.
|
- Return values
-