完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
简介
STM32f103系列一共有8个16位的定时器; 其中TIM6、TIM7是基本定时器,TIM2、3、4、5是通用定时器,TIM1、8是高级定时器; 这些定时器使STM32具有定时、信号的频率测量、信号的PWM测量、PWM输出、三相6步电机控制及编码器接口等功能,适用于工业控制领域。 定时器工作分析 基本定时器 基本定时器只具备最基本的定时功能,就是累加的时钟脉冲数超过预定值时,能触发中断或触发DMA请求; 芯片内部与DAC外设相连,可通过触发输出驱动DAC,也可以作为其他通用定时器的时钟基准; 使用的时钟源都是TIMxCLK,时钟源经过预分频器输入至脉冲计数器TIMx_CNT,基本定时器只能工作在向上计数模式,在重载寄存器TIMx_ARR中保存的是定时器的溢出值; 工作时,脉冲计数器TIMx_CNT由时钟触发进行计数,当计数器的值x等于重载寄存器中保存的数值N时,产生溢出事件,可触发中断或DMA请求,然后计数器重新置0,重新向上计数; 通用定时器 通用定时器除了基本的定时,它主要用在测量输入脉冲的频率、脉宽与输出PEM脉冲的场合,还具有编码器的接口,如下图所示: 1.捕获/比较寄存器 它在输入时被用于捕获(存储)输入脉冲在电平发生翻转时脉冲计数器的当前计数值,从而实现脉冲的频率测量; 在输出时被用来存储一个脉冲数值,把这个数值用于与脉冲计数器的当前计数值进行比较,根据比较结果进行不同的电平输出。 2.PWM输出过程分析 若配置脉冲计数器为向上计数,而重载寄存器被配置为N,即计数器的当前值x在时钟源的驱动下不断累加,当计数器的值大于N时,回充值计数器的数值为0并重新计数; 在计数器计数的同时,计数器的计数值x会与比较寄存器TIMx_CCR预先存储的数值A进行比较。当计数器的值小于A时,输出高电平(或低电平),相反则反之; 循环下去即得到的输出脉冲周期就为重载寄存器TIMx_ARR存储的数值(N+1)乘以触发脉冲的时钟周期,其脉宽则为比较寄存器的值A乘以触发脉冲的时钟周期,即输出PEM的占空比为A/(N+1)。 3.PWM输入过程分析 当定时器被配置为输入功能时,可以用于检测输入到GPIO引脚的信号,此时捕获/比较寄存器TIMx_CRR被用作捕获功能,简称捕获寄存器。 下图为PWM输入时的脉冲宽度检测时序图; 工作过程:要测量的PWM脉冲通过GPIO引脚输入到定时器的脉冲检测通道,为图中的TI1; 在输入脉冲TI1的上升沿到达时,触发IC1和IC2输入捕获中断,这时把脉冲计数器的计数值复位为0,于是计数器的计数值X在时钟源的驱动下从0开始不断累加,直到TI1出现下降沿,触发IC2捕获事件,此时TIMx_CCR2把计数器的当前值2存储起来,计数器继续累加,直到TI1出现第二个上升沿,出发了IC1捕获事件,得到的当前计数值被保存到TIMX_CCR1中。 根据保存的数值很容易得到占空比和周期。 4.定时器的时钟源 通用定时器可以使用外部脉冲作为定时器的时钟源; 使用外部时钟源时,要使用寄存器进行触发边沿、滤波器带宽的配置。 高级定时器 此类定时器除了具有基本、通用定时器的所有功能外,还具有三相6步电机的接口、刹车功能及用于PWM驱动电路的死区时间控制,使其非常使用于电机控制。 高级定时器结构如下图所示: 相比较另外两种定时器,主要多出了BRK、DTG两个结构,具有了控制死区时间的控制功能; 死区时间:在三相桥的PWM驱动电路中,上下两个桥臂的PWM驱动信号是互补的,即上下桥臂轮流导通,但实际上为了防止出现上下两个臂同时导通(会造成短路),在上下两臂切换时留一小段时间,上下臂都施加关断信号。 在保证不出现短路的情况下,死区时间越短越好,时间太长会导致OCx或OCxN输出不正常。 |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1752 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1611 浏览 1 评论
1052 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
721 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1666 浏览 2 评论
1924浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
711浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
560浏览 3评论
583浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
544浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-18 13:29 , Processed in 0.876894 second(s), Total 77, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号