15-HAL库之定时器学习

本文详细介绍了STM32中的三种定时器类型:基本定时器(TIM6/TIM7)、高级定时器(TIM1/TIM8)和通用定时器。基本定时器主要用于简单延时,如通过预分频器和计数器实现1s延时。高级定时器增加了外部引脚,支持输入捕获和输出比较,适用于脉冲宽度测量和波形生成。通用定时器(TIM2/TIM5/TIM3/TIM4)提供了更灵活的通道配置,支持32位计数和多种工作模式。TIM9~TIM15则提供16位计数器和双通道功能。
摘要由CSDN通过智能技术生成

1.基本定时器(TIM6/TIM7)

包含时钟源(CK_INT),1个16位自动重载递增计数器(CK_ARR),1个16位可编程预分频器(CK_PSC),计数器寄存器(CK_CNT),触发DAC的控制器组成。时钟源为APB外设时钟,定时事件生成事件主要由CK_PSC和CK_ARR两个寄存器值觉得。例如需要1s延时,时钟源周期为100us,设置CK_ARR为9999,CK_CNT从0开始到9999,总共技术10000次,即1s后更新事件和中断标志。

 

typedef struct
{
   uint32_t Prescaler;           //预分频系数,0~65535,时钟源经过该系数才是定时器时钟
   uint32_t CounterMode;         //计数模式,向上或向下,基本定时器只有向上
   uint32_t Period;              //时钟周期
   uint32_t ClockDivision;       //时钟分频,基本定时器无此功能
   uint32_t RepetitionCounter;   //重复计数,高级控制定时器所用
   uint32_t AutoReloadPreload;   //自动预装载值
}TIM_Base_InitTypeDef;

应用例子如下:


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值