智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 7022|回复: 13
打印 上一主题 下一主题

kinetis定时器FTM详解

  [复制链接]

84

主题

707

帖子

2

精华

跨届大侠

Rank: 10Rank: 10Rank: 10

积分
7106

优秀会员奖章活跃会员奖章资源大师奖章论坛元老奖章论坛骨干奖章

威望
1736
贡献
4796
兑换币
434
注册时间
2012-2-15
在线时间
287 小时
毕业学校
西南交通大学
跳转到指定楼层
1#
发表于 2012-4-3 09:40:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
kinetis定时器FTM详解
2012-03-10 10:46 101人阅读 评论(0) 收藏 举报

FTM模块

FTM模块是一个多功能定时器模块,主要功能有,PWM输出、输入捕捉、输出比较、定时中断、脉冲加减计数、脉冲周期脉宽测量。在K10中,共有FTM0,FTM1,FTM2三个独立的FTM模块。其中FTM0有8个通道,可用于电机或舵机的PWM输出,但不具备正交解码功能,也就是对旋转编码器输入的正反向计数功能。而FTM1和FTM2则具备正交解码功能,但是FTM1和FTM2各只有两个通道。FTM模块的时间基准来自一个16位的计数器,该计数器的值可读取,即可作为无符号数对待,也可作为有符号数的补码对待。

FTM模块特性
  • 时钟源可选择,FTM的时钟源可以来自系统时钟或外部时钟。可对时钟分频,分频比为1,2,4,8,16,32,64,128。
  • FTM的一个16位计数器,该计数器可设置为自由运行或由用户设置起始和结束值,可递增计数也可递减计数。
  • FTM的每个通道都可以设置为输入捕捉、输出比较或边沿对其的PWM输出。
  • 在输入捕捉模式下,可捕捉上升沿、下降沿或两个边沿都捕捉,有些通道可选择输入滤波器。
  • 在输出比较模式下,在比较成功时可选择输出信号置位、清零或翻转。
  • 所有的通道都可以设置为中心对齐的PWM输出模式。
  • 每对通道都可以级联以产生PWM信号。
  • FTM的通道可成对工作在相同输出或互补输出,也可各通道独立输出。
  • 当通道成对互补输出时可使用死区插入。
  • 可产生触发信号。
  • 软件控制PWM输出。
  • 最多4个全局错误控制使用的错误输入。
  • 每个通道的极性可设置。
  • 每个通道都可产生中断。
  • 错误条件发生时也可产生中断。
  • 同步载入或写入带缓冲的FTM寄存器。
  • 关键寄存器有写保护功能。
  • 和HS08系里的TPM兼容。
  • 对于维持在低电平或高电平的信号也可进行输入捕捉的测试。
  • 双边沿捕捉可用于脉冲或周期信号宽度测量。

FTM模块的核心是一个16位计数器,该计数器的时钟源可以选择,如果我们选择由FTM来实现PWM,输入捕捉,或者输出比较,定时中断,脉宽测量等功能,则一般选择system clock。这个时钟实际上就是我们前面提到的MCG模块输出的MCGOUTCLK,再由SIM模块分配后得到的Bus Clock。如果我们选择由FTM实现对外部脉冲的计数,也可选择外部时钟,如果是外部编码器输入的AB相脉冲,用于电机正反转测速,则可以使用PHA和PHB输入,由计数器自动加减计数。

file:///E:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/msohtml1/01/clip_image003.png

16位计数器FTM Counter每个FTM模块一个,该FTM模块的所有通道共用这一个计数器。计数器的初始值(CNTIN)和结束值(MOD)可以设置。计数器的计数方式有三种,一种是递增计数,计数器从初始值开始累加,直到结束值,在下一个时钟周期,又回到初始值,循环往复。第二种是先加后减计数,计数器从初始值开始累加,到结束值后,从下一个时钟开始递减,一直减到初始值,然后再次开始累加,循环往复运行。第三种是正交解码模式,即对外部输入的AB相脉冲计数,由FTM根据A相和B相的相位自动递增或递减计数。在这里需要注意,FTM0不具备第三种计数模式,只有FTM1和FTM2可以使用正交解码。

FTM的寄存器

对FTM模块的设置和访问时都是通过FTM的寄存器来完成,下面我们就开始介绍FTM相关的寄存器。注意,FTM模块有很多寄存器的写入操作并不能立刻更新该寄存器的值,而是先写到一个缓冲器(Buffer)里,由系统在设置好的载入点(load point),再配合软件或硬件触发的方式来从缓冲器更新寄存器中的值的,后面我们介绍到这些寄存器的时候会指出。另外,FTM的很多寄存器具有写保护功能,需要先把写保护打开才可以写入,这点也在后面的介绍中提到。

  • 状态和控制寄存器(FTMx_SC)

