飞思卡尔MC9S12XS TIME输入捕获

2021-07-22来源: eefocus关键字:飞思卡尔  MC9S12XS  TIME  输入捕获

今天带着大家学习飞思卡尔MC9S12X  TIME模块中的输入捕获,TIME模块之前介绍过了在这里就不重复了。


首先先大家介绍下什么是输入捕获


【 输入捕捉 】

输入捕捉 ( I nput C apture , IC ) :通过捕获自由运行计数器的计数值来检测外部事件和记录选定的输入信号跳变边沿的时间。


当外部事件发生或信号发生变化时,指定的输入捕捉通道对应的引脚上产生一个规定的跳变沿(上升沿或下降沿)。定时器输入通道根据相应引脚上的电平变化,将当前自由运行计数器中的计数值捕捉到通道寄存器中。


如果此时允许输入捕捉中断,则产生一次输入捕捉中断申请,利用中断服务程序可读取通道计数器数值,获得事件发生的时刻或信号变化的时刻。


原理如下图所示

TIME控制寄存器如下所示:

TIM模块的输入捕捉功能及寄存器设置


S12XS 系列 MCU 的 TIM 具有 8 个输入捕捉 / 输出比较 (IC/OC) 通道 IOC0 ~ IOC7 ,对应于端口 PT0 ~ PT7 。由于输入捕捉与输出比较通道共享引脚、通道寄存器和中断逻辑,因此,每个通道同一时刻只能启用其中一个功能,可以通过设置定时器输入捕捉 / 输出比较选择寄存器 TIOS 中的 IOSn 位,选择输入捕捉 / 输出比较功能。


TIM模块输入捕捉功能


输入捕捉功能通过捕获自由运行计数器来监视外部事件。

当通道设置为输入捕捉功能时,自由运行定时器启动后,边沿检测器开始监视引脚事件,一旦引脚电平出现设定的有效跳变,便将自由运行计数器寄存器 TCNT 的当前值捕捉到捕捉寄存器 TCn ( n=0 ~ 7 )。


有效跳变边沿可以是上升沿、下降沿或任意跳变,由定时器控制寄存器 TCTL3 和 TCTL4 中的 EDGxB 和 EDGxA 位确定。


也可设置位 EDGxB:EDGxA =00 ,关闭边沿检测器,停止通道捕捉。


TIM模块输入捕捉功能


由于同步电路原因,引脚输入的最小脉宽要求大于 2 个总线时钟周期。


捕捉完成后,将置位主定时器中断标志寄存器 TFLG1 中的中断请求标志位 CnF ,如果定时器中断允许寄存器 TIE 中的中断允许位 CnI =1 ,且 CCR 寄存器中的控制位 I=1 ,则产生一次输入捕捉中断申请,转向 TCn 中断服务程序。


如果不采用中断方式响应引脚事件,可以置 CnI =0 ,通过软件查询标志位 CnF 来进行处理。各个 IC/OC 通道可以单独发出中断请求,或关闭中断。


事件处理完成后,通过向 TFLG1 寄存器的对应位写入 1 ,以清除标志 CnF 。


TIM 模块输入捕捉通道中断标志位 C0F ~ C7F 的置位条件如图所示。 

v S12XS 系列 MCU 的 8 路输入捕捉通道都不带缓冲寄存器,也没有覆盖控制寄存器,因此,发生一次输入捕捉事件后, TC 寄存器会立即写入新值。


v 如果发生新的捕捉事件时,上一次的数值还没有被读出,上一次捕捉的值将被新值所覆盖。


v 另外, TIM 的输入捕捉没有延迟计数器,不可以通过延迟给定的时间间隔产生输出脉冲的方法来避免窄脉宽的影响。


v S12XS 系列 MCU 的 IC 模块事件触发信号只能来自于本通道的输入引脚。


v 当输入引脚出现有效事件时,引脚电平变化时刻主定时器的计数值将被捕获到相应通道的捕捉寄存器中。


具体的寄存器的配置,我们就直接上代码,根据数据手册进行配置



关键字:飞思卡尔  MC9S12XS  TIME  输入捕获 编辑:什么鱼 引用地址:http://news.eeworld.com.cn/mcu/ic542658.html

上一篇:MC9S12G时钟配置
下一篇:MC9S12XS128MAL Bootloader(1)

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利

推荐阅读

