【话说定时器系列】之三:STM32定时器的信号触发与主从模式

发布时间:2023-03-07  

本文介绍的定时器的信号触发与主从模式,主要指通用定时器或高级定时器,不涉及基本定时器,因为基本定时器相对比较简单,对外无过多联络。


那对于STM32定时器而言,有哪些触发信号呢?这些信号来自何处?或流向哪里呢?


触发信号分两大类:触发输入信号【TRGI】,简单地讲就是从外部引入到本定时器的信号;另一类就是触发输出信号,即TRGO信号,它是定时器输出给其它定时器或外设的触发信号。


在STM32参考手册里文字描述部分,找不到一句完整的关于触发输入信号的描述文字,它主要把触发输入信号的概念融入进时钟源部分,倒是在从模式控制寄存器TIMX_SMCR的TS字段对定时器的触发输入信号有个系统的归纳。从数目上有讲一般可以多达8个,大致分为三类:






第一类:来自定时器自身输入通道1或通道2的输入信号,经过极性选择和滤波以后生成的触发信号,连接到从模式控制器,进而控制计数器的工作;顺便提醒下,来自通道1的输入信号经过上升沿、下降沿双沿检测而生成的脉冲信号进行逻辑相或以后的信号就是TI1F_ED信号,即TI1F_ED双沿脉冲信号。









第二类,来自于外部触发脚[ETR脚]经过极性选择、分频、滤波以后的信号,经过触发输入选择器,连接到从模式控制器。当然分频和滤波不是必需的,可以根据外来信号频率高低及信号干净度来决定。




第三类,来自其它定时器的触发输出信号,通过内部线路连接到本定时器的触发输入控制器而连接到从模式控制器。【当然个别特定外设也会产生一些输出信号给到定时器,这里不做重点讨论】再具体一点说,就是其它定时器的触发输出信号连接到本定时器的内部触发输入端ITRx,x可能是0~3,也就是说常规定时器内部最多可以4路内部输入选择端。


结合前面的介绍,不论来自本定时器外部的哪一类触发输入信号,它们有个共同特点,就是都要经过触发输入选择器而连接到从模式控制器,从而使得计数器的工作受到从模式控制器的控制或影响,基于这一点,定时器工作在从模式。


那么,定时器的从模式控制器可以对计数器实现哪些控制或影响呢?从模式控制器检测到触发输入信号时,可以对定时器进行如下操作而控制或影响计数器的工作:

1、对计数器复位

2、启动或停止计数器的计数动作

3、使能计数器模块的工作

4、通过触发信号为计数器提供时钟源


既然这么多可能的控制方式,那么,当触发输入信号出现时,从模式控制器到底如何影响计数器的工作呢?这就引出了定时器从模式话题。也就是说,从模式控制器最终如何控制或影响计数器的工作,又取决于定时器的从模式。定时器的从模式又有哪些呢?


整体上讲,STM32通用或高级定时器的从模式有如下几种:[SMS@TIMx_SMCR]

1、复位模式 【Reset mode】

2、触发模式 【Trigger mode】

3、门控模式 【Gate mode】

4、外部时钟模式1 【External clock mode 1】

5、编码器模式 【encode mode】


对于编码器模式,它是针对编码器应用的一个特定从模式,应用时注意使用定时器的通道1、通道2引进编码器脉冲,这里不赘述。以下重点介绍前四种从模式。


复位模式[Reset Mode]




当有效触发输入信号出现时,计数器将会被复位,同时还会产生更新事件和触发事件。


如果计数器向上计数或中央对齐模式的话,复位后计数器从0开始计数,如果向下计数模式,复位后计数器从ARR值开始计数。


不妨以计数器向上计数为例,将它配置在复位从模式。比方说当计数器计数到某个数据的时候,来了个触发信号,计数器不再继续往上计数,而是重新归0后开始计数。当然,计数器的实际复位操作与触发沿之间往往会有个小的延时,这是由于触发信号作为有效触发脉冲的话,还需要经过定时器内的同步电路确认。




这里顺便插几句,我们在介绍定时器的更新事件源时会提到复位模式下的触发脉冲,就是指现在讨论的情形。即处于复位模式的定时器,在触发信号的作用下可以对计数器复位并产生更新事件,实现预装载寄存器内容到影子寄存器的拷贝更新。


