STM32--TIM定时中断&TIM输出比较

这篇具有很好参考价值的文章主要介绍了STM32--TIM定时中断&TIM输出比较。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一.TIM中断

1.TIM简介

2.定时器类型

1)基本定时器

2)通用定时器

3)高级定时器 

3.时基单元 

 二.TIM输出比较

1.输出比较简介OC

2.PWM

1.PWM简介

2.PWM结构 

3.参数计算 

3.输出比较通道(通用)

1)输出模式控制器

2)至主模式控制器

3)极性选择

4)输出使能电路

5)OCx———GPIO口


一.TIM中断

1.TIM简介

  • 定时器可以对输入的时钟进行计数,并在计数值达到设定值时触发中断。
  • 16位计数器(CNT),预分配器(PSC),自动重装寄存器(ARR)的时基单元,在72MHz计数时钟下可以实现最大59.65s的定时。72M/65536/65536=1/59.65STM32--TIM定时中断&TIM输出比较,stm32,嵌入式硬件,单片机
  • 不仅具备基本的定时中断功能,而且还包含了内外时钟选择,输入捕获,输出比较,编码器接口,主从触发模式等多种功能。
  • 类型:高级定时器,通用定时器,基本定时器。

2.定时器类型

STM32F103CT6具有:TIM1,TIM2,TIM3,TIM4

类型 编号 总线 功能

高级定时器

TIM1,TIM8 APB2 拥有通用定时器全部功能,并额外具有重复定时器,死区生成,互补输出,刹车输入等功能
通用定时器 TIM2,TIM3,TIM4,TIM5 APB1 拥有基本定时器全部功能,并额外具有内外时钟选择,输入捕获,输出比较,主从触发模式等功能
基本定时器 TIM6,TIM7 ABP1 拥有定时触发,主从式触发DAC的功能

*DAC:数模转换器,D数,A模,将数字信号转换为模拟信号的电子设备

1)基本定时器

STM32--TIM定时中断&TIM输出比较,stm32,嵌入式硬件,单片机

*基本定时器只有DAC 而通用和高级定时器不仅有DAC 还有ADC 

*UI触发DAC较U触发更加消耗CPU

基本定时器,时钟来源于内部时钟,即72MHz

预分频器:对输入的基准频率提前进行一个分频操作,且写入值与实际分频数相差1。寄存器写入0,实际不分频(1分频),输出=输入=72MHz;寄存器写1,实际2分频,输出=输入/2=36MHz;由于预分频器寄存器有16为,最大写入65535,即实际65536分频。

自动重装载寄存器:设置目标值,16位寄存器,目标值最大写入65535。

计数器:计数器发生自增,一个波形,计数器+1,当达到自动重装载寄存器的值后,清零重新自增并产生中断(如无重复寄存器)。

UI/U:UI更新中断,通向NVIC中断;U更新事件,触发其他设备。

2)通用定时器

STM32--TIM定时中断&TIM输出比较,stm32,嵌入式硬件,单片机

 CNT计数模式STM32--TIM定时中断&TIM输出比较,stm32,嵌入式硬件,单片机

*基本定时器只有向上计数模式 

TIMx_ETR(外部时钟)  :外接电波作为外部时钟

STM32--TIM定时中断&TIM输出比较,stm32,嵌入式硬件,单片机

 ITRx:用来实现定时器的级联,类如TIM1的TRGO连接到TIM2的ITRO上,最大定时时间大幅度提高。

STM32--TIM定时中断&TIM输出比较,stm32,嵌入式硬件,单片机

 TI1F_ED:连接的是TIMx_CH1的捕获单元的CH1引脚

TI1FP1/TI2FP2:前者连接CH1的引脚,后者连接CH2的引脚,负责捕获输出电平作为外部时钟。

编码器接口:读取正交编码器的输出波形 

 输入捕获和输出比较

STM32--TIM定时中断&TIM输出比较,stm32,嵌入式硬件,单片机

3)高级定时器 

STM32--TIM定时中断&TIM输出比较,stm32,嵌入式硬件,单片机

*较前面两个定时器,增加重复计数器 

3.时基单元 

缓冲寄存器才是真正起作用的寄存器

