没有合适的资源?快使用搜索试试~ 我知道了~
首页Kinetis FTM模块详解,很深入
资源详情
资源评论
资源推荐
1.5.1 FTM 模块简介
FTM 模块是一个多功能定时器模块,主要功能有,PWM 输出、输入捕捉、输出比较、
定时中断、脉冲加减计数、脉冲周期脉宽测量。在 K10 中,共有 FTM0,FTM1,FTM2 三个
独立的 FTM 模块。其中 FTM0 有 8 个通道,可用于电机或舵机的 PWM 输出,但不具备正交
解码功能,也就是对旋转编码器输入的正反向计数功能。而 FTM1 和 FTM2 则具备正交解码
功能,但是 FTM1 和 FTM2 各只有两个通道。FTM 模块的时间基准来自一个 16 位的计数器,
该计数器的值可读取,即可作为无符号数对待,也可作为有符号数的补码对待。
1. FTM 模块特性
时钟源可选择,FTM 的时钟源可以来自系统时钟或外部时钟。可对时钟分频,分
频比为 1,2,4,8,16,32,64,128。
FTM 的一个 16 位计数器,该计数器可设置为自由运行或由用户设置起始和结束值,
可递增计数也可递减计数。
FTM 的每个通道都可以设置为输入捕捉、输出比较或边沿对其的 PWM 输出。
在输入捕捉模式下,可捕捉上升沿、下降沿或两个边沿都捕捉,有些通道可选择
输入滤波器。
在输出比较模式下,在比较成功时可选择输出信号置位、清零或翻转。
所有的通道都可以设置为中心对齐的 PWM 输出模式。
每对通道都可以级联以产生 PWM 信号。
FTM 的通道可成对工作在相同输出或互补输出,也可各通道独立输出。
当通道成对互补输出时可使用死区插入。
可产生触发信号。
软件控制 PWM 输出。
最多 4 个全局错误控制使用的错误输入。
每个通道的极性可设置。
每个通道都可产生中断。
错误条件发生时也可产生中断。
同步载入或写入带缓冲的 FTM 寄存器。
关键寄存器有写保护功能。
和 HS08 系里的 TPM 兼容。
对于维持在低电平或高电平的信号也可进行输入捕捉的测试。
双边沿捕捉可用于脉冲或周期信号宽度测量。
2. FTM 模块框图
由图可见,FTM 模块的核心是一个 16 位计数器,该计数器的时钟源可以选择,如果我
们选择由 FTM 来实现 PWM,输入捕捉,或者输出比较,定时中断,脉宽测量等功能,则
一 般 选 择 system clock 。 这 个 时 钟 实 际 上 就 是 我 们 前 面 提 到 的 MCG 模 块 输 出 的
MCGOUTCLK,再由 SIM 模块分配后得到的 Bus Clock。如果我们选择由 FTM 实现对外部脉冲
的计数,也可选择外部时钟,如果是外部编码器输入的 AB 相脉冲,用于电机正反转测速,
则可以使用 PHA 和 PHB 输入,由计数器自动加减计数。
16 位计数器 FTM Counter 每个 FTM 模块一个,该 FTM 模块的所有通道共用这一个计数
器。计数器的初始值(CNTIN)和结束值(MOD)可以设置。计数器的计数方式有三种,
一种是递增计数,计数器从初始值开始累加,直到结束值,在下一个时钟周期,又回到初
始值,循环往复。第二种是先加后减计数,计数器从初始值开始累加,到结束值后,从下
一个时钟开始递减,一直减到初始值,然后再次开始累加,循环往复运行。第三种是正交
解码模式,即对外部输入的 AB 相脉冲计数,由 FTM 根据 A 相和 B 相的相位自动递增或递
减计数。在这里需要注意,FTM0 不具备第三种计数模式,只有 FTM1 和 FTM2 可以使用正
交解码。
1.5.2 FTM 的寄存器
对 FTM 模块的设置和访问时都是通过 FTM 的寄存器来完成,下面我们就开始介绍 FTM
相关的寄存器。注意,FTM 模块有很多寄存器的写入操作并不能立刻更新该寄存器的值,
而是先写到一个缓冲器(Bu)er)里,由系统在设置好的载入点(load point),再配合软
件或硬件触发的方式来从缓冲器更新寄存器中的值的,后面我们介绍到这些寄存器的时候
会指出。另外,FTM 的很多寄存器具有写保护功能,需要先把写保护打开才可以写入,这
点也在后面的介绍中提到。
1. 状态和控制寄存器(FTMx_SC)
该寄存器每个 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:外部时钟。
PS : 预 分 频 设 置 。 设 置 对 CLK 选 中 的 时 钟 预 分 频 。 该 位 平 时 写 保 护 , 只 有 在
MODE[WPDIS] = 1 时才可写入。
预分频比=2^PS,最大 128 分频。
2. 计数器 FTMx_CNT
该寄存器包含 FTM 计数器的值。复位时该寄存器清 0,向该寄存器写入任何值将会使
该寄存器回到初始设定值。CNTIN 中保存的是初始设定值。
BDM 模式下,FTM 计数器被冻结。
3. 模数寄存器 FTMx_MOD
该寄存器保存 FTM 计数器的模数,即计数器计数终止值,当计数器到达对应的模数值
时,TOF 将在下一个时钟到来时置 1。此时计数器的值取决于选择的计数器计数方案,默认
回到初始值。
写该寄存器的值会先锁存到一个缓冲器里,不会立刻更新,而是和寄存器更新设置有
关。
4. 通道 n 状态及控制寄存器(FTMx_CnSC)
这是一个非常重要的寄存器,每个通道都有一个 CnSC 寄存器。该寄存器中包含通道中
断标志位、中断使能控制位、通道设置以及引脚功能设置。
剩余24页未读,继续阅读
jiewukai
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- 27页智慧街道信息化建设综合解决方案.pptx
- 计算机二级Ms-Office选择题汇总.doc
- 单链表的插入和删除实验报告 (2).docx
- 单链表的插入和删除实验报告.pdf
- 物联网智能终端项目设备管理方案.pdf
- 如何打造品牌的模式.doc
- 样式控制与页面布局.pdf
- 武汉理工Java实验报告(二).docx
- 2021线上新品消费趋势报告.pdf
- 第3章 Matlab中的矩阵及其运算.docx
- 基于Web的人力资源管理系统的必要性和可行性.doc
- 基于一阶倒立摆的matlab仿真实验.doc
- 速运公司物流管理模式研究教材
- 大数据与管理.pptx
- 单片机课程设计之步进电机.doc
- 大数据与数据挖掘.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论7