• stm32f334高级定时器TIM1


    介绍

    1. 高级控制计时器(TIM1)由一个由可编程的预调节器驱动的16位自动重载计数器组成。
    2. 它的功能包括测量输入信号的脉冲长度(输入捕获)或产生输出波形(输出比较、PWM、带有死时插入的互补PWM)。
    3. 脉冲长度和波形周期可以使用RCC时钟控制器预调器将脉冲长度和波形周期从几微秒调制到几毫秒。
    4. 高级控制(TIM1)和通用(TIMy)计时器是完全独立的,并且不共享任何资源。疑问(待查证普通TIMy之间的关联)

    技术特点

    1. 16位上,下,上/下自动重新加载计数器
    2. 具有全调制能力
    3. 多达六个通道四个功能:输入捕获,输出比较,PWM生成(边缘和中心对齐模式) ,单脉冲模式输出。
    4. 具有可编程死区时间的互补PWM输出
    5. 同步电路控制定时器,并将多个定时器互连在一起。
    6. 重复计数器只在计数器周期后更新计数器。
    7. 2个中断输入,定时器的输出信号可以通过安全的用户可选配置。
    8. 中断/DMA 生成事件:1.更新:计数器上溢/下溢,计数器初始化(通过软件或内部/外部触发器)2.触发事件(计数器启动、停止、初始化或计数)3.输入捕获4输出比较
    9. 支持增量(正交)编码器和霍尔传感器电路
    10. 触发外部时钟或逐周期电流管理的输入

    功能描述

    时基单元

    可编程高级控制定时器的主块是一个16位计数器及其相关的自动重载寄存器。计数器可以向上、向下或同时上下计算。计数器的时钟可以被一个预调节器来划分。计数器、自动重载寄存器和预调量器寄存器可以由软件写入或读取。即使计数器在运行,这也是如此。
    时基单元包括:
    计数器寄存器(TIMx_CNT)
    预调节器寄存器(TIMx_PSC)
    自动重新加载寄存器(TIMx_ARR)
    重复计数器寄存器(TIMx_RCR)

    自动装载寄存器是预先装载的,写或读自动重装载寄存器将访问预装载寄存器。根据在TIMx_CR1寄存器中的自动装载预装载使能位(ARPE)的设置,预装载寄存器的内容被立即或在每次的更新事件UEV时传送到影子寄存器。

    当计数器达到溢出条件(向下计数时的下溢条件)并当TIMx_CR1寄存器中的UDIS位等于0时,产生更新事件。更新事件也可以由软件产生。随后会详细描述每一种配置下更新事件的产生。

    计数器由预分频器的时钟输出CK_CNT驱动,仅当设置了计数器TIMx_CR1寄存器中的计数器使能位(CEN)时,CK_CNT才有效。
    请注意,在设置了TIMx_CR寄存器的CEN位的一个时钟周期后,计数器开始计数。

    预分频器描述

    预分频器可以将计数器的时钟频率按1到65536之间的任意值分频。它是基于一个(在TIMx_PSC寄存器中的)16位寄存器控制的16位计数器。因为这个控制寄存器带有缓冲器,它能够在运行时被改变。新的预分频器的参数在下一次更新事件到来时被采用。
    以下是在预分频器运行时,更改计数器参数的例子。
    在这里插入图片描述
    在这里插入图片描述

  • 相关阅读:
    声明式事务还是编程式事务,如何选择?
    Spring实战之bean重复、指定bean的名字、消除bean的歧义性
    Jetpack生命周期感知组件ViewModel
    [附源码]SSM计算机毕业设计政府公用车辆管理系统JAVA
    pandas使用列表(list)数据创建dataframe、pandas使用嵌套列表(nested list)数据创建dataframe
    grafana部署时集成自定义datasource和dashboard
    不要62——数位dp打卡
    MySQL 一键安装 (支持8.0.16-8.0.30)
    Redis(四) 主从、哨兵、集群环境搭建
    unity_Vector3.up 和 transform.up 的区别
  • 原文地址:https://blog.csdn.net/weixin_42914004/article/details/127660330