计数器计数频率:CK_CNT=CK_PSC/(PSC+1)

计数器溢出频率:CK_CNT_OV=CK_CNT/(ARR+1)=CK_PSC/(PSC+1)/(ARR+1)

STM32--TIM定时中断&TIM输出比较,stm32,嵌入式硬件,单片机STM32--TIM定时中断&TIM输出比较,stm32,嵌入式硬件,单片机

 二.TIM输出比较

1.输出比较简介OC

  • OC(Output Compare)输出比较
  • 输出比较可以通过比较CNT与CCR寄存器值的关系,来对输出电平进行置1,置0或翻转的操作,用于输出一定频率和占空比的PWM波形
  • 每个高级的定时器和通用定时器都拥有4个输出比较通道(4个共用CCR)
  • 高级定时器的前三个通道额外拥有死区生成和互补输出的功能

*IC:Input Capture 输入捕获

*CC:Capture/Company 表示输入捕获和输出比较的单元

STM32--TIM定时中断&TIM输出比较,stm32,嵌入式硬件,单片机

上图为CCR

2.PWM

1.PWM简介

STM32--TIM定时中断&TIM输出比较,stm32,嵌入式硬件,单片机

2.PWM结构 

STM32--TIM定时中断&TIM输出比较,stm32,嵌入式硬件,单片机

3.参数计算 

PWM频率:    Freq = CK_PSC/(PSC+1)/(ARR+1)

PWM占空比:Duty = CCR/(ARR+1)

PWM分辨率:Reso = 1/(ARR+1)

3.输出比较通道(通用)

STM32--TIM定时中断&TIM输出比较,stm32,嵌入式硬件,单片机

1)输出模式控制器

可以改变它输出OC1REF(REF:参考信号)的高低电平

模式 描述
冻结 CNT=CCR时,REF保持为原状态
匹配时置有效电平 CNT=CCR时,REF置有效电平(一次性,不适合输出连续变化的波形)
匹配时置无效电平 CNT=CCR时,REF置无效电平(一次性,不适合输出连续变化的波形)
匹配时电平翻转 CNT=CCR时,REF电平翻转
强制为无效电平 CNT与CCR无效,REF强制为无效电平
强制为有效电平 CNT与CCR无效,REF强制为有效电平
PWM模式1

向上计数:CNT<CCR时,REF置有效电平,CNT>=CCR时,REF置无效电平

向下计数:CNT>CCR时,REF置无效电平,CNT<=CCR时,REF置有效电平

PWM模式2

向上计数:CNT<CCR时,REF置无效电平,CNT>=CCR时,REF置有效电平

向下计数:CNT>CCR时,REF置有效电平,CNT<=CCR时,REF置无效电平

2)至主模式控制器

可以把REF映射到主模式的TRGO输出

3)极性选择

STM32--TIM定时中断&TIM输出比较,stm32,嵌入式硬件,单片机

写0,正常输出。写1,信号就会往下走,信号会通过一个非门取反,那么输出信号就是输出信号高低电平反转的信号。

4)输出使能电路

选择是否输出

5)OCx———GPIO口

STM32--TIM定时中断&TIM输出比较,stm32,嵌入式硬件,单片机

STM32--TIM定时中断&TIM输出比较,stm32,嵌入式硬件,单片机 文章来源地址https://www.toymoban.com/news/detail-845842.html

到了这里,关于STM32--TIM定时中断&TIM输出比较的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • STM32TIM定时器PWM输出比较(适用于通用,高级定时器)

    在定时器中我们最常用的功能就是输出PWM,大多是用在电机控制方面,目前网络上相关资料也有很多,但是,很多不利于我们“现搜现用”我这里不是说我写的有多好,而是你搜索到此类文章时大部分是急于解决目前的问题,一段相关代码和讲解就行,当然不是学习背后的原

    2024年01月25日
    浏览(58)
  • 【STM32】STM32学习笔记-TIM定时中断(13)

    TIM(Timer)定时器 定时器可以对输入的时钟进行计数,并在计数值达到设定值时触发中断 16位计数器、预分频器、自动重装寄存器的时基单元,在72MHz计数时钟下可以实现最大59.65s的定时 不仅具备基本的定时中断功能,而且还包含内外时钟源选择、输入捕获、输出比较、编码

    2024年01月17日
    浏览(46)
  • STM32外设之TIM定时器使用及输出比较模式PWM生成,PWM频率和占空比计算,文末有固件库TIM驱动文件的函数讲解

    过来人的经验分享: TIM定时器在我们学习STM32的过程中是一个重要且稍微有点难度的外设了,就拿从学校里做的项目来说用到的也是一些基本的外设配置和传感器等等。TIM作为外设中稍微有点难度的外设相当关键,学好TIM,对以后学习单片机开发也有很大帮助。 定时器是stm3

    2024年02月07日
    浏览(48)
  • (STM32)TIM输出比较

    TIM输出比较(OC): 主要功能输出PWM波形,PWM波形是驱动电机的必要条件,所以信息TIM输出比较就等于学习PWM CNT:计数器,计数自增,CCR:捕获比较寄存器,程序员给定的一个值 当CNT,大于、小于、大于CCR时,输出就会置0,置1,置0....,一个不断跳变的pwm的波形 每个高级定时器

    2024年02月05日
    浏览(86)
  • STM-32:TIM定时中断—定时器定时中断/定时器外部时钟

    定时器可以对输入的时钟进行计数,并在达到设定值时触发中断 16位计数器、预分频器、自动重装寄存器的时基单元,在72MHz计数时钟下可以实现最大59.65s的定时 不仅具备基本的定时中断功能,而且还包含内外时钟源选择、输入捕获、输出比较、编码器接口、主从触发模式等

    2024年02月09日
    浏览(58)
  • STM32 PWM模式与输出比较模式的区别。PWM占空比不生效,在STM32CubeMX中配置PWM的两种模式——蓝桥杯嵌入式

      🎊【蓝桥杯嵌入式】专题正在持续更新中,原理图解析✨,各模块分析✨以及历年真题讲解✨都已更新完毕,欢迎大家前往订阅本专题🎏 🎏【蓝桥杯嵌入式】蓝桥杯第十届省赛真题 🎏【蓝桥杯嵌入式】蓝桥杯第十二届省赛程序真题 🎏【蓝桥杯嵌入式】蓝桥杯第十三届

    2023年04月15日
    浏览(80)
  • STM32 HAL库 STM32CubeMX -- TIM(定时器中断)

    STM32F1 系列中,除了一些特殊的型号,大部分F1有8 个定时器,分为 基本定时器,通用定时器和高级定时器 。 基本定时器TIM6 和TIM7 是一个16 位的只能向上计数的定时器,只能定时,没有外部IO。 通用定时器TIM2/3/4/5 是一个16 位的可以向上/下计数的定时器,可以定时,可以输出

    2024年02月16日
    浏览(78)
  • TIM-输出比较(PWM)——STM32

    Oc (Output Compare) 输出比较 输出比较可以通过比较CNT与CCR寄存器值的关系,来对输出电平进行置1、置0或翻转的操作,用于输出一定频率和占空比的PWM波形 每个高级定时器和通用定时器都拥有4个输出比较通道高级定时器的前3个通道额外拥有死区生成和互补输出的功能 第一步,

    2024年02月10日
    浏览(42)
  • STM32标准库开发——TIM定时器中断

    定时器可以对输入的时钟进行计数,并在计数值达到设定值时触发中断 16位计数器、预分频器、自动重装寄存器的时基单元,在72MHz计数时钟下可以实现最大59.65s的定时 根据复杂度和应用场景分为了高级定时器、通用定时器、基本定时器三种类型 不仅具备基本的定时中断功能

    2024年01月18日
    浏览(45)
  • STM32 TIM输出比较、PWM波形

    单片机学习! 目录 一、输出比较简介 二、PWM简介 三、输出比较通道 3.1通用定时器的输出比较部分电路 3.2高级定时器的输出比较部分电路 四、输出模式控制器 五、PWM基本结构 六、PWM参数计算 总结 前言         文章讲述STM32定时器的输出比较功能,它主要用来输出PWM波形

    2024年01月20日
    浏览(67)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包