飞思卡尔MC9S12XS128(定时器)ECT寄存器详解

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1、定时器IC/OC功能选择寄存器TIOS

IOS[7..0]IC/OC功能选择通道

0 相应通道选择为输入捕捉(IC)

1 相应通道选择为输出比较(OC)

2、定时器比较强制寄存器 CFORC

FOC[7..0]设置该寄存器某个FOCn位为1将导致在相应通道上立即产生一个输出比较动作,在初始化输出通道时候非常有用。

【说明】这个状态和正常状态下输出比较发生后,标志位未被置位后的情况相同。

3、输出比较7屏蔽寄存器 OC7M

OC7M[7..0]OC7(即通道7的输出比较)具有特殊地位,它匹配时可以直接改变PT7个输出引脚的状态,并覆盖各个引脚原来的匹配动作结果,寄存器OC7M决定哪些通道将处于

OC7的管理之下。OC7M中的各位与PORTT口寄存器的各位一一对应。当通过

TIOS将某个通道设定为输出比较时,将OC7M中的相应位置1,对应的引脚就是输

出状态,与DDR中的对应位的状态无关,但OC7Mn并不改变DDR相应位的状

态。

【说明】OC7M具有更高的优先级,它优于通过TCTL1和TCTL2寄存器中的OMn和OLn

设定的引脚动作,若OC7M中某个位置1,就会阻止相应引脚上由OM和OL设定的动作。

4、输出比较7数据寄存器 OC7D

OC7D[7..0]OC7M对于其他OC输出引脚的管理限于将某个二进制值送到对应引脚,这个值保存在寄存器OC7D中的对应位中。当OC7匹配成功后,若某个OC7Mn=1,则内部逻辑将OC7Dn送到对应引脚。OC7D中的各位与PORTT口寄存器的各位一一对

应。当通道7比较成功时,如果OC7M中的某个位为1,OC7D中的对应位将被输

出到PORTT的对应引脚。

【总结】通道7的输出比较(OC7)具有特殊的位置,在OC7Mn和OC7Dn两个寄存器设置以后,OC7成功输出后将会引起一系列的动作。比如:OC7M0=1,则通道0处在OC7的管理

下,在OC7成功后,系统会将OC7D0的逻辑数据(仅限0或者1)反应在PT0端口上。另

外,在OC7Mn置位后,相应的引脚就被设置为输出引脚,与DDRTn无关了,OC7Mn

并不改变DDR相应位的状态。

5、定时器核心计数寄存器 TCNT

TCNT[15..0]XS128 Timer模块的核心是一个16位自由运行计数器(TCNT),所有输入捕捉和输出比较功能的计时信息都来源于TCNT,当定时器系统启用时,通过设置TSCR1的

TEN位,计数器从$0000开始,每经过一个模块时钟加1,直到加到$FFFF,然后自动

溢出为$0000并继续计数.16位自由记数器的当前值保存在两个8位寄存器中,高

的存在TCNTH,低的存在TCNTL中.综合这两个寄存器就形成TCNT.定义TCNT的

话,要定义为word型。

【说明】这里的模块时钟指的是,经过分频后的ECT模块所用的时钟,分频系数在TSCR2的低三位。TCNT是一个递增的计数器,有很多人一直把它当做是递减的计数器。总之,TCNT就是对ECT时钟进行计数的。

6、定时器系统控制寄存器1 TSCR1

TSCR1寄存器是定时器模块的总开关,它决定模块是否启动以及在中断等待、BDM方式下的行为,还包括标志的管理方式。其各位的意义如下:

TEN:定时器使能位,此外它还控制定时器的时钟信号源。要使用定时器模块的IC/OC功能,必须将TEN置位。如果因为某种原因定时器没有使能,脉冲累加器也将得不到ECLK/64时钟,因为ECLK/64是由定时器的分频器产生的,这种情况下,脉冲累加器将不能进行引脚电平持续时间的累加。

0 定时器/计数器被禁止,有利于降低功耗。

1 定时器/计数器使能,正常工作。

TSWAI:等待模式下计时器关闭控制位。

【注意】定时器中断不能用于使MCU退出等待模式。

0 在中断等待模式下允许MCU继续运行。

1 当MCU进入中断等待模式时,禁止计时器。

TSFRZ:在冻结模式下计时器和计数器停止位。

0 在冻结模式下允许计时器和计数器继续运行。

1 在冻结模式下禁止计时器和计数器,用于仿真调试。

【注意】TSFRZ不能停止脉冲累加。

TFFCA:定时器标志快速清除选择位。

0 定时器标志普通清除方式。

1 定时器标志位自动清除方式。

--------------------------------------------------------------------------------- 这里对TFFCA做一下解释:

先说明一下这个寄存器的作用:TFFCA控制与输入捕捉、输出比较以及脉冲累加相关标志的清除方式。当TFFCA为0的时候,通过向标志位写入逻辑1的标准方式来清除定时器系统的标志位,写入逻辑0是没有效果的。当TFFCA为1的时候,快速标志清除功能被启用。。。。

但是对定时器系统的不同部分来说,这个功能有所不同:

●TFLG1寄存器:从IC读取或者向OC写入讲导致通道标志CnF在寄存器TFLF1中清除

●TFLG2寄存器:任何对TCNT寄存器的访问将清除TFLG2定时器的溢出标志(TOF)

●PAFLG寄存器:任何对PACNT寄存器的访问将清除PAFLG寄存器的PAVOF和PAIF位

---------------------------------------------------------------------------------------- 【说明】这种方式的好处是削减了另外清除标志位的软件开销。此外,必须特别注意避免对标志位的意外清除。

PRNT:精确定时器选择位

0 使用传统定时器。TSCR2中的PR[2..0]作为预分频选择位。

相关文档
最新文档