STM32F0x高级定时器简介
TIM1主要功能 具有死区时间可编程的互补输出。同步电路,用外部信号控制定时器,并将几个定时器互连在一起。重复计数器,仅在给定的计数器周期数之后才更新定时器寄存器。刹车信号输入,使定时器的输出信号处于复位状态或已知状态。在以下事件中生成中断/DMA: 支持增量(正交)编码器和霍尔传感器电路,用于定位。外部时钟或逐周期电流管理的触发器输入。 时基单元
可编程高级控制定时器的主要模块是一个16位计数器及其相关的自动重载寄存器。计数器可以向上计数、向下计数或同时向上和向下计数。计数器时钟可以被预分频器分频。
计数器、自动重载寄存器和预分频器寄存器可以通过软件读写。即使在计数器运行时也是如此。
时基单元包括:
自动重载寄存器是被预装载的。写入或读取自动重载寄存器会访问预装载寄存器。根据 寄存器中的自动重载预装载使能位(ARPE),预装载寄存器的内容会永久性地或在每次更新事件(UEV)时传输到影子寄存器。当计数器达到上溢(或递减计数时的下溢)且 寄存器中的UDIS位等于 0 时,会发送更新事件。它也可以由软件生成。对于每种配置,均详细描述了更新事件的生成。
计数器由预分频器的输出计时,仅当寄存器中的计数器使能位(CEN)置位时它才被使能(有关计数器使能的更多信息,另请参考从机模式控制器描述)。
注意,在 寄存器的CEN位置位后,计数器开始计数1个时钟周期。
预分频器描述
预分频器可以将计数器时钟频率除以 1 到 65536 之间的任意因子。它基于通过16位寄存器(在 寄存器中)控制的16位计数器。当该控制寄存器被缓冲时,它可以动态改变。在下一次更新事件时会考虑新的预分频器比率。
图42给出了预分频器比率动态变化时计数器行为的一些示例:
看到这张图是不是就头大?现在很多人都喜欢看文字解释,一看到图表就没耐心了。其实只要静下心来仔细分析就不难理解。