关于处于复位模式下的定时器,有两点提醒:

1、只要有复位触发脉冲出现,计数器就会被复位重置。复位次数取决于触发脉冲次数。

2、工作在复位模式下的定时器,其使能需靠软件代码实现,即使能定时器的CEN@TIMx_CR1位。


触发模式 [Trigged Mode]


当有效触发输入信号出现时,会将本来处于未使能状态的计数器使能激活,让计数器开始计数,同时还会产生触发事件。


触发从模式下,触发信号具有相当于软件使能计数器的作用,即置位CEN@TIMx_CR1,这也是它最大最明显的特征。






门控模式 [Gate Mode]


定时器根据触发输入信号的电平来启动或停止计数器的计数。在计数器启动或停止时都会产生触发事件并置位相关标志位,TIF@TIMx_SR。


下图表示来自TI1的输入信号,低电平时计数器启动计数,高电平时停止计数。






同样,工作在门控模式下的定时器,其使能需靠软件代码实现,即使能定时器的CEN@TIMx_CR1位。



外部时钟模式1从模式 [External Clock Mod1]



这个模式比较特别,名字也有点奇葩。其实,这个从模式跟时钟源的外部时钟模式1有渊源。在介绍计数器时钟源时,讲到过外部时钟模式1,即计数器的时钟来自TI1或TI2的输入脉冲,连接到从模式控制器并为计数器提供时钟。


也就是说,当计数器的时钟来自触发信号时,计数器就处于外部时钟模式1从模式。当然,这个触发信号就不仅仅限于来自定时器通道TI1/TI2的输入信号,还可以是上面提到过三类触发输入信号的任一种,比方来自其它定时器的触发输出信号,或者来自ETR脚的触发输入信号。


或者,反过来讲,如果定时器的时钟来自外来触发信号时,它一定就工作在外部时钟模式1从模式,显然,它的工作离不开这个触发信号,不然连计数时钟都没有。这个从模式“从”得很彻底。


比如,我们可以使用来自ETR脚的滤波信号ETRF作为触发信号并担当计数器的时钟源。


到此,上面比较集中介绍了几类常见定时器触发输入信号以及四种典型的定时器从模式及各自特点。触发模式的典型特点是触发信号可以使能计数器的工作,其它模式的计数器的工作需要软件使能外部时钟模式1从模式比较特别,当计数器的时钟源来自触发信号时,此时定时器就工作在外部时钟1从模式,此时触发信号扮演着双角色,即触发信号与时钟信号。


前面重点介绍了基于触发信号与定时器的触发与同步,当触发信号是源于其它定时器的触发输出时,这里就自然而然地衍生出了不同定时器间的触发与同步,定时器间联系的纽带就是这个触发信号。


定时器间的触发与同步,并无拓展新概念,只是基于定时器信号触发与同步的做了应用上的延伸。定时器所涉及的从模式还是上面提到的那几种,复位模式、触发模式、门控模式及外部时钟1模式。


前面多次提到其它定时器的触发输出,这里的其它是相对而言的,本定时器以为的定时器就是其它定时器。一般来讲,STM32的常规定时器都能输出触发信号[TRGO],差别在于不同定时器的可能的输出信号源在数量上或者类型上有差异。


STM32定时器可以有哪些触发输出信号呢?或者说怎样才能产生触发输出信号呢?整体上讲,常规定时器可以如下方式产生触发输出信号[TRGO]:

1、软件方式对定时器复位:置位UG@TIMx_EGR

2、使能计数器。置位CEN@TIMx_CR1

3、定时器更新事件

4、定时器捕获、比较事件

5、各输出通道中间参考信号 OCxREF


这里要提醒下,通过软件方式对定时器复位,即置位UG@TIMx_EGR,从而产生触发输出信号。它只是产生触发输出信号的一种途径,并非表示该触发输出信号连接到从定时器后,就一定会使得从定时器复位。从定时器复位与否与哪种触发信号无关,取决于从模式下定时器具体的从模式类型。即只有定时器处于复位从模式时,外来触发信号才会导致从定时器复位。


定时器的主从模式小结


当定时器的工作受到外来触发信号的影响或控制时,它就是工作在从模式,其中从模式可以有多种;如果某定时器能产生触发输出并作为其它定时器的触发输入信号时,此时该定时器就是工作在主模式。如果某定时器的工作既受外来触发信号的影响或控制,同时又能输出触发信号影响或控制别的从定时器,它就是处于主从双角色模式。


