tmpccmr1 |= TIM_OCFast;
/* Write to TIMx CCMR1 */ TIMx->CCMR1 = tmpccmr1; }
19.2.32 函数TIM_OC2FastConfig
Table 516. 函数TIM_OC2FastConfig 函数名 TIM_OC2FastConfig 函数原形 void TIM_OC2FastConfig(TIM_TypeDef* TIMx, u16 TIM_OCFast) 功能描述 设置TIMx捕获比较2快速特征 输入参数 1 TIMx:x 可以是1,2,3,4,5,8,来选择TIM外设 输入参数 2 TIM_OCFast:输出比较快速特征状态 输出参数 无 返回值 无 先决条件 无 被调用函数 无 TIM_OCFast :输出比较快速特征性能可以使能或者失能。【同TIM_OC1FastConfig】 TIM_OCFast 描述/CCMR1.OC1FE/bit2 #define值 TIM_OCFast_Enable TIMx输出比较快速特征性能使能 0x0004 TIM_OCFast_Disable TIMx输出比较快速特征性能失能 0x0000 例:
/* Use the TIM2 OC2 in fast Mode */
TIM_OC2FastConfig(TIM2, TIM_OCFast_Enable); 函数原型如下:
void TIM_OC2FastConfig(TIM_TypeDef* TIMx, u16 TIM_OCFast) {
u16 tmpccmr1 = 0;
/* Check the parameters */
assert_param(IS_TIM_123458_PERIPH(TIMx));
assert_param(IS_TIM_OCFAST_STATE(TIM_OCFast));
/* Get the TIMx CCMR1 register value */ tmpccmr1 = TIMx->CCMR1;
/* Reset the OC2FE Bit */
tmpccmr1 &= CCMR_OC24FE_Reset;//CCMR1.bit10//0xFBFF// =1时,OCFE只在通道被配置成PWM1或PWM2模式时起作用
/* Enable or Disable the Output Compare Fast Bit */
tmpccmr1 |= (u16)(TIM_OCFast << 8);// CCMR1.OC2FE比CCMR1.OC1FE高8位
/* Write to TIMx CCMR1 */ TIMx->CCMR1 = tmpccmr1; }
19.2.33 函数TIM_OC3FastConfig
Table 517. 函数TIM_OC3FastConfig 函数名 TIM_OC3FastConfig 函数原形 void TIM_OC3FastConfig(TIM_TypeDef* TIMx, u16 TIM_OCFast) 功能描述 设置TIMx捕获比较3快速特征 输入参数 1 TIMx:x 可以是1,2,3,4,5,8,来选择TIM外设 输入参数 2 TIM_OCFast:输出比较快速特征状态 输出参数 无 返回值 无 先决条件 无 被调用函数 无 TIM_OCFast :输出比较快速特征性能可以使能或者失能。【同TIM_OC1FastConfig】 TIM_OCFast 描述/CCMR1.OC1FE/bit2 #define值 TIM_OCFast_Enable TIMx输出比较快速特征性能使能 0x0004 TIM_OCFast_Disable TIMx输出比较快速特征性能失能 0x0000 例:
/* Use the TIM2 OC3 in fast Mode */
TIM_OC3FastConfig(TIM2, TIM_OCFast_Enable); 函数原型如下:
void TIM_OC3FastConfig(TIM_TypeDef* TIMx, u16 TIM_OCFast) {
u16 tmpccmr2 = 0;
/* Check the parameters */
assert_param(IS_TIM_123458_PERIPH(TIMx));
assert_param(IS_TIM_OCFAST_STATE(TIM_OCFast));
/* Get the TIMx CCMR2 register value */ tmpccmr2 = TIMx->CCMR2;
/* Reset the OC3FE Bit */
tmpccmr2 &= CCMR_OC13FE_Reset;//0xFFFB,CCMR2.bit2 // =1时,OCFE只在通道被配置成PWM1或PWM2模式时起作用
/* Enable or Disable the Output Compare Fast Bit */ tmpccmr2 |= TIM_OCFast;
/* Write to TIMx CCMR2 */ TIMx->CCMR2 = tmpccmr2; }
19.2.34 函数TIM_OC4FastConfig
Table 518. 函数 TIM_OC4FastConfig 函数名 TIM_OC4FastConfig 函数原形 void TIM_OC4FastConfig(TIM_TypeDef* TIMx, u16 TIM_OCFast) 功能描述 设置TIMx捕获比较4快速特征 输入参数 1 TIMx:x 可以是1,2,3,4,5,8,来选择TIM外设 输入参数 2 TIM_OCFast:输出比较快速特征状态 输出参数 无 返回值 无 先决条件 无 被调用函数 无 TIM_OCFast :输出比较快速特征性能可以使能或者失能。【同TIM_OC1FastConfig】 TIM_OCFast 描述/CCMR1.OC1FE/bit2 #define值 TIM_OCFast_Enable TIMx输出比较快速特征性能使能 0x0004 TIM_OCFast_Disable TIMx输出比较快速特征性能失能 0x0000 例:
/* Use the TIM2 OC4 in fast Mode */
TIM_OC4FastConfig(TIM2, TIM_OCFast_Enable); 函数原型如下:
void TIM_OC4FastConfig(TIM_TypeDef* TIMx, u16 TIM_OCFast) {
u16 tmpccmr2 = 0;
/* Check the parameters */
assert_param(IS_TIM_123458_PERIPH(TIMx));
assert_param(IS_TIM_OCFAST_STATE(TIM_OCFast));
/* Get the TIMx CCMR2 register value */ tmpccmr2 = TIMx->CCMR2;
/* Reset the OC4FE Bit */
tmpccmr2 &= CCMR_OC24FE_Reset;//0xFBFF,CCMR2.bit10// =1时,OCFE只在通道被配置成PWM1或PWM2模式时起作用
/* Enable or Disable the Output Compare Fast Bit */
tmpccmr2 |= (u16)(TIM_OCFast << 8); // CCMR1.OC2FE比CCMR1.OC1FE高8位
/* Write to TIMx CCMR2 */ TIMx->CCMR2 = tmpccmr2; }
19.2.35 函数TIM_ClearOC1Ref
Table 519. 函数 TIM_ClearOC1Ref 函数名 TIM_ClearOC1Ref 函数原形 void TIM_ClearOC1Ref(TIM_TypeDef* TIMx, u16 TIM_OCClear) 功能描述 在一个外部事件(ETRF高电平)时清除或保持OCREF1信号 输入参数1 TIMx:x 可以是1,2,3,4,5,8,来选择TIM外设 输入参数2 TIM_OCClear:输出比较清除使能位状态 输出参数 无 返回值 无 先决条件 无 被调用函数 无 TIM_OCClear:输出比较清除使能位的值列举如下表。 Table 520. TIM_OCClear值 TIM_OCClear 描述/CCMR1.bit7 #define值 TIM_OCClear_Enable TIMx输出比较清除使能 0x0080 TIM_OCClear_Disable TIMx输出比较清除失能 0x0000 例:
/* Enable the TIM2 Channel1 Ouput Compare Refence clear bit */ TIM_ClearOC1Ref(TIM2, TIM_OCClear_Enable); 函数原型如下:
void TIM_ClearOC1Ref(TIM_TypeDef* TIMx, u16 TIM_OCClear) {
u16 tmpccmr1 = 0;
/* Check the parameters */
assert_param(IS_TIM_123458_PERIPH(TIMx));
assert_param(IS_TIM_OCCLEAR_STATE(TIM_OCClear));
tmpccmr1 = TIMx->CCMR1;
/* Reset the OC1CE Bit */
tmpccmr1 &= CCMR_OC13CE_Reset;//0xFF7F,CCMR1.bit7//=1(一旦检测到ETRF输入高电平,清除OCxREF=0)
/* Enable or Disable the Output Compare Clear Bit */ tmpccmr1 |= TIM_OCClear;
/* Write to TIMx CCMR1 register */ TIMx->CCMR1 = tmpccmr1; }
19.2.36 函数TIM_ClearOC2Ref
Table 521. 函数 TIM_ClearOC2Ref 函数名 TIM_ClearOC2Ref 函数原形 void TIM_ClearOC2Ref(TIM_TypeDef* TIMx, u16 TIM_OCClear) 功能描述 在一个外部事件(ETRF高电平)时清除或保持OCREF2信号 输入参数 1 TIMx:x 可以是1,2,3,4,5,8来选择TIM外设 输入参数 2 TIM_OCClear:输出比较清除使能位状态 输出参数 无 返回值 无 先决条件 无 被调用函数 无 TIM_OCClear:输出比较清除使能位的值列举如下表。 【TIM_ClearOC1Ref】 TIM_OCClear 描述/CCMR1.bit7 #define值 TIM_OCClear_Enable TIMx输出比较清除使能 0x0080 TIM_OCClear_Disable TIMx输出比较清除失能 0x0000 例: /* Enable the TIM2 Channel2 Ouput Compare Refence clear bit */ TIM_ClearOC2Ref(TIM2, TIM_OCClear_Enable); 函数原型如下:
void TIM_ClearOC2Ref(TIM_TypeDef* TIMx, u16 TIM_OCClear) {
u16 tmpccmr1 = 0;
/* Check the parameters */
assert_param(IS_TIM_123458_PERIPH(TIMx));
assert_param(IS_TIM_OCCLEAR_STATE(TIM_OCClear));
tmpccmr1 = TIMx->CCMR1;
/* Reset the OC2CE Bit */
tmpccmr1 &= CCMR_OC24CE_Reset;//0x7FFF,CCMR1.bit15//=1(一旦检测到ETRF输入高电平,清除OCxREF=0)
/* Enable or Disable the Output Compare Clear Bit */
tmpccmr1 |= (u16)(TIM_OCClear << 8);// CCMR1.OC2CE比CCMR1.OC1CE高8位
/* Write to TIMx CCMR1 register */ TIMx->CCMR1 = tmpccmr1; }
19.2.37 函数TIM_ClearOC3Ref
Table 522. 函数TIM_ClearOC3Ref 函数名 TIM_ClearOC3Ref 函数原形 void TIM_ClearOC3Ref(TIM_TypeDef* TIMx, u16 TIM_OCClear) 功能描述 在一个外部事件(ETRF高电平)时清除或者保持OCREF3信号 输入参数1 TIMx:x 可以是1,2,3,4,5,8来选择TIM外设 输入参数2 TIM_OCClear:输出比较清除使能位状态 输出参数 无 返回值 无 先决条件 无 被调用函数 无 TIM_OCClear:输出比较清除使能位的值列举如下表。 【TIM_ClearOC1Ref】 TIM_OCClear 描述/CCMR1.bit7 #define值 TIM_OCClear_Enable TIMx输出比较清除使能 0x0080 TIM_OCClear_Disable TIMx输出比较清除失能 0x0000 例: /* Enable the TIM2 Channel3 Ouput Compare Refence clear bit */ TIM_ClearOC3Ref(TIM2, TIM_OCClear_Enable); 函数原型如下:
void TIM_ClearOC3Ref(TIM_TypeDef* TIMx, u16 TIM_OCClear) {
u16 tmpccmr2 = 0;
/* Check the parameters */
assert_param(IS_TIM_123458_PERIPH(TIMx));
assert_param(IS_TIM_OCCLEAR_STATE(TIM_OCClear));
tmpccmr2 = TIMx->CCMR2;
/* Reset the OC3CE Bit */
tmpccmr2 &= CCMR_OC13CE_Reset;//0xFF7F, CCMR1.bit7//=1(一旦检测到ETRF输入高电平,清除OCxREF=0)
/* Enable or Disable the Output Compare Clear Bit */ tmpccmr2 |= TIM_OCClear;
/* Write to TIMx CCMR2 register */ TIMx->CCMR2 = tmpccmr2; }
19.2.38 函数TIM_ClearOC4Ref
Table 523. 函数TIM_ClearOC4Ref 函数名 TIM_ClearOC4Ref 函数原形 void TIM_ClearOC4Ref(TIM_TypeDef* TIMx, u16 TIM_OCClear) 功能描述 在一个外部事件(ETRF高电平)时清除或保持OCREF4信号 输入参数1 TIMx:x 可以是1,2,3,4,5,8来选择TIM外设 输入参数2 TIM_OCClear:输出比较清除使能位状态 输出参数 无 返回值 无 先决条件 无 被调用函数 无 TIM_OCClear:输出比较清除使能位的值列举如下表。 【TIM_ClearOC1Ref】
TIM_OCClear 描述/CCMR1.bit7 #define值 TIM_OCClear_Enable TIMx输出比较清除使能 0x0080 TIM_OCClear_Disable TIMx输出比较清除失能 0x0000 例:
/* Enable the TIM2 Channel4 Ouput Compare Refence clear bit */ TIM_ClearOC4Ref(TIM2, TIM_OCClear_Enable); 函数原型如下:
void TIM_ClearOC4Ref(TIM_TypeDef* TIMx, u16 TIM_OCClear) {
u16 tmpccmr2 = 0;
/* Check the parameters */
assert_param(IS_TIM_123458_PERIPH(TIMx));
assert_param(IS_TIM_OCCLEAR_STATE(TIM_OCClear));
tmpccmr2 = TIMx->CCMR2;
/* Reset the OC4CE Bit */
tmpccmr2 &= CCMR_OC24CE_Reset; //0x7FFF,CCMR2.bit15//=1(一旦检测到ETRF输入高电平,清除OCxREF=0)
/* Enable or Disable the Output Compare Clear Bit */
tmpccmr2 |= (u16)(TIM_OCClear << 8); // CCMR2.OC2CE比CCMR2.OC1CE高8位
/* Write to TIMx CCMR2 register */ TIMx->CCMR2 = tmpccmr2; }
19.2.39 函数TIM_UpdateDisableConfig
Table 524. 函数TIM_UpdateDisableConfig 函数名 TIM_UpdateDisableConfig void TIM_UpdateDisableConfig(TIM_TypeDef* TIMx, 函数原形 FunctionalState Newstate) 功能描述 使能或失能TIMx更新事件 输入参数 1 TIMx:x 可以是1,2,3,4,5,6,7,8来选择TIM外设 输入参数 2 NewState:TIMx_CR1寄存器UDIS位的新状态(ENABLE或DISABLE) 输出参数 无 返回值 无 先决条件 无 被调用函数 无 例: /* Enables the Update event for TIM2 */ TIM_UpdateDisableConfig(TIM2, DISABLE); 函数原型如下:
void TIM_UpdateDisableConfig(TIM_TypeDef* TIMx, FunctionalState NewState) {
/* Check the parameters */
assert_param(IS_TIM_ALL_PERIPH(TIMx));
assert_param(IS_FUNCTIONAL_STATE(NewState));
if (NewState != DISABLE) {
/* Set the Update Disable Bit */
TIMx->CR1 |= CR1_UDIS_Set;// #define CR1_UDIS_Set ((u16)0x0002)//=1-禁止更新,0-允许更新 } else {
/* Reset the Update Disable Bit */
TIMx->CR1 &= CR1_UDIS_Reset;// #define CR1_UDIS_Reset ((u16)0x03FD)//bit15-10(6bit)保留 } }
19.2.40 函数TIM_EncoderInterfaceConfig
Table 525. 函数TIM_EncoderInterfaceConfig 函数名 TIM_EncoderInterfaceConfig