打印
[其他ST产品]

HAL库—定时器Timer使用及PWM

[复制链接]
877|33
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
51单片机定时对比

51单片机的延时(软件定时):

//由stc软件生成的51延时代码
void Delay500ms() //@11.0592MHz
{
unsigned char i, j, k;
_nop_();
i = 4;
j = 129;
k = 119;
do
{
do
{
while (--k);
} while (--j);
} while (--i);
}


使用特权

评论回复
沙发
有何不可0365|  楼主 | 2023-10-28 23:39 | 只看该作者
缺点:不精确、占用CPU资源

使用特权

评论回复
板凳
有何不可0365|  楼主 | 2023-10-28 23:39 | 只看该作者
stm32定时器工作原理:
使用精准的时基,通过硬件的方式,实现定时功能。定时器核心就是计数器。

使用特权

评论回复
地板
有何不可0365|  楼主 | 2023-10-28 23:39 | 只看该作者
定时器分类:
基本定时器(TIM6~TIM7)
通用定时器(TIM2~TIM5)
高级定时器(TIM1和TIM8)

使用特权

评论回复
5
有何不可0365|  楼主 | 2023-10-28 23:39 | 只看该作者

使用特权

评论回复
6
有何不可0365|  楼主 | 2023-10-28 23:40 | 只看该作者
STM32F103C8T6定时器资源:

使用特权

评论回复
7
有何不可0365|  楼主 | 2023-10-28 23:40 | 只看该作者
通用定时器介绍:

16 位向上、向下、向上/向下自动装载计数器(TIMx_CNT)。

使用特权

评论回复
8
有何不可0365|  楼主 | 2023-10-28 23:40 | 只看该作者
16 位可编程(可以实时修改)预分频器(TIMx_PSC),计数器时钟频率的分频系数为 1~65535 之间的
任意数值。

使用特权

评论回复
9
有何不可0365|  楼主 | 2023-10-28 23:40 | 只看该作者
4 个独立通道(TIMx_CH1~4),这些通道可以用来作为:
A.输入捕获
B.输出比较
C.PWM 生成(边缘或中间对齐模式)
D.单脉冲模式输出

使用特权

评论回复
10
有何不可0365|  楼主 | 2023-10-28 23:40 | 只看该作者
可使用外部信号(TIMx_ETR)控制定时器和定时器互连(可以用 1 个定时器控制另外一个定时器)
的同步电路。

使用特权

评论回复
11
有何不可0365|  楼主 | 2023-10-28 23:40 | 只看该作者
如下事件发生时产生中断/DMA:
A.更新:计数器向上溢出/向下溢出,计数器初始化(通过软件或者内部/外部触发)
B.触发事件(计数器启动、停止、初始化或者由内部/外部触发计数)
C.输入捕获
D.输出比较
E.支持针对定位的增量(正交)编码器和霍尔传感器电路
F.触发输入作为外部时钟或者按周期的电流管理

使用特权

评论回复
12
有何不可0365|  楼主 | 2023-10-28 23:40 | 只看该作者
定时器计数模式:

使用特权

评论回复
13
有何不可0365|  楼主 | 2023-10-28 23:41 | 只看该作者

使用特权

评论回复
14
有何不可0365|  楼主 | 2023-10-28 23:41 | 只看该作者
定时器时钟源:

使用特权

评论回复
15
有何不可0365|  楼主 | 2023-10-28 23:41 | 只看该作者
定时器溢出时间计算公式:

(PSC为分频系数)(ARR为重装载值)(Tout为输出时间(需要))(Tclk为时钟频率)
已知:Tclk = 72MHZ
例如,要定时1000ms,则:PSC=7199,ARR=9999,Tclk=72M

使用特权

评论回复
16
有何不可0365|  楼主 | 2023-10-28 23:41 | 只看该作者
PWM资源
高级定时器(TIM1):7路
通用定时器(TIM2~TIM4):各4路

使用特权

评论回复
17
有何不可0365|  楼主 | 2023-10-28 23:41 | 只看该作者
PWM输出模式:
PWM模式1:在向上计数时,一旦 CNT < CCRx 时输出为有效电平,否则为无效电平; 在向
下计数时,一旦 CNT > CCRx 时输出为无效电平,否则为有效电平。

使用特权

评论回复
18
有何不可0365|  楼主 | 2023-10-28 23:42 | 只看该作者
PWM模式2:在向上计数时,一旦 CNT < CCRx 时输出为无效电平,否则为有效电平; 在向
下计数时,一旦 CNT > CCRx 时输出为有效电平,否则为无效电平。

使用特权

评论回复
19
有何不可0365|  楼主 | 2023-10-28 23:42 | 只看该作者

使用特权

评论回复
20
有何不可0365|  楼主 | 2023-10-28 23:42 | 只看该作者
PWM占空比:由TIMx_CCRx寄存器决定。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

44

主题

737

帖子

0

粉丝