文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

相关文章

    机计时原理   555输出的周期性方波信号送给单片机进行计时,测量出信号的一个周期时间T,再利用上面的数学关系进行计算处理,得到待测的电容或者电阻值。单片机计时的原理是:利用单片机的外部中断0和定时器......
    555定时器及50个经典设计电路;555定时器是美国Signetics公司1972年研制的用于取代机械式定时器的中规模集成电路,因输入端设计有三个5kΩ的电阻而得名。此电路后来竟风靡世界。目前,流行......
    方波源。您既可以使用 Arduino,也可以使用 555 定时器 IC 将其配置为可控多频振荡器,从而完全建立自己的方波发生器。 频率计数器电路图 频率计数器电路设计 由于我使用 Arduino 来产......
    e络盟社区启动555定时器疯狂设计挑战赛;挑战赛旨在庆祝首款555定时器诞生50周年 安富利旗下全球电子元器件产品与解决方案分销商e络盟通过其在线社区发起555定时器疯狂设计挑战赛,以庆祝首款555......
    构建一个基于555定时器的简单ESR测量装置;  电容器似乎一切都很好,直到您到达电源出现故障或拒绝以最佳方式运行的地步。如果问题是噪音,有一个简单的解决方法,你只需添加更多的电容器。但这......
    坚固和稳定等特性而被广泛应用于各种电子电路中。它用于产生占空比在 50% 到 100% 之间的方波,振荡器还能在电路中提供时间延迟。555 定时器的名称来源于三个 5k 欧姆电阻耦合成的分压器模式。 用于制作单稳态 555 定时器......
    电路项目分享|基于555定时器的DC-DC转换电路,附带......
    自动转换开关(2023-09-07)
    将介绍自动转换电路的原理、设计和操作,在该电路中,一系列 LED 等直流负载可由电池或交流-直流电源驱动。 电路原理: 该电路基于 555 定时器的双稳态工作原理。在该模式下,定时器输出为高电平或低电平,取决......
    振荡器电路。一个 LDR 控制音调,另一个控制突发持续时间。您所要做的就是将手扫过LDR以产生各种声音。 基本工作原理 为了产生异常噪声,音爆振荡器电路采用具有正反馈的556定时器IC。556 器件......
    关断状态。因此,晶体管 Q2 处于导通状态,从而通过绿色 LED 指示灯将负载切换至导通状态。 断电后恢复供电时,555 定时器 IC 变为低电平,从而触发 555 定时器 IC。555 定时器......

我们与500+贴片厂合作,完美满足客户的定制需求。为品牌提供定制化的推广方案、专属产品特色页,多渠道推广,SEM/SEO精准营销以及与公众号的联合推广...详细>>

利用葫芦芯平台的卓越技术服务和新产品推广能力,原厂代理能轻松打入消费物联网(IOT)、信息与通信(ICT)、汽车及新能源汽车、工业自动化及工业物联网、装备及功率电子...详细>>

充分利用其强大的电子元器件采购流量,创新性地为这些物料提供了一个全新的窗口。我们的高效数字营销技术,不仅可以助你轻松识别与连接到需求方,更能够极大地提高“闲置物料”的处理能力,通过葫芦芯平台...详细>>

我们的目标很明确:构建一个全方位的半导体产业生态系统。成为一家全球领先的半导体互联网生态公司。目前,我们已成功打造了智能汽车、智能家居、大健康医疗、机器人和材料等五大生态领域。更为重要的是...详细>>

我们深知加工与定制类服务商的价值和重要性,因此,我们倾力为您提供最顶尖的营销资源。在我们的平台上,您可以直接接触到100万的研发工程师和采购工程师,以及10万的活跃客户群体...详细>>

凭借我们强大的专业流量和尖端的互联网数字营销技术,我们承诺为原厂提供免费的产品资料推广服务。无论是最新的资讯、技术动态还是创新产品,都可以通过我们的平台迅速传达给目标客户...详细>>

我们不止于将线索转化为潜在客户。葫芦芯平台致力于形成业务闭环,从引流、宣传到最终销售,全程跟进,确保每一个potential lead都得到妥善处理,从而大幅提高转化率。不仅如此...详细>>