mc9s12 c语言,飞思卡尔mc9s12的prm文件详解之二
”和“DATA_NEAR”两种,Flash的属性中也是四种都有,但是EEPROM中却只有“DATA_FAR”和“IBCC_FAR”两种,这正好验证了上一篇文章(飞思卡尔16位单片机的资源配置)中所提到的,RAM、Flash中都有固定页,但是EEPROM中全部是非固定页。· 起始地址和结束地址决定了一内存块的物理位置,对于固定页,用4位16进制数表示,而对于非固定页,则用6位16进制表示,多出来的两位其实是寄存器EPAGE、RPAGE或PPAGE的值,可见,对于分页的资源,是通过寄存器(EPAGE、RPAGE或PPAGE)和16位的地址总线的组合来进行寻址的。“TO”是系统保留的关键字,必须大写。下面,根据上面范例提供的内容,举几个例子:例
发表于 2021-07-22
飞思卡尔MC9S12G64串口发送接收驱动
因为之前刚入职,对串口调试不了解,下面整理一下书上的串口程序。  移植性还比较强使用说明:MC9S12系列的串口有两种查询方式               1》使用中断方式查询               2》在主函数中使用轮询的方式的方法进行查询             这两种方法在下面函数中都有体现,需要在用的时候注意分别提取         
发表于 2021-07-22
飞思卡尔MC9S12系列 ATD驱动
今天带着大家了解下MC9S12XS128 A/D模块,以及相关驱动的开发。什么是模数(A/D)转换器能够把模拟 量变成数字量的器件称为模数(A/D )转换器。MC9S12XS内置的ATD模块概述MC9S12XS128 内置的ATD (也记做A/D )模块是16 通道、12 位精度、多路输入复用、逐次逼近型的模数转换器。下面一起看下ATD模块具有的基本特征ATD模块具有以下基本特征:l8 位/10 位/12 位可选转换精度;l 停止模式下转换使用内部时钟;l 转换完成后为低功耗状态;l 自动和可编程数值比较,可设定大于或者小于等于设定值时中断申请;l 可编程采样时间;l 左对齐/ 右对齐转换数值;l 外部触发功能;l 转换完成中断申请
发表于 2021-07-21
<font color='red'>飞思卡尔</font>MC9S12系列 ATD驱动
飞思卡尔16位单片机(九)——ECT模块测试
; PWMPER01  = 500;  //通道01的周期为10Hz   PWMDTY01  = 250;  //通道01的占空比为50%    PWME_PWME1 = 1;    //使能通道01 }这段代码将PWM信号设置为10Hz,占空比为50%,关于这段代码的解释可以参考《飞思卡尔16位单片机(八)——PWM模块测试》这篇文章。接下来就是对ECT模块进行设置,代码如下void initialize_ect(void){  ECT_TSCR1_TFFCA = 1;  // 定时器标志位快速清除
发表于 2021-07-19
<font color='red'>飞思卡尔</font>16位单片机(九)——ECT模块测试
飞思卡尔16位单片机(十)——PIT模块测试
一、PIT模块介绍PIT是周期中断定时器模块的简称,XEP100单片机的PIT定时器是一系列24位定时器的阵列。可以用来触发单片机的外围设备,也可以用来产生周期性的中断。XEP100单片机的PIT模块具有如下特性:1、8个具有独立的溢出时间周期的定时器用作模数递减计数器。2、溢出周期可以在1到个总线周期数之间选择。溢出时间等于m×n个总线周期数,其中1<=m<=256,1<=n<=65536。3、定时器能够被独立使能。4、8个时间溢出中断。5、8个可以用的时间溢出触发输出信号,可以用来触发外围模块。6、启动的各通道可以彼此对齐。XEP100单片机的PIT模块的示意图如下图所示。由图中可以看出。PIT模块的主要
发表于 2021-07-19
<font color='red'>飞思卡尔</font>16位单片机(十)——PIT模块测试
基于飞思卡尔MC9S12XS的Flash擦除和写入操作
关于Flash的擦除和写入,真的是让我最费力的一部分,网上的相关资料很少,好不容易找到了一点相关代码,却发现程序不能正常的运行,而且更令人无解的是程序本身怎么检查都检查不出错误。好啦,一点一点的说说我的辛酸史。至于擦除和写入的原理是什么,这个不是我们关心的,我也不去赘述,我主要说明一下相关的具体操作。我们主要是对飞思卡尔Flash中的PFlash即存放程序段的Flash进行操作。如图:步骤大概分为:1、设置Flash分频寄存器: Flash的操作对频率有一定的要求,过低擦除不成功,过高会损毁Flash,如图为:MC9S12XS128的FCLKDIV寄存器,所有位都是可读的但是只有7位可写入。至于应该如何设置分频数,有一张
发表于 2021-06-15
基于飞思卡尔<font color='red'>MC9S12XS</font>的Flash擦除和写入操作
小广播
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2021 EEWORLD.com.cn, Inc. All rights reserved