1. ARM32单片机定时器
2. 定时器概述
定时器是嵌入式系统中常用的一种外设,它可以产生一定的时间间隔、延时、定时等功能,广泛应用于定时、计数、脉冲宽度调制(PWM)等领域。
具体而言,定时器可以实现以下功能:
- 计时:定时器可以用来实现延时操作,例如等待外部设备的稳定、等待数据的接收等,也可以用来定时执行一些任务,例如周期性任务、定时采集数据等。
- 计数:定时器可以用来实现计数功能,例如计数外部事件的次数、计算脉冲信号的频率等。
- PWM输出:定时器可以用来产生PWM信号,通过调节占空比可以实现各种功能,例如LED调光、舵机控制等。
- 中断控制:定时器通常具有中断功能,可以在计数器计数到一定值时触发中断,以实现各种复杂的功能。
3. 定时器的基本原理
定时器本质上就是一个电子计数器
定时器计时上限
预分频器
计数模式
4. GD32F4的定时器
GD32F4一共有14个定时器,可以分为五种类型,高级定时器0/7、通用定时器(L0)1-4、通用定时器(L1)8/11、通用定时器(L2)9/10/12/13和基本定时器5/6。不同类型的定时器所拥有的功能数量不同,一般高级定时器的功能最多,通用定时器次之,基本定时器功能最少。具体功能对照可以查看用户手册的第348页。
4.1 高级定时器
高级定时器(TIMER0 和 TIMER7)是四通道定时器,支持输入捕获和输出比较。可以产生 PWM
信号控制电机和电源管理。高级定时器含有一个 16 位无符号计数器。
高级定时器是可编程的,可以被用来计数,其外部事件可以驱动其他定时器高级定时器包含了一个死区时间插入模块,非常适合电机控制。
4.2 通用定时器L0
通用定时器 L0 (Timer1, 2, 3, 4)是 4 通道定时器,支持输入捕获,输出比较,产生 PWM 信号控制电机和电源管理。
通用定时器 L0 计数器是 16 位无符号计数器。
通用定时器是可编程的,可以被用来计数,其外部事件可以驱动其他定时器。
4.3 通用定时器L1
通用定时器 L1(Timer8, 11)是两通道定时器,支持输入捕获和输出比较,可以产生 PWM 信
号控制电机和电源管理。通用定时器 L1 含有一个 16 位无符号计数器。
通用定时器是可编程的,可以被用来计数,其外部事件可以驱动其他定时器
4.4 通用定时器L2
通用定时器 L2(TIMERx, x=9, 10, 12, 13)是单通道定时器,支持输入捕获和输出比较,产生
PWM 信号控制电机和电源管理。通用定时器 L2 含有一个 16 位无符号计数器。
通用定时器是可编程的,可以被用来计数,其外部事件可以驱动其他定时器
4.5 基本定时器
基本定时器(Timer5, 6)包含一个无符号 16 位计数器。