OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3104|回复: 1

STM32定时器中TI1FP1 与TI1FP2及相关话题

[复制链接]

7

主题

36

帖子

0

精华

初级会员

Rank: 2

积分
189
金钱
189
注册时间
2015-3-14
在线时间
33 小时
发表于 2017-11-20 23:53:03 | 显示全部楼层 |阅读模式
发现一个很好的帖子: http://www.51hei.com/bbs/dpj-40950-1.html 个人觉得很好,转给一起学习下。

整体来讲,STM32各个系列的TIMER外设基本框架和功能是类似的,大体分高级定时器、通用定时器和基本定时器。除了基本定时器外,每个高级定时器或部分通用定时器都可以产生4对中间信号,分别是TI1FP1 TI1FP2TI2FP1 TI2FP2TI3FP3 TI3FP4TI4FP3 TI4FP4,即每个输入通道可以生产1对信号。这里以STM32F103系列为例聊聊T这个 TImFPn,
SMT32各系列的参考手册的定时器部分,在描述高级定时器或通用定时器时都可以看到如下的一副图。图中对那4对信号被清晰地描绘了出来。
这四对信号可以统一写为:TImFPn,其中 m代表滤波和边沿检测器前的输入通道号,n代表经过滤波和边沿检测器后将要接入或者说要映射到的捕捉通道号。 比如:TI1FP1,是来自于通道TI1,经过滤波器后将接到捕捉比较通道IC1;

  TI1FP1,是来自于通道TI1,经过滤波器后将接到捕捉比较通道IC1;
      TI1FP2,是来自于通道TI1,经过滤波器后将接到捕捉比较通道IC2;
      TI2FP1,是来自于通道TI2,经过滤波器后将接到捕捉比较通道IC1;
      TI2FP2,是来自于通道TI2,经过滤波器后将接到捕捉比较通道IC2;
      TI3FP3,是来自于通道TI3,经过滤波器后将接到捕捉比较通道IC3;
      TI3FP4,是来自于通道TI3,经过滤波器后将接到捕捉比较通道IC4;
      TI4FP3,是来自于通道TI4,经过滤波器后将接到捕捉比较通道IC3;
      TI4FP4,是来自于通道TI4,经过滤波器后将接到捕捉比较通道IC4;
那每一对信号到底是什么关系呢?比如TI1FP1TI1FP2。说实在的,这个地方参考手册里就没有个明确的表述,让人很费解。但是可以从一个地方可以推理得出来,那个地方下面会提到。其实,二者都是来自同一TI1输入通道,经过输入滤波和边沿检测器后所产生的具有相同特征的信号,然后映射到不同的输入捕捉通道,本质上还是同一路信号。
同理,TI2信号,经过滤波和边沿检测后产生了2路滤波信号,分别是TI2FP1TI2FP2它俩也是具有相同特征的信号,只是TI2FP1映射到捕捉通道IC1,TI2FP2映射到捕捉通道IC2.
那么对于TI3、TI4输入通道,经过滤波和边沿检测后,也分别产生两对滤波信号TI3FP3TI3FP4,TI4FP3TI4FP4,分别前往IC3IC4输入捕捉通道。
     
STM32定时器部分,有个PWM输入模式的应用介绍。专门介绍如何利用PWM输入模式测量某一路外部输入信号的频率和占空比的话题。这里正是利用TI1FP1TI1FP2来自于同一通道TI1且TI1FP1可以作为从模式触发源的特点来完成的。通过该实例不难理解TI1FP1TI1FP2的实质就是一个东西。【在不做过滤和反相处理的前提下,TI1=TIF1P1=TI1FP2
下面是利用PWM输入模式对TI1输入信号的周期和占空比进行测试的大致过程。特别注意图中红色标注的那些地方。



显然,这里的PWM输入模式正是利用2个捕捉通道针对同一信号进行的捕捉,只是分别针对上升沿和下降沿进行捕捉。
要注意的是,利用上述PWM输入模式方法对外部输入信号的频率和占空比进行测量,只限于TI1TI2通道。因为只有TI1FP1TI2FP2接到了从模式控制器。这点,资料上有讲得清楚,有人有时无视了这点,将待测信号接到TI3TI4后使用上述方法自然就不灵光了。
另外,STM32的部分定时器中还集成了正交编码控制器,这个应用与TI1FP1TI2PF2有关,换言之,要使用STM32内部正交编码功能的话,只能使用TI1TI2两个输入通道。所以,应用时不要随便乱接。
而且,并不是只要有TI1TI2两个输入通道的定时器就内置正交编码接口。其实不然。比方32F1系列中的TIM9TIM12就不支持。所以设计时需要查看下相关定时器的框架图。
关于正交编码器应用,有个编码信号与计数方向对照关系表经常让人觉得看起来费劲。【注意,正交编码接口用到的信号是TI1FP1TI2FP2。即一路来自TI1,一路来自TI2
结合上面的关系表和计数阶梯图我们来一起看下。
假设对于来自于TI1TI2的信号不做过滤和反相处理,TI1=TIF1P1TI2=TI2FP2
上面的那个编码与计数方向对照表里提到相对信号电平,其实这里TI1FP1的相对信号就是TI2TI2FP2的相对信号就是TI1
假设选择正交编码器要同时对TI1TI2进行计数的模式,不做滤波和换相。
那么当TI1FP1的上升沿到来时,如果此时其相对信号TI2的电平为低,则计数器向上计数;如果此时其相对信号TI2的电平为高,则计数器向下计数。结合上面的关系表和计数阶梯图,同样可以看出,当TI1FP1的下降沿到来时,如果此时其相对信号TI2的电平为低,则计数器向下计数;如果此时其相对信号TI2的电平为高,则计数器向上计数。
那对于TI2FP2的上升沿和下降沿时刻的计数方向的判断,一样可以通过其相对信号TI1的电平结合上面的对照表得知其相应时刻的计数方向。
小结下,上面只是就STM32定时器中的TImFPn信号做些沟通或应用提醒,具体应用时还得详细研究参考手册。不可否认,STM32的定时器功能非常强大,定时器资源很多,参考手册中描述它的文字篇幅也相当大,不过有些细节地方讲得差强人意。大家在研读参考手册时,最好文字阅读结合查看图表,必要时可以结合ST官方的参考库TIMER外设应用示例代码帮助理解。



正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

7

主题

36

帖子

0

精华

初级会员

Rank: 2

积分
189
金钱
189
注册时间
2015-3-14
在线时间
33 小时
 楼主| 发表于 2017-11-20 23:55:59 | 显示全部楼层
看到这个帖子之前,个人想做一个频率计, 期初想法和上面描述一样, 为了验证自己的想法百度搜索,理论上一样,坚定了自己的想法。故而分享到论坛,为自己赚点积分。 呵呵
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-7-26 19:17

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表