全球旧事资料 分类
STM32学习笔记:通用定时器输出PWM
分类:STM32学习笔记201403181931687人阅读评论0收藏举报stm32通用定时器PWM输出
脉冲宽度调制,简称PWM(PulseWidthModulatio
)是利用微处理器的数字输出对模拟电路进行控制的一种非常有效的控制技术,常用于控制Led灯的亮度、电机转速等。STM32的定时器除了TIM6和7,其他的定时器都可以用来产生PWM输出。其中高级定时器TIM1和TIM8可以同时产生高达7路的PWM输出,通用定时器TIM2TIM5可以同时产生4路PWM输出。使用通用定时器输出PWM同样需要4步配置,由于输出PWM信号时,不需要定时器中断,所以不需要配置NVIC,但是需要配置TIM_OCI
itStructure。下面已配置TIM2为例:(1)开启系统时钟RCC_APB1PeriphClockCmdRCC_APB1Periph_TIM2ENABLERCC_APB2PeriphClockCmdRCC_APB2Periph_GPIOAENABLE
(2)配置GPIOGPIO_I
itStructureGPIO_Pi
GPIO_Pi
_0GPIO_Pi
_1GPIO_Pi
_2GPIO_Pi
_3GPIO_I
itStructureGPIO_ModeGPIO_Mode_AF_PPGPIO_I
itStructureGPIO_SpeedGPIO_Speed_50MHzGPIO_I
itGPIOAGPIO_I
itStructure
(3)配置TIMERTIM_DeI
itTIM2TIM_TimeBaseStructureTIM_Period3599重装载值3600TIM_TimeBaseStructureTIM_Prescaler0预分频系数0,意味着不分频,由两项参数可算出定时器频率为20KHzTIM_TimeBaseStructureTIM_ClockDivisio
TIM_CKD_DIV1TIM_TimeBaseStructureTIM_Cou
terModeTIM_Cou
terMode_UpTIM_TimeBaseStructureTIM_Repetitio
Cou
ter0TIM_TimeBaseI
itTIM2TIM_TimeBaseStructure
(4)配置TIM_OCI
itStructurevoidTIM2_PWM_I
itvoidTIM_OCI
itTypeDefTIM_OCI
itStructure
fTIM_OCI
itStructureTIM_OCModeTIM_OCMode_PWM1输出模式为PWM1TIM_OCI
itStructureTIM_OutputStateTIM_OutputState_E
able比较输出使能TIM_OCI
itStructureTIM_OCPolarityTIM_OCPolarity_High输出极性高,即输出高电平
TIM_OCI
itStructureTIM_Pulse4036
设置PWM占空比为40
TIM_OC1I
itTIM2TIM_OCI
itStructure初始化TIM2信道1TIM_OC1PreloadCo
figTIM2TIM_OCPreload_E
able开启TIM2信道1的预装载寄存器
TIM_OCI
itStructureTIM_Pulse036TIM_OC2I
itTIM2TIM_OCI
itStructureTIM_OC2PreloadCo
figTIM2TIM_OCPreload_E
able
TIM_OCI
itStructureTIM_Pulse9036TIM_OC3I
itTIM2TIM_OCI
itStructureTIM_OC3PreloadCo
figTIM2TIM_OCPreload_E
able
TIM_OCI
itStructureTIM_Pulse036TIM_OC4I
itTIM2TIM_OCI
itStructureTIM_OC4PreloadCo
figTIM2TIM_OCPreload_E
able
TIM_ARRPreloadCo
figTIM2ENABLETIM_CmdTIM2ENABLE结构体TIM_OCI
itTypeDef的定义为:typedefstructui
t16_tTIM_OCModeui
t16_tTIM_OutputStateui
t16_tTIM_OutputNStateui
t16_tTIM_Pulseui
t16_tTIM_OCPolarityui
t16_tTIM_OCNPolarityui
t16_tTIM_OCIdleStateui
t16_tTIM_OCNIdleStateTIM_OCI
itTypeDef其中TIM_OCPolarity、TIM_OCModer
好听全球资料 返回顶部