STM32学习--定时器(通用定时器)3

6. 其他模式

6.1 触发控制器结构

STM32学习--定时器(通用定时器)3_第1张图片

  图中是触发控制器的结构框图,这个图很关键,可以让我们了解通用定时器很多扩展模式的 信号驱动流程,以供更好理解后面的模式学习。
  从图中可知,触发控制器有三个功能部分:
  ① 输出TRGO信号,这是做为主模式向提供其它定时器、DAC/ADC触发信号,在这个过程中其它定时器应为从模式。TRGO输出后连至其它时器的ITR上。
  ② 从模式控制器:从模式控制器是通过接收到的ETRF、TRGI信号来实现对自身计数器的控制,主要有复位、使能、向上/向下控制、计数等控制操作。例如前面聊到的PWM输入捕获功能,其就是利用一个通道的捕获产生的TI1FP1/TI2FP2来触发自身从模式控制器实现定时器的复位功能。
  ③ 编码器是用来实现与增量编码器的接口。
  
  再看看触发控制器的输入:
  ① 内部时钟CK_INT:最常有的方法,用来计数,与系统时钟同步;
  ② 外部输入ETRF:可以作为定时器时钟进行计数;对处输出TRGO,用来同步多个定时器;也可以输出到TRGI对定时器进行复位、门控、触发等控制。
  ③ 外部输入TI1FP1、TI2FP2:可以作为也可以输出到TRGI对定时器进行复位、门控、触发等控制;也可以实现与编码器接口。
  ④ TI1F_ED:与或门输入,用来实现与霍尔传感器接口。
  ⑤ 内部输入ITR:可以作为也可以输出到TRGI对定时器进行复位、门控、触发等控制。
  弄明白了信号的流程和驱动控制,对于理解后面的其他模式实现有很大帮助。

6.2重要寄存器

  从模式控制寄存器(TIMx_SMCR):用一个寄存器来控制所有从模式的输入、输出控制。
这里写图片描述
  结合框图,可以将其分四部分理解:
  ① 外部输入接口ETR设置:
ETP:外部触发极性 设置是否反向
ECE:外部时钟使能位 是否使能外部时钟模式2,使用ETRF进行计数
ETPS[1:0]:外部触发预分频
ETF[3:0]:外部触发滤波
  ② 主从同步
MSM:主/从模式 (Master/slave mode)
0:无作用;
1:触发输入(TRGI)上的事件被延迟了,以允许在当前定时器(通过TRGO)与它的从定时器间的
完美同步。这对要求把几个定时器同步到一个单一的外部事件时是非常有用的。
  ③ TIGI信号选择
TS[2:0]:触发选择,选择TIGI信号源
这里写图片描述
  ④ 从模式选择
SMS[2:0]:从模式选择
STM32学习--定时器(通用定时器)3_第2张图片

6.3 定时器和外部触发的同步

6.3.1 外部接口控制定时器

  外部触发有两种接口ETR和TIx(由图可知,仅有TI1和TI2才能使用),在定时器内部使用时主要使用从模式控制器对应的功能,即可产生复位控制、门控控制和触发控制。
  复位模式:就是在接收到触发输入事件时,计数器和它的预分频器被初始化。如果TIMx_CR1的URS位为低,还会产生一个更新事件UEV;然后所有的预装载寄存器(TIMx_ARR,TIMx_CCRx)都会被更新。
  门控模式:按照选中的输入端电平使能计数器。比如我们可以设置Tix对应管脚为高时计数,为低时不计数。
  触发模式:输入端上选中的事件使能计数器。比如我们可以设置TIx对应管脚出现上升沿或下降沿时开始计数。这个模式下开始计数后,这个管脚无法控制停止计数。
  这些模式的设置方法基本一致:
  ① 按上面捕获模式进行IO口和定时器时基的配置(ETR的IO配置略有不同);
  ② 配置通道,将通道选为捕获输入,设置相应的滤波器和捕获分频器,Tix还需设置映射端口,选择需要的电平或触发沿;Tix主要操作CCMRx和CCER的CC1P,ETR主要操作SMCR中ETR内容。
  ③ 在SMCR的SMS中选持相应的从控制器模式,TS中选择对应的触发源;
  ④ CEN=1,启动计数器,在触发模式下不打开。
  ⑤ 如果需要中断或DMA,使能相应中断,在这里可选触发中断。

6.3.2 外部时钟模式2 使用

  外部时钟模式2(即以ETR口作为时钟源)可以与另一种从模式(外部时钟模式1和编码器模式除外)一起使用,也就是只能用复位、门控、触发。此时最好不要再把触发源选 为ETR了。此时计数器计的是ETR的信号(也可设上升、下降)。
  与上述用法不同在于需设置ETR分频、滤波;时钟配置上,即置SMCR中ECE=1使能外部时钟模式2。

7 定时器之间的同步

7.1原理

STM32学习--定时器(通用定时器)3_第3张图片
  如上图所示,定时器同步时有主定时器和从定时器区别,从定时器的输入来源为内部信号ITRx,其来源由TS选择,选择源见下表。从模式选择前面已说。
STM32学习--定时器(通用定时器)3_第4张图片
  TS[2:0]:触发选择,选择TIGI信号源
这里写图片描述
  SMS[2:0]:从模式选择
STM32学习--定时器(通用定时器)3_第5张图片

  主模式控制器TIMx_CR2中的MMS[2:0] 控制主模式选择,具体源如下。
STM32学习--定时器(通用定时器)3_第6张图片

7.2同步中可用模式

  参考手册中描述了以下几种模式,但不仅限于,其实可组成的使用模式更多。
  ●使用一个定时器作为另一个定时器的预分频器
主定时器的TRGO设为更新模式;从定时器选为外部时钟模式1;
当主定时器计数到有更新事件时,TRGO输出上升沿,从定时器记上升沿数量。
  ●使用一个定时器使能另一个定时器
主定时器的TRGO设为输出比较参考信号(OC1REF),从定时器选为门控模式;
当有比较信号产生时可以控制从定时器计时。
  ●使用一个定时器去启动另一个定时器
主定时器的TRGO设为更新模式,从定时器选为触发模式;
当有更新事件,启动从定时器。
  ●使用一个外部触发同步地启动2个定时器
主定时器的TRGO它的使能信号,从定时器选为触发模式;
当主定时器有使能信号时,从定时器也接收到使能信号,同时开时计时。

你可能感兴趣的:(STM32,学习)