114 #ifdef HAL_TIM_MODULE_ENABLED 118 #define BDTR_BKF_SHIFT (16) 119 #define BDTR_BK2F_SHIFT (20) 126 static void TIM_CCxNChannelCmd(
TIM_TypeDef* TIMx, uint32_t Channel, uint32_t ChannelNState);
406 if(((uint32_t)pData == 0 ) && (Length > 0))
632 uint32_t tmpccer = 0;
717 if(((uint32_t)pData == 0 ) && (Length > 0))
1054 uint32_t tmpccer = 0;
1139 if(((uint32_t)pData == 0 ) && (Length > 0))
1705 TIM_OC5_SetConfig(htim->
Instance, sConfig);
1715 TIM_OC6_SetConfig(htim->
Instance, sConfig);
1836 TIM_OC5_SetConfig(htim->
Instance, sConfig);
1853 TIM_OC6_SetConfig(htim->
Instance, sConfig);
1894 uint32_t tmpsmcr = 0;
2116 uint32_t tmpbdtr = 0;
2147 tmpbdtr |= sBreakDeadTimeConfig->
DeadTime;
2148 tmpbdtr |= sBreakDeadTimeConfig->
LockLevel;
2154 tmpbdtr |= (sBreakDeadTimeConfig->
BreakFilter << BDTR_BKF_SHIFT);
2155 tmpbdtr |= (sBreakDeadTimeConfig->
Break2Filter << BDTR_BK2F_SHIFT);
2166 #if defined (STM32F765xx) || defined(STM32F767xx) || defined(STM32F769xx) || defined(STM32F777xx) || defined(STM32F779xx) 2178 uint32_t BreakInput,
2179 TIMEx_BreakInputConfigTypeDef *sBreakInputConfig)
2182 uint32_t tmporx = 0;
2183 uint32_t bkin_enable_mask = 0;
2184 uint32_t bkin_enable_bitpos = 0;
2189 assert_param(IS_TIM_BREAKINPUTSOURCE(sBreakInputConfig->Source));
2190 assert_param(IS_TIM_BREAKINPUTSOURCE_STATE(sBreakInputConfig->Enable));
2195 switch(sBreakInputConfig->Source)
2197 case TIM_BREAKINPUTSOURCE_BKIN:
2200 bkin_enable_bitpos = 0;
2204 case TIM_BREAKINPUTSOURCE_DFSDM1:
2207 bkin_enable_bitpos = 8;
2217 case TIM_BREAKINPUT_BRK:
2223 tmporx &= ~bkin_enable_mask;
2224 tmporx |= (sBreakInputConfig->Enable << bkin_enable_bitpos) & bkin_enable_mask;
2230 case TIM_BREAKINPUT_BRK2:
2236 tmporx &= ~bkin_enable_mask;
2237 tmporx |= (sBreakInputConfig->Enable << bkin_enable_bitpos) & bkin_enable_mask;
2440 static void TIM_CCxNChannelCmd(
TIM_TypeDef* TIMx, uint32_t Channel, uint32_t ChannelNState)
2454 TIMx->
CCER |= (uint32_t)(ChannelNState << Channel);
2465 uint32_t tmpccmrx = 0;
2466 uint32_t tmpccer = 0;
2467 uint32_t tmpcr2 = 0;
2473 tmpccer = TIMx->
CCER;
2477 tmpccmrx = TIMx->
CCMR3;
2482 tmpccmrx |= OC_Config->
OCMode;
2500 TIMx->
CCMR3 = tmpccmrx;
2506 TIMx->
CCER = tmpccer;
2517 uint32_t tmpccmrx = 0;
2518 uint32_t tmpccer = 0;
2519 uint32_t tmpcr2 = 0;
2525 tmpccer = TIMx->
CCER;
2529 tmpccmrx = TIMx->
CCMR3;
2534 tmpccmrx |= (OC_Config->
OCMode << 8);
2553 TIMx->
CCMR3 = tmpccmrx;
2559 TIMx->
CCER = tmpccer;
HAL_StatusTypeDef HAL_TIMEx_HallSensor_Stop(TIM_HandleTypeDef *htim)
HAL_TIM_StateTypeDef
HAL State structures definition.
#define TIM_SLAVEMODE_RESET
HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Stop(TIM_HandleTypeDef *htim, uint32_t OutputChannel)
#define __HAL_TIM_DISABLE_DMA(__HANDLE__, __DMA__)
HAL_StatusTypeDef HAL_TIM_ConfigOCrefClear(TIM_HandleTypeDef *htim, TIM_ClearInputConfigTypeDef *sClearInputConfig, uint32_t Channel)
TIM Hall sensor Configuration Structure definition.
HAL_StatusTypeDef HAL_TIMEx_PWMN_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel)
TIM Master configuration Structure definition.
DMA_HandleTypeDef * hdma[7]
HAL_StatusTypeDef HAL_TIMEx_HallSensor_Stop_DMA(TIM_HandleTypeDef *htim)
#define assert_param(expr)
Include module's header file.
TIM Output Compare Configuration Structure definition.
#define IS_TIM_ADVANCED_INSTANCE(__INSTANCE__)
#define IS_TIM_TRGO_SOURCE(__SOURCE__)
#define IS_TIM_CC3_INSTANCE(__INSTANCE__)
HAL_StatusTypeDef HAL_TIMEx_HallSensor_DeInit(TIM_HandleTypeDef *htim)
void HAL_TIM_DMAError(DMA_HandleTypeDef *hdma)
HAL_StatusTypeDef HAL_TIMEx_PWMN_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData, uint16_t Length)
HAL_StatusTypeDef HAL_TIMEx_OCN_Start(TIM_HandleTypeDef *htim, uint32_t Channel)
#define IS_TIM_CC6_INSTANCE(__INSTANCE__)
#define IS_TIM_OSSI_STATE(__STATE__)
void TIM_CCxChannelCmd(TIM_TypeDef *TIMx, uint32_t Channel, uint32_t ChannelState)
void TIM_OC3_SetConfig(TIM_TypeDef *TIMx, TIM_OC_InitTypeDef *OC_Config)
HAL_StatusTypeDef HAL_TIMEx_OCN_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel)
#define __HAL_UNLOCK(__HANDLE__)
HAL_StatusTypeDef HAL_TIMEx_ConfigCommutationEvent(TIM_HandleTypeDef *htim, uint32_t InputTrigger, uint32_t CommutationSource)
void HAL_TIMEx_BreakCallback(TIM_HandleTypeDef *htim)
#define IS_TIM_COUNTER_MODE(__MODE__)
#define IS_TIM_OSSR_STATE(__STATE__)
HAL_StatusTypeDef HAL_TIMEx_MasterConfigSynchronization(TIM_HandleTypeDef *htim, TIM_MasterConfigTypeDef *sMasterConfig)
HAL_StatusTypeDef HAL_DMA_Start_IT(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32_t DataLength)
void TIM_OC1_SetConfig(TIM_TypeDef *TIMx, TIM_OC_InitTypeDef *OC_Config)
#define __HAL_TIM_DISABLE(__HANDLE__)
Disable the TIM peripheral.
void HAL_TIMEx_HallSensor_MspInit(TIM_HandleTypeDef *htim)
#define IS_TIM_CC5_INSTANCE(__INSTANCE__)
HAL_StatusTypeDef HAL_TIMEx_GroupChannel5(TIM_HandleTypeDef *htim, uint32_t OCRef)
TIM Break input(s) and Dead time configuration Structure definition.
HAL_StatusTypeDef HAL_TIM_PWM_ConfigChannel(TIM_HandleTypeDef *htim, TIM_OC_InitTypeDef *sConfig, uint32_t Channel)
HAL_StatusTypeDef HAL_TIMEx_PWMN_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel)
void HAL_TIM_DMADelayPulseCplt(DMA_HandleTypeDef *hdma)
#define IS_TIM_CLEARINPUT_FILTER(__ICFILTER__)
#define IS_TIM_XOR_INSTANCE(__INSTANCE__)
HAL_StatusTypeDef HAL_TIM_OC_ConfigChannel(TIM_HandleTypeDef *htim, TIM_OC_InitTypeDef *sConfig, uint32_t Channel)
#define IS_TIM_CCXN_INSTANCE(__INSTANCE__, __CHANNEL__)
uint32_t OffStateIDLEMode
HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Start_IT(TIM_HandleTypeDef *htim, uint32_t OutputChannel)
#define IS_TIM_GROUPCH5(OCREF)
#define IS_TIM_CLEARINPUT_SOURCE(MODE)
HAL_StatusTypeDef HAL_TIMEx_HallSensor_Start_IT(TIM_HandleTypeDef *htim)
void HAL_TIMEx_HallSensor_MspDeInit(TIM_HandleTypeDef *htim)
void HAL_TIMEx_CommutationCallback(TIM_HandleTypeDef *htim)
__IO HAL_TIM_StateTypeDef State
#define __HAL_TIM_ENABLE_DMA(__HANDLE__, __DMA__)
#define IS_TIM_IC_POLARITY(__POLARITY__)
void TIM_ETR_SetConfig(TIM_TypeDef *TIMx, uint32_t TIM_ExtTRGPrescaler, uint32_t TIM_ExtTRGPolarity, uint32_t ExtTRGFilter)
#define IS_TIM_INTERNAL_TRIGGEREVENT_SELECTION(__SELECTION__)
void TIM_OC4_SetConfig(TIM_TypeDef *TIMx, TIM_OC_InitTypeDef *OC_Config)
HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Start(TIM_HandleTypeDef *htim, uint32_t OutputChannel)
void(* XferCpltCallback)(struct __DMA_HandleTypeDef *hdma)
#define __HAL_LOCK(__HANDLE__)
#define TIM_OCNIDLESTATE_RESET
void HAL_TIM_DMACaptureCplt(DMA_HandleTypeDef *hdma)
#define IS_TIM_FAST_STATE(__STATE__)
HAL_StatusTypeDef HAL_TIMEx_HallSensor_Init(TIM_HandleTypeDef *htim, TIM_HallSensor_InitTypeDef *sConfig)
#define IS_TIM_COMPLEMENTARY_CHANNELS(CHANNEL)
#define __HAL_TIM_MOE_DISABLE(__HANDLE__)
Disable the TIM main Output.
#define TIM_OCFAST_DISABLE
#define IS_TIM_BREAK_STATE(__STATE__)
HAL_StatusTypeDef HAL_TIMEx_OCN_Stop(TIM_HandleTypeDef *htim, uint32_t Channel)
HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Stop_IT(TIM_HandleTypeDef *htim, uint32_t OutputChannel)
#define __HAL_TIM_MOE_ENABLE(__HANDLE__)
Enable the TIM main Output.
This file contains all the functions prototypes for the HAL module driver.
#define IS_TIM_OC_POLARITY(__POLARITY__)
HAL_StatusTypeDef HAL_TIMEx_ConfigCommutationEvent_IT(TIM_HandleTypeDef *htim, uint32_t InputTrigger, uint32_t CommutationSource)
#define IS_TIM_MSM_STATE(__STATE__)
uint32_t Commutation_Delay
#define IS_TIM_COMBINED3PHASEPWM_INSTANCE(__INSTANCE__)
HAL_StatusTypeDef HAL_TIMEx_OCN_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData, uint16_t Length)
#define IS_TIM_BREAK_INSTANCE(__INSTANCE__)
#define IS_TIM_BREAK2_STATE(STATE)
#define IS_TIM_OCXREF_CLEAR_INSTANCE(__INSTANCE__)
#define IS_TIM_DEADTIME(__DEADTIME__)
#define IS_TIM_OC_MODE(MODE)
#define IS_TIM_CC2_INSTANCE(__INSTANCE__)
uint32_t MasterOutputTrigger
#define TIM_OCPOLARITY_HIGH
#define IS_TIM_CLOCKDIVISION_DIV(__DIV__)
HAL_StatusTypeDef HAL_TIMEx_HallSensor_Stop_IT(TIM_HandleTypeDef *htim)
uint32_t MasterOutputTrigger2
HAL_StatusTypeDef HAL_TIMEx_PWMN_Start(TIM_HandleTypeDef *htim, uint32_t Channel)
TIM Time Base Handle Structure definition.
void TIM_Base_SetConfig(TIM_TypeDef *TIMx, TIM_Base_InitTypeDef *Structure)
#define IS_TIM_TRGO2_SOURCE(SOURCE)
HAL_StatusTypeDef HAL_TIMEx_ConfigCommutationEvent_DMA(TIM_HandleTypeDef *htim, uint32_t InputTrigger, uint32_t CommutationSource)
#define IS_TIM_INSTANCE(__INSTANCE__)
#define IS_TIM_CLEARINPUT_POLARITY(__POLARITY__)
#define IS_TIM_IC_FILTER(ICFILTER)
HAL_StatusTypeDef HAL_TIMEx_RemapConfig(TIM_HandleTypeDef *htim, uint32_t Remap)
HAL_StatusTypeDef HAL_TIMEx_OCN_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel)
#define IS_TIM_LOCK_LEVEL(__LEVEL__)
HAL_StatusTypeDef HAL_TIMEx_ConfigBreakDeadTime(TIM_HandleTypeDef *htim, TIM_BreakDeadTimeConfigTypeDef *sBreakDeadTimeConfig)
#define IS_TIM_BREAK_FILTER(__FILTER__)
DMA handle Structure definition.
#define IS_TIM_CC4_INSTANCE(__INSTANCE__)
#define IS_TIM_CLEARINPUT_PRESCALER(__PRESCALER__)
HAL_TIM_StateTypeDef HAL_TIMEx_HallSensor_GetState(TIM_HandleTypeDef *htim)
#define IS_TIM_BREAK_POLARITY(__POLARITY__)
#define IS_TIM_CHANNELS(CHANNEL)
TIM_Base_InitTypeDef Init
HAL_StatusTypeDef HAL_TIMEx_PWMN_Stop(TIM_HandleTypeDef *htim, uint32_t Channel)
#define TIM1_AF1_BKDF1BKE
#define __HAL_TIM_DISABLE_IT(__HANDLE__, __INTERRUPT__)
#define IS_TIM_BREAK2_POLARITY(__POLARITY__)
#define IS_TIM_SYNCHRO_INSTANCE(__INSTANCE__)
HAL_StatusTypeDef HAL_TIMEx_PWMN_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel)
HAL_StatusTypeDef
HAL Status structures definition.
HAL_StatusTypeDef HAL_TIMEx_OCN_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel)
#define __HAL_TIM_ENABLE_IT(__HANDLE__, __INTERRUPT__)
HAL_StatusTypeDef HAL_TIMEx_HallSensor_Start(TIM_HandleTypeDef *htim)
void TIM_OC2_SetConfig(TIM_TypeDef *TIMx, TIM_OC_InitTypeDef *OC_Config)
void(* XferErrorCallback)(struct __DMA_HandleTypeDef *hdma)
HAL_StatusTypeDef HAL_TIMEx_HallSensor_Start_DMA(TIM_HandleTypeDef *htim, uint32_t *pData, uint16_t Length)
#define IS_TIM_REMAP_INSTANCE(__INSTANCE__)
#define __HAL_TIM_ENABLE(__HANDLE__)
Enable the TIM peripheral.
void TIM_TI1_SetConfig(TIM_TypeDef *TIMx, uint32_t TIM_ICPolarity, uint32_t TIM_ICSelection, uint32_t TIM_ICFilter)
#define IS_TIM_PWM_MODE(MODE)
#define TIM_OCNPOLARITY_HIGH
#define TIM_DMA_ID_COMMUTATION
void HAL_TIMEx_DMACommutationCplt(DMA_HandleTypeDef *hdma)
#define IS_TIM_REMAP(__TIM_REMAP__)
#define TIM_OCIDLESTATE_RESET
#define IS_TIM_IC_PRESCALER(__PRESCALER__)
#define IS_TIM_CC1_INSTANCE(__INSTANCE__)
#define IS_TIM_TRGO2_INSTANCE(__INSTANCE__)
#define IS_TIM_AUTOMATIC_OUTPUT_STATE(__STATE__)