高级控制定时器(TIM1和TIM8)和通用定时器在基本定时器的基础上引入了外部引脚,可以实现输入捕获和输出比较功能。高级控制定时器比通用定时器增加了可编程死区互补输出、重复计数器、带刹车(断路)功能,这些功能都是针对工业电机控制方面。这几个功能在本书不做详细的介绍,主要介绍常用的输入捕获和输出比较功能。 高级控...
uint16_t TIM_OCNIdleState; /*空闲状态时互补通道输出电平设置, 可选输出1或输出0, 即在空闲状态(BDTR_MOE位为0)时, 经过死区时间后定时器互补通道 输出高电平或低电平, 设定值必须与TIM_OCIdleState相反。 设定CR2寄存器的OISxN位的值。*/ } TIM_OCInitTypeDef; 1. 2. 3. 4. 5. 6. 7. 8. 9. ...
TIM_TimeBaseInitTypeDef基本定时结构体 TIM_OCInitTypeDef输出比较结构体 TIM_BDTRInitTypeDef刹车和死区配置结构体 利用三个库函数来实现将结构体赋值到STM32内部寄存器中 TIM_TimeBaseInit (); TIM_OCInit () TIM_BDTRConfig() 下面分别看一下三个结构体的定义: 这三个结构体具体内容看一下stm32f0xx_tim.h文件。
33.5.4.TIM_BDTRInitTypeDef¶ 断路和死区结构体TIM_BDTRInitTypeDef用于断路和死区参数的设置,属于高级定时器专用,用于配置断路时通道输出状态, 以及死区时间。它与TIM_BDTRConfig函数配置使用完成参数配置。这个结构体的成员只对应BDTR这个寄存器,有关成员的具体使用配置请参考手册BDTR寄存器的详细描述。
一般不使用滤波器,设置为0*/}TIM_ICInitTypeDef; 关于捕获通道ICx的信号可来自三个输入通道: TIM_BDTRInitTypeDef 断路和死区结构体,用于断路和死区参数的设置,高级定时器专用。 用于配置断路时,通道输出状态、死区时间。 与TIM_BDTRConfig函数配置使用,完成参数配置。
TIM_TimeBaseStructure.TIM_RepetitionCounter=0; // 初始化定时器 TIM_TimeBaseInit(GENERAL_TIM, &TIM_TimeBaseStructure); (3) 定时器输出比较结构体TIM_OCInitTypeDef初始化 前置知识 TIM_OCInitTypeDef TIM_OCInitStructure; // 配置为PWM模式1 ...
1.TIM_DeInit函数的功能是将外设TIMx寄存器重设为值,其中x可以为2,3,4。 TIM_DeInit(TIM2); 2.TIM_TimeBaseInit函数的功能是根据TIM_TimeBaseInitStruct中指定的参数初始化TIMx的时间基数单位,TIMx可以为1,2,3,4,5,8. TIM_TimeBaseInitTypeDef定义在stm32f10x_tim.h中。
1.TIM_DeInit函数的功能是将外设TIMx寄存器重设为值,其中x可以为2,3,4。 TIM_DeInit(TIM2); 2.TIM_TimeBaseInit函数的功能是根据TIM_TimeBaseInitStruct中指定的参数初始化TIMx的时间基数单位,TIMx可以为1,2,3,4,5,8. TIM_TimeBaseInitTypeDef定义在stm32f10x_tim.h中。
高级控制定时器(TIM1和TIM8)和通用定时器在基本定时器的基础上引入了外部引脚,可以输入捕获和输出比较功能。高级控制定时器比通用定时器增加了可编程死区互补输出、重复计数器、带刹车(断路)功能,这些功能都是针对工业电机控制方面。这几个功能在本书不做详细的介绍,主要介绍常用的输入捕获和输出比较功能。
TIM_BDTRInitStructure.TIM_BreakPolarity = TIM_BreakPolarity_High; TIM_BDTRInitStructure.TIM_AutomaticOutput = TIM_AutomaticOutput_Enable; TIM_BDTRConfig(ADVANCE_TIM, &TIM_BDTRInitStructure); // 使能计数器 TIM_Cmd(ADVANCE_TIM, ENABLE); // 主输出使能,当使用的是通用定时器时,这句不需要 ...