file:///E:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/msohtml1/01/clip_image005.png

该寄存器每个FTM模块一个,里面包含计数器溢出标志,溢出中断允许设置,计数模式设置,时钟源选择和分频设置,具体如下。

  • TOF:定时器溢出标志,当FTM模块计数器到达MOD寄存器中设置的结束值时,无论是递增计数还是先加后减计数,在计数值从结束值变化到下一个值时,该位置1。当读取该寄存器,且该位置1时,写0可清除该标志,写1则没有效果。
  • TOIE:定时器溢出中断使能。当TOF置1时是否触发中断。对外界固定时钟计数配合TOF和TOIE则可以实现定时中断的功能。

TOIE=0:定时器溢出中断禁止;

TOIE=1:定时器溢出中断使能。

  • CPWMS:中心对齐PWM选择。这一位实际是设置计数器加减计数,所谓PWM中心对齐模式就是指的计数器先加后减。该位平时出于写保护状态,只有在MODE[WPDIS] = 1时才可被写入。

CPWMS=0:计数器加法计数;

CPWMS=1:计数器先加后减计数。

  • CLKS:时钟源选择。选择FTM计数器的时钟来源。该位平时写保护,只有在MODE[WPDIS] = 1时才可写入。

CLKS=00:未选择时钟;

CLKS=01:系统时钟(推荐,即Bus Clock);

CLKS=10:定频时钟;

CLKS=11:外部时钟。






84

主题

707

帖子

2

精华

跨届大侠

Rank: 10Rank: 10Rank: 10

积分
7106

优秀会员奖章活跃会员奖章资源大师奖章论坛元老奖章论坛骨干奖章

威望
1736
贡献
4796
兑换币
434
注册时间
2012-2-15
在线时间
287 小时
毕业学校
西南交通大学
2#
 楼主| 发表于 2012-4-3 09:41:25 | 只看该作者
详情请见附件

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

84

主题

707

帖子

2

精华

跨届大侠

Rank: 10Rank: 10Rank: 10

积分
7106

优秀会员奖章活跃会员奖章资源大师奖章论坛元老奖章论坛骨干奖章

威望
1736
贡献
4796
兑换币
434
注册时间
2012-2-15
在线时间
287 小时
毕业学校
西南交通大学
3#
 楼主| 发表于 2012-4-3 09:42:24 | 只看该作者
或者登录http://q.115.com/113258#
飞思卡尔
飞思卡尔智能车
回复 支持 反对

使用道具 举报

7

主题

149

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1404
QQ
威望
656
贡献
612
兑换币
12
注册时间
2011-3-1
在线时间
68 小时
4#
发表于 2012-4-3 23:23:45 | 只看该作者
太感谢了,今天刚好纠结了一下午的这个。
回复 支持 反对

使用道具 举报

0

主题

11

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
297
威望
163
贡献
68
兑换币
2
注册时间
2012-3-23
在线时间
33 小时
毕业学校
蚌埠学院
5#
发表于 2012-7-14 11:30:50 | 只看该作者
谢谢了,很有用。。。
回复 支持 反对

使用道具 举报

0

主题

9

帖子

0

精华

注册会员

Rank: 2

积分
155
威望
94
贡献
47
兑换币
38
注册时间
2012-12-12
在线时间
7 小时
6#
发表于 2013-1-18 00:42:29 | 只看该作者
顶一下
回复 支持 反对

使用道具 举报

0

主题

9

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
212
QQ
威望
107
贡献
33
兑换币
62
注册时间
2012-11-20
在线时间
36 小时
7#
发表于 2013-1-19 14:11:44 | 只看该作者
不错不错
回复 支持 反对

使用道具 举报

17

主题

202

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1235
威望
626
贡献
417
兑换币
385
注册时间
2012-11-9
在线时间
96 小时
8#
发表于 2013-3-31 17:00:05 | 只看该作者
看看
回复 支持 反对

使用道具 举报

25

主题

286

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1273

优秀会员奖章活跃会员奖章

QQ
威望
817
贡献
256
兑换币
297
注册时间
2013-2-24
在线时间
100 小时
9#
发表于 2013-4-25 00:28:33 | 只看该作者
回复 支持 反对

使用道具 举报

0

主题

8

帖子

0

精华

高级会员

Rank: 4

积分
559
威望
322
贡献
141
兑换币
33
注册时间
2012-3-14
在线时间
48 小时
10#
发表于 2013-6-4 01:58:35 | 只看该作者
回帖是种美德:lol
回复 支持 反对

使用道具 举报

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

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2024-12-27 15:50 , Processed in 0.090178 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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