首页 > 其他分享 >STM32基本定时器、通用定时器、高级定时器区别

STM32基本定时器、通用定时器、高级定时器区别

时间:2024-07-03 20:00:47浏览次数:22  
标签:功能 定时器 通用 接口 STM32 场景 Timer 定时

一.STM32基本定时器、通用定时器、高级定时器区别

STM32系列微控制器中的定时器资源分为基本定时器(Basic Timer)、通用定时器(General Purpose Timer)和高级定时器(Advanced Timer)三类,它们在功能和复杂性上有所不同。以下是这三类定时器的详细区别:

1. 基本定时器(Basic Timer)

功能特点:

定时功能:基本定时器主要用于实现简单的定时功能,没有外部IO接口,是内部资源。

计数器:通常是一个16位的只能向上计数的定时器,没有自动重装载功能,但可以直接驱动DAC(数模转换器)。

寄存器:包括预分频器(PSC)、计数器(CNT)和自动重装载寄存器(ARR,但基本定时器中可能不直接称为ARR,而是体现为定时周期的设置)。

应用场景:

主要用于需要简单定时控制的场景,如软件延时、内部定时事件等。

示例型号:

STM32F1系列中的TIM6和TIM7。

2. 通用定时器(General Purpose Timer)

功能特点:

多功能性:除了基本的定时功能外,还支持输入捕获、输出比较、PWM生成等多种功能。

计数器:16位自动重装载计数器,支持向上、向下或向上/向下计数模式。

外部接口:具有多个外部IO接口,可用于连接外部设备或传感器。

可编程性:16位可编程预分频器,允许对输入的时钟进行灵活的分频。

应用场景:

适用于需要定时、测量、PWM控制等多种功能的场景,如电机控制、测量系统、定时任务等。

示例型号:

STM32F1系列中的TIM2、TIM3、TIM4和TIM5。

3. 高级定时器(Advanced Timer)

功能特点:

全面功能:包含基本定时器和通用定时器的所有功能,并增加了更高级的功能。

特殊功能:如死区时间控制、刹车功能、霍尔传感器接口等,特别适用于电机控制等复杂应用场景。

高精度控制:通常具有更高的定时精度和更多的控制选项。

应用场景:

主要用于需要高精度定时和复杂控制逻辑的场景,如电机控制、伺服系统、精确测量等。

示例型号:

STM32F1系列中的TIM1和TIM8。

总结

基本定时器:功能最简单,主要用于内部定时,无外部IO接口。

通用定时器:功能丰富,支持多种定时和输入输出功能,适用于多种应用场景。

高级定时器:功能最全面,特别适用于需要高精度定时和复杂控制逻辑的场合,如电机控制等。

在选择定时器时,需要根据具体的应用场景和需求来选择合适的定时器类型。

4.编码器接口

STM32 芯片内部有专门用来采集增量式编码器方波信号的接口,这些接口实际上是 STM32 定时器的其中一种功能。不过编码器接口功能只有高级定时器 TIM1、TIM8 和通用定时器 TIM2   到 TIM5 才有。

二.STM32F407定时器

   STM32F407 有众多的定时器,其中包括 2 个基本定时器(TIM6 和 TIM7)、10 个通用定时器(TIM2~TIM5、TIM9~TIM14)、2 个高级控制定时器(TIM1 和 TIM8),这些定时器彼此完全独立,不共享任何资源。

标签:功能,定时器,通用,接口,STM32,场景,Timer,定时
From: https://blog.csdn.net/xieliru/article/details/140161055

相关文章

  • 高项-组织通用管理
    1、人力资源管理内容:规划、招聘、维护、提升、评价。2、工作分析的作用:招聘和选择员工、发展和评价员工、薪酬政策、组织与岗位设计。工作分析四个阶段(范围、确定方法、收集、评价):第一阶段:明确工作分析范围(1)确定工作分析的目的(2)确定工作分析的对象第二阶段:确......
  • stm32学习笔记---USART串口外设(代码部分)串口发送/串口发送+接收
    目录第一个代码:串口发送初始化串口的步骤USART的库函数三个初始化函数USART_ClockInit和USART_ClockStructInitUSART_Cmd和USART_ITConfigUSART_DMACmdUSART_SendData和USART_ReceiveData四个标志位相关的函数代码实现Serial.c第一步,开启时钟第二步,GPIO初始化第......
  • stm32学习笔记---USART串口数据包(理论部分)
    目录Hex数据包第一种是固定包长,含包头包尾第二种是可变包长,含包头包尾收发过程中的问题第一个问题就是包头包尾和数据载荷重复的问题第一种方法,限制载荷数据的范围第二种方法,如果无法避免载荷数据和包头包尾重复,就尽量使用固定长度的数据包第三种方法,就是增加包头包尾......
  • STM32远程烧录程序
    目录简介该篇将会从零基础开始像读者讲解怎么使用远程的方法来烧录STM32程序。我这里用的是ESP8266和STM32F407ZGT6,当然,使用其他32的芯片也是可以的,核心都是一样的。不同的程序下载方式目前,单片机的程序烧录方式可以分为三种:ICP,ISP,IAP。ICP:In-CircuitProgramming在电......
  • 固态硬盘接口 macbook_固态硬盘都有哪些接口,是否通用吗?
    固态硬盘只要接口支持,一般通用的,   SATA接口固态硬盘接口的SATA/SATA2/SATA3通用,SATA接口标准的支持的一个功能就是智能的模式设置。SATA硬盘连接到主板上的SATA接口上后,SATA控制器会与SATA硬盘通信协商,使硬盘工作在SATA硬盘和SATA接口两者中最低的模式上,保证良好的向......
  • 【STM32F1例程10】UCOSII系统实验
      那么这个实验,从项目的工程结构来看,其实稍微稍微有一丢丢,有一丢丢比之前几个实验复杂,但是还是老话,既然能读到这篇文章,证明能力还是得到认可的。实验简介  那么在STM32上进行uC/OS-II系统实验是一种常见的实践,可以帮助大家了解和应用实时操作系统(RTOS)在嵌入式系统开......
  • Tim定时器初始化的方法
    #include"stm32f10x.h"//DeviceheadervoidTimerInit(void){ RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2,ENABLE); TIM_InternalClockConfig(TIM2); //初始化配置时基单元 TIM_TimeBaseInitTypeDefTIM_TimeBaseInitTypeStructrue; TI......
  • 搭建sftp并且保证普通用户有权限操作对应文件
    创建SFTP用户组为SFTP用户创建一个专用组:groupaddsftpusers创建SFTP用户创建SFTP用户splsz并将其添加到sftpusers组,同时指定用户的主目录和禁止shell访问:useradd-gsftpusers-s/sbin/nologinsplszpasswdsplsz创建目录结构sudomkdir-p/home/zhangqiang/davinci/......
  • STM32串口如何输出中文
    当你想在串口调试助手实现换行功能时却不行时,试一试将\n改为\r\n因为我用的是XCOM串口调试助手,就遇到了这样的问题而当你加入intfputc(intch,FILE*f)函数却实现不了printf,putchar调用时需要加入#include<stdio.h>并勾选魔术棒中的UseMicroLIBintfputc(intch,FILE*f)......
  • ARM Cortex-A 与 STM32 F107
    ARMCortex-A和STM32F107是两种不同的微控制器架构,它们在性能、应用场景和硬件支持方面有很大的差异。以下是它们的详细比较和分析:1.基本特性比较ARMCortex-A系列ARMCortex-A是ARM架构中的高级应用处理器系列,专为复杂的计算任务和高级应用设计。它广泛用于智能手机、......