STM32F10x_TIM(7)

2019-05-26 20:52

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


STM32F10x_TIM(7).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:汽车理论试卷青岛理工大学2016年上学期(汽服、车辆专业)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: