STM32|HAL库|定时器中断


STM32HAL库——定时器中断


所用工具

  • 芯片:STM32F103RC(基于F1系列的芯片)
  • STM32CubeMx软件:用于生成初始化配置的代码
  • IDE:MDK-Keil软件
  • STM32F1xxHAL库

知识概括

1.STM32F1系列芯片的定时器原理
2.STM32CubeMx创建定时器例程
3.HALTIM定时器的函数库
4.定时器中断的创建和使用

STM32定时器的介绍


  • STM32F1系列芯片共有8个定时器:

    高级定时器:TIM1/TIM8
    通用定时器:TIM2/TIM3/TIM4/TIM5
    基本定时器:TIM6/TIM7

  • STM32F4系列芯片共有15个定时器:

    高级定时器:TIM1/TIM8
    通用定时器:TIM2/TIM3/TIM4/TIM5、TIM9~TIM14
    基本定时器:TIM6/TIM7


  • 基本定时器功能(TIM6、TIM7):

1.16位向上、向下、向上/下自动装载计数器
2.16位可编程(可以实时修改)预分频器,计数器时钟频率的分频系数为1~65535之间的任意数值
3.触发DAC的同步电路 (注:此项是TIM6/7独有功能.)
4.位于APB1总线上

  • 通用定时器(TIM2~TIM5)的主要功能:

1.16位向上、向下、向上/下自动装载计数器
2.16位可编程(可以实时修改)预分频器,计数器时钟频率的分频系数为1~65535之间的任意数值
3.4个独立通道(TIMx_CH1~4)可以用作:

测量输入信号的脉冲长度(输入捕获)
输出比较
单脉冲模式输出
PWM输出(边缘或中间对齐模式)

4.支持针对定位的增量(正交)编码器和霍尔传感器电路

5.如下事件发生时产生中断/DMA:

更新:计数器向上溢出/向下溢出,计数器初始化(通过软件或者内部/外部触发)
触发事件(计数器启动、停止、初始化或者由内部/外部触发计数)
输入捕获
输出比较

6.位于APB1总线上

  • 高级定时器(TIM1,TIM8)的主要功能:

1.高级定时器具有基本,通用定时器的所有的功能
2.还具有控制交直流电动机所有的功能
3.输出6路互补带死区的信号,刹车功能等等
4.位于APB2总线上

  • 总结:
    基本定时器就是单纯的定时计数器;通用定时器多了四个通道,相对应的增加了功能;高级定时器具有基本、通用定时器的所有的功能,并且增加了其它的一些功能

文章作者: OilPicture
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 OilPicture !
评论
  目录