请选择 进入手机版 | 继续访问电脑版

 找回密码
 立即注册
搜索
查看: 228|回复: 0

STM32 定时器

[复制链接]

263

主题

0

回帖

1028

积分

管理员

积分
1028
发表于 2024-1-1 01:37:18 | 显示全部楼层 |阅读模式

预分频器(TIMx_PSC)

预分频器的值 PSC[15:0],计数器的时钟频率 CK_CNT 等于 fCK_PSC/(PSC[15:0]+1)。也就是说 PSC[15:0] 等于分频数 - 1。

自动重装载寄存器(TIMx_ARR)

自动重装载的值 ARR[15:0],用于作为计数器的初始值(向下计数)或溢出值(向上计数)。下图的 ARR 被设置为 0x36,溢出发生在计数值为 0x36 的后部,所以实际计数了 0x37 个数(从 0 开始)。所以 ARR 的值应该为 计数值 - 1。

PWM

PWM 模式 1

在向上计数时,一旦 TIMx_CNT < TIMx_CCR1 时通道 1 为有效电平,否则为
无效电平;在向下计数时,一旦 TIMx_CNT > TIMx_CCR1 时通道 1 为无效电平(OC1REF=0),否
则为有效电平(OC1REF=1)。

PWM 模式 2

在向上计数时,一旦 TIMx_CNT < TIMx_CCR1 时通道 1 为无效电平,否则为
有效电平;在向下计数时,一旦 TIMx_CNT > TIMx_CCR1 时通道 1 为有效电平,否则为无效电
平。

CC1P:输入/捕获 1 输出极性(Capture/Compare 1 output polarity)
CC1 通道配置为输出:
0:OC1 高电平有效  TIM_OCPolarity_High
1:OC1 低电平有效  TIM_OCPolarity_Low

例如:

TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1; //PMW模式1(向上计数时CNT < CCR2时输出低电平)
TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable;
TIM_OCInitStructure.TIM_Pulse = TIM_TimeBaseStructure.TIM_Period / 2; //50%占空比
TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_Low; //低电平为有效电平
TIM_OC2Init(TIM2, &TIM_OCInitStructure);

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|深圳市棱讯科技有限公司 ( 粤ICP备2024228160号-2 )|网站地图

GMT+8, 2024-5-18 08:48 , Processed in 0.019290 second(s), 19 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表