单片机S增强型定时器模块_第1页
单片机S增强型定时器模块_第2页
单片机S增强型定时器模块_第3页
单片机S增强型定时器模块_第4页
单片机S增强型定时器模块_第5页
已阅读5页,还剩124页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于基于HCS12HCS12的嵌入式系统设计的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块合肥工业大学合肥工业大学机械与汽车工程学院机械与汽车工程学院滕滕 勤勤2014.42014.4基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块本章内容本章内容p 9.1 ECT9.1 ECT模块概述模块概述p 9.2 9.2 自由运行计数器及定时器基本寄存器自由运行计数器及定时器基本寄存器p 9.3 9.3 输入捕捉功能及寄存器设置输入捕捉功能及寄存器设置p 9.4 9.4 输出比较功能及寄存器设置输出比较功能及寄存器

2、设置p 9.5 9.5 脉冲累加器功能及寄存器设置脉冲累加器功能及寄存器设置p 9.6 9.6 模数递减计数器功能及寄存器设置模数递减计数器功能及寄存器设置p 9.7 ECT9.7 ECT模块的应用模块的应用基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块9.1 ECT9.1 ECT模块概述模块概述【定时器【定时器/ /计数器应用场合计数器应用场合】p按照时间间隔或计数结果进行控制。按照时间间隔或计数结果进行控制。 【可编程定时器【可编程定时器/ /计数器基本原理计数器基本原理】p在简单的软件控制下工作。根据需要的定时时间,用指令设在简单的软件

3、控制下工作。根据需要的定时时间,用指令设置定时器置定时器/ /计数器的定时常数,并用指令启动定时器计数器的定时常数,并用指令启动定时器/ /计数器。计数器。当定时器当定时器/ /计数器计数到预定值时,自动产生一个定时输出。计数器计数到预定值时,自动产生一个定时输出。【优点【优点】p定时定时/ /计数不占用计数不占用CPUCPU的时间,利用定时器的时间,利用定时器/ /计数器产生的中断计数器产生的中断信号,可以建立多作业的环境,大大地提高信号,可以建立多作业的环境,大大地提高CPUCPU的利用率。的利用率。基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定

4、时器模块9.1 ECT9.1 ECT模块概述模块概述【可编程定时器【可编程定时器/ /计数器的特点计数器的特点】p多种工作方式多种工作方式定时方式或计数方式等。定时方式或计数方式等。p计数器的模值可变计数器的模值可变计数的最大值有一定的限制,取决于计数器的位计数的最大值有一定的限制,取决于计数器的位数。计数的最大值限制了定时的最大值。数。计数的最大值限制了定时的最大值。p产生中断产生中断根据设定的定时或计数值,当定时时间到或到达计数终点根据设定的定时或计数值,当定时时间到或到达计数终点时,发出中断请求信号。时,发出中断请求信号。【定时器【定时器】计数脉冲来自于系统时钟或经过分频后的系统时钟,即

5、计数脉冲来自于系统时钟或经过分频后的系统时钟,即驱动驱动信号为内部时钟脉冲信号为内部时钟脉冲;【计数器【计数器】计数脉冲来自于芯片外部引脚,即计数脉冲来自于芯片外部引脚,即驱动信号为外部脉冲驱动信号为外部脉冲。基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块9.1 ECT9.1 ECT模块概述模块概述【嵌入式系统中定时器【嵌入式系统中定时器/ /计数器模块的作用计数器模块的作用】p【产生波形输出【产生波形输出】从从MCUMCU的的I/OI/O引脚向外输出一系列符合一定时序规范的引脚向外输出一系列符合一定时序规范的周期信号。周期信号。p【测量输入

6、波形【测量输入波形】检测检测MCU I/OMCU I/O引脚上输入的一系列周期信号的脉宽、周引脚上输入的一系列周期信号的脉宽、周期或频率。期或频率。p【统计脉冲或边沿个数【统计脉冲或边沿个数】对端口引脚输入的、由外部事件产生的触发信对端口引脚输入的、由外部事件产生的触发信号进行计数。号进行计数。p【作为定时基准【作为定时基准】产生内部定时,例如用于定时采样等。产生内部定时,例如用于定时采样等。pS12S12系列系列MCUMCU的定时器模块称为的定时器模块称为增强型捕捉定时器增强型捕捉定时器( (ECTECT) )模块模块( (E Enhancednhanced C Captureapture

7、T Timerimer M Moduleodule) )。 基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块9.1 ECT9.1 ECT模块概述模块概述9.1.1 ECT9.1.1 ECT的基本组成的基本组成与工作原理与工作原理【ECTECT组成组成】1 1个个1616位自由运行计数器位自由运行计数器8 8个个1616位输入捕捉位输入捕捉/ /输出比输出比较(较(IC/OCIC/OC)通道)通道4 4个个8 8位脉冲累加器或位脉冲累加器或2 2个个1616位脉冲累加器位脉冲累加器1 1个个1616位模数递减计数器位模数递减计数器MDCMDC基于

8、HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块9.1.1 ECT9.1.1 ECT的基本组成与工的基本组成与工作原理作原理【特点【特点】4 4个个输入捕捉通道输入捕捉通道具有具有1616位位缓缓冲冲( (保持保持) )寄存器寄存器4 4个个输入捕捉通道输入捕捉通道具有可选择具有可选择延迟时间的延迟时间的延迟计数器延迟计数器4 4个个8 8位位脉冲累加器脉冲累加器,可以通,可以通过过级联级联形成形成2 2个个1616位的脉冲累位的脉冲累加器加器1616位位模数递减计数器模数递减计数器具有具有4 4位位的的预分频器预分频器基于HCS12的嵌入式系统设

9、计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块9.1 ECT9.1 ECT模块概述模块概述9.1.1 ECT9.1.1 ECT的基本组成与工作原理的基本组成与工作原理【自由运行计数器【自由运行计数器】F ECTECT的核心的核心1616位位自由运行自由运行(Free running)(Free running)计数器,也称为计数器,也称为自由运行主自由运行主定时器定时器。F系统复位时系统复位时自由运行计数器为自由运行计数器为$0000$0000。F模块运行时模块运行时自由运行计数器从自由运行计数器从$0000$0000$FFFF$FFFF循环递增计数。循环递增计数。F溢

10、出复零时溢出复零时置位中断标志。置位中断标志。F时钟源时钟源TIMCLKTIMCLK PCLK PCLK,PACLKPACLK,PACLK/256PACLK/256,PACLK/65536PACLK/65536。F预分频器时钟预分频器时钟PCLKPCLK由总线时钟(由总线时钟(ECLKECLK)经过一个)经过一个7 7位预分频器得到。位预分频器得到。F预分频系数预分频系数 8 8种。种。基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块9.1 ECT9.1 ECT模块概模块概述述9.1.1 ECT9.1.1 ECT的基的基本组成与工本组成与工作原

11、理作原理【ECTECT运行模式运行模式】 停止停止(STOP)(STOP)模式模式 冻结冻结(Freeze)(Freeze)模模式式 等待等待(Wait)(Wait)模式模式 正常正常(Normal)(Normal)模模式式基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块p输入捕捉输入捕捉( (Input CaptureInput Capture,ICIC) ):输入引脚:输入引脚上的跳变沿上的跳变沿( (上升沿或下降沿上升沿或下降沿) )触发输入捕触发输入捕捉,将当前自由运行计数器中的计数值复捉,将当前自由运行计数器中的计数值复制到通道寄存器

12、中,并置位中断标志,如制到通道寄存器中,并置位中断标志,如果允许中断,则产生一次输入捕捉中断。果允许中断,则产生一次输入捕捉中断。p带保持寄存器的带保持寄存器的ICIC通道在第通道在第1 1个触发事件到个触发事件到来时进行来时进行捕捉捕捉,第,第2 2个触发事件到来时进行个触发事件到来时进行锁存锁存。可以在不产生中断的条件下,连续。可以在不产生中断的条件下,连续记录两次自由运行计数器的值。记录两次自由运行计数器的值。输入捕捉输入捕捉模块框图模块框图 9.1 ECT9.1 ECT模块概述模块概述9.1.1 ECT9.1.1 ECT的基本组成与工作原理的基本组成与工作原理【输入捕捉【输入捕捉】基于

13、HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块9.1 ECT9.1 ECT模块概述模块概述9.1.1 ECT9.1.1 ECT的基本组成与工作原理的基本组成与工作原理【输出比较【输出比较】p输出比较输出比较( (Output CompareOutput Compare,OCOC) ):根据需要设置输出比较寄存器的值,:根据需要设置输出比较寄存器的值,自由运行计数器的值与输出比较寄存器的值每隔自由运行计数器的值与输出比较寄存器的值每隔4 4个总线周期比较一次,个总线周期比较一次,当两者相等时,会在规定的通道引脚上输出预定的电平。当两者相等时,会在规

14、定的通道引脚上输出预定的电平。p如果允许中断,会产生一次输出比较中断。如果允许中断,会产生一次输出比较中断。输出比较输出比较模块框图模块框图 基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块9.1 ECT9.1 ECT模块概述模块概述9.1.1 ECT9.1.1 ECT的基本组成与工作原理的基本组成与工作原理【脉冲累加器【脉冲累加器】p脉冲累加器(脉冲累加器(Pulse accumulatorPulse accumulator,PAPA)脉冲计数器脉冲计数器p【功能【功能】统计相应管脚上的脉冲个数。统计相应管脚上的脉冲个数。在管脚上有效电平期间

15、对内部时钟进行计数。在管脚上有效电平期间对内部时钟进行计数。基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块9.1.1 ECT9.1.1 ECT的基的基本组成与工本组成与工作原理作原理【脉冲累加器【脉冲累加器】p脉冲累加器与脉冲累加器与带缓冲的带缓冲的ICIC通通道相联。道相联。p缓冲器缓冲器( (保持寄保持寄存器存器) ) 可以在可以在外部引脚出现外部引脚出现预定动作时,预定动作时,保存其累加值。保存其累加值。基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块【脉冲累加器【脉冲累加器】p 根据工

16、作方式不同,脉冲累加器的计数脉冲来自不同的渠道。根据工作方式不同,脉冲累加器的计数脉冲来自不同的渠道。 计数方式计数方式 事件计数方式事件计数方式计数脉冲直接来自引脚逻辑,脉冲累加器相当于计数脉冲直接来自引脚逻辑,脉冲累加器相当于普通普通计数器计数器,对有效边沿计数,有效边沿可设定为上升沿或下降沿。,对有效边沿计数,有效边沿可设定为上升沿或下降沿。输入引脚上每产生一个有效边沿跳变,脉冲累加计数器的值加输入引脚上每产生一个有效边沿跳变,脉冲累加计数器的值加1 1。当脉冲。当脉冲累加器溢出时,将置位中断标志。如果允许中断,则产生一次溢出中断。累加器溢出时,将置位中断标志。如果允许中断,则产生一次溢

17、出中断。 门控时间累加方式门控时间累加方式脉冲累加器相当于脉冲累加器相当于可控计数器可控计数器。门控信号来自引。门控信号来自引脚逻辑,时钟信号来自内部时钟脚逻辑,时钟信号来自内部时钟PACLK(=ECLK/64)PACLK(=ECLK/64)。门控信号可设定为高。门控信号可设定为高电平有效或低电平有效,在有效电平期间,脉冲累加器对电平有效或低电平有效,在有效电平期间,脉冲累加器对ECLK/64ECLK/64时钟信时钟信号计数。有效电平结束时的跳变沿将停止计数,并置位中断标志。如果允号计数。有效电平结束时的跳变沿将停止计数,并置位中断标志。如果允许中断,则产生一次硬件中断。许中断,则产生一次硬件

18、中断。基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块9.1 ECT9.1 ECT模块概述模块概述9.1.1 ECT9.1.1 ECT的基本组成与工作原理的基本组成与工作原理【模数递减计数器【模数递减计数器】p1616位位模数递减计数器模数递减计数器( (Modulus Down CounterModulus Down Counter,MDCMDC) )。p【功能【功能】作为一个时基,定时产生中断。作为一个时基,定时产生中断。产生一个控制信号,将输入捕捉寄存器或脉冲累加器的值锁存到各自的产生一个控制信号,将输入捕捉寄存器或脉冲累加器的值锁存到各

19、自的保持寄存器中。保持寄存器中。锁存动作可以通过程序设定为周期性的或一次性的。锁存动作可以通过程序设定为周期性的或一次性的。pMDCMDC时钟源时钟源总线时钟经过总线时钟经过4 4位预分频器提供,有位预分频器提供,有4 4个分频系数可供选择。个分频系数可供选择。基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块9.1 ECT9.1 ECT模块概述模块概述9.1.1 ECT9.1.1 ECT的基本组成与工作原理的基本组成与工作原理【模数递减计数器【模数递减计数器】pMDCMDC常数常数( (加载加载) )寄存器寄存器定时常数可自动重装载,可以根据定

20、时的需要,定时常数可自动重装载,可以根据定时的需要,向加载寄存器中赋初值。但向加载寄存器中赋初值。但MDCMDC的常数寄存器与其计数寄存器的常数寄存器与其计数寄存器MCCNTMCCNT使用使用相同的地址,加载时通过特殊的时序实现。相同的地址,加载时通过特殊的时序实现。p复位后,复位后,MCCNT=$FFFFMCCNT=$FFFF。MDCMDC启动后,启动后,MCCNTMCCNT从当前值开始递减计数。当计从当前值开始递减计数。当计数值减到数值减到0 0时,置位中断标志。如果允许中断,则向时,置位中断标志。如果允许中断,则向CPUCPU发出中断请求。发出中断请求。计数方式计数方式 单次计数方式单次

21、计数方式当计数值减到当计数值减到$0000$0000时,时,MDCMDC便停止计数。便停止计数。 循环循环( (连续连续) )计数方式计数方式当计数值减到当计数值减到$0000$0000时,自动加载定时常数,并时,自动加载定时常数,并继续递减计数。继续递减计数。基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块9.1.2 9.1.2 模块内存映射模块内存映射pECTECT模块的寄模块的寄存器分为存器分为3 3类:类:控制寄存器、控制寄存器、数据寄存器和数据寄存器和状态寄存器。状态寄存器。控制寄存器控制寄存器基于HCS12的嵌入式系统设计第第9 9

22、章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块9.1.2 9.1.2 模块内存映射模块内存映射数据寄存器数据寄存器状态寄存器状态寄存器基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块9.1 ECT9.1 ECT模块概述模块概述9.1.3 ECT9.1.3 ECT模块的中断系统模块的中断系统【ECTECT模块中断源模块中断源】8 8个定时器通道中断个定时器通道中断1 1个模数递减计数器向下溢出中断个模数递减计数器向下溢出中断1 1个脉冲累加器个脉冲累加器A A输入中断输入中断1 1个脉冲累加器个脉冲累加器A A溢出中断溢出中断1 1个

23、脉冲累加器个脉冲累加器B B溢出中断溢出中断基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块 9.1.3 ECT9.1.3 ECT模块的中断系统模块的中断系统p ECT模块中断描述模块中断描述基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块9.2 9.2 自由运行计数器及定时器基本寄存器自由运行计数器及定时器基本寄存器9.2.1 9.2.1 自由运行主定时器与时钟频率设置自由运行主定时器与时钟频率设置p1616位自由运行主定时器的工作频率决定输入捕捉位自由运行主定时器的工作频率决定输入捕捉/ /

24、输出比较的分辨能力。输出比较的分辨能力。p【工作原理【工作原理】定时器计数寄存器定时器计数寄存器TCNTTCNT对多路转换器输出的时钟信号进行计数,当计数对多路转换器输出的时钟信号进行计数,当计数值从值从$FFFF$FFFF溢出变为溢出变为$0000$0000时,主定时器中断标志寄存器时,主定时器中断标志寄存器TFLG2TFLG2中的中断标中的中断标志志TOFTOF置位,向置位,向CPUCPU申请中断。申请中断。如果此时定时器系统控制寄存器如果此时定时器系统控制寄存器TSCR2TSCR2中的中断允许位中的中断允许位TOI=1TOI=1,将产生一,将产生一个中断。个中断。p设置设置TOI=0TO

25、I=0可以禁止自由运行计数器溢出中断,向可以禁止自由运行计数器溢出中断,向TFLG2TFLG2中写入中写入$80$80将清除将清除TOFTOF标志。标志。基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块9.2.1 9.2.1 自由运行主定时器与时钟频率设置自由运行主定时器与时钟频率设置p【时钟选择【时钟选择】自由运行主定时器的时钟自由运行主定时器的时钟TIMCLKTIMCLK由由4 4选选1 1多路转换器提供,多路转换器提供,时钟源的切换由时钟源的切换由1616位脉冲累加器位脉冲累加器A A控制寄存器控制寄存器PACTLPACTL中的控制位中的

26、控制位CLK1CLK1和和CLK0CLK0控制,时钟可以是控制,时钟可以是PCLKPCLK、PACLKPACLK、PACLK/256PACLK/256、PACLK/65536PACLK/65536。pPCLKPCLK称为称为P P时钟时钟,由预分频器将总由预分频器将总线时钟进行线时钟进行2 2k k分分频后得到频后得到(k=0(k=07)7)。p分频系数分频系数由定时由定时器系统控制寄存器系统控制寄存器器TSCR2TSCR2中的中的PR2PR2、PR1PR1和和PR0PR0决定。决定。基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块9.2 9.

27、2 自由运行计数器及定时器基本寄存器自由运行计数器及定时器基本寄存器9.2.1 9.2.1 自由运行主定时器与时钟频率设置自由运行主定时器与时钟频率设置pPACLKPACLK是是1616位脉冲累加器位脉冲累加器A A的时钟,频率为的时钟,频率为ECLK/64ECLK/64。p定时器系统控制寄存器定时器系统控制寄存器TSCR1TSCR1中的中的TENTEN位是位是TIMCLKTIMCLK的总开关。的总开关。p当当TEN=0TEN=0时,时,TIMCLKTIMCLK被切断,被切断,定时器停止工作,定时器停止工作,但并不影响脉冲但并不影响脉冲累加器在事件计累加器在事件计数方式下正常工数方式下正常工作

28、。作。基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块9.2 9.2 自由运行计数器及定时器基本寄存器自由运行计数器及定时器基本寄存器9.2.1 9.2.1 自由运行主定时器与时钟频率设置自由运行主定时器与时钟频率设置p输出比较通道输出比较通道7(OC7)7(OC7)对自由运行主定时器具有特殊的控制功对自由运行主定时器具有特殊的控制功能。能。当定时器系统控制寄存器当定时器系统控制寄存器TSCR2TSCR2中的控制位中的控制位TCRE=1TCRE=1时,如果通时,如果通道道7 7输出比较成功,则输出比较成功,则TCNTTCNT自动复位到自动复位到

29、$0000$0000。可利用可利用OC7OC7实现实现TCNTTCNT在在$0000$0000$ $($FFFF)($FFFF)之间循环计数。之间循环计数。基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块9.2 9.2 自由运行计数器及定时器基本寄存器自由运行计数器及定时器基本寄存器9.2.2 ECT9.2.2 ECT模块的基本寄存器模块的基本寄存器1. 定时器系统控制寄存器定时器系统控制寄存器1 (Timer System Control Register 11 (Timer System Control Register 1,TSCR1)T

30、SCR1)【作用【作用】p定时器启动、停止控制。定时器启动、停止控制。p在在MCUMCU等待模式下,是否允许等待模式下,是否允许ECTECT模块工作。模块工作。p在在MCUMCU冻结模式下,是否允许定时器和冻结模式下,是否允许定时器和MDCMDC运行。运行。p设置定时器模块所有中断标志的清除方式。设置定时器模块所有中断标志的清除方式。 基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块9.2.2 ECT9.2.2 ECT模块的基本寄存器模块的基本寄存器1. 定时器系统控制寄存器定时器系统控制寄存器1 (Timer System Control R

31、egister 11 (Timer System Control Register 1,TSCR1)TSCR1)TENTEN:定时器允许位:定时器允许位 1 = 1 = 允许定时器正常运行。允许定时器正常运行。 0 = 0 = 禁止主定时器禁止主定时器( (包括计数器包括计数器) ),可用于降低功耗。,可用于降低功耗。TSWAITSWAI:等待模式下定时器模块停止位:等待模式下定时器模块停止位1 = 1 = 当当MCUMCU处于等待模式时,禁止定时器模块。定时器中断不能使处于等待模式时,禁止定时器模块。定时器中断不能使MCUMCU退退出等待模式。出等待模式。0 = 0 = 在等待期间允许在等待

32、期间允许ECTECT模块继续运行。模块继续运行。基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块1. 1. 定时器系统控制寄存器定时器系统控制寄存器1 (Timer System Control Register 11 (Timer System Control Register 1,TSCR1)TSCR1)TSFRZTSFRZ:冻结模式下定时器和模数计数器停止位:冻结模式下定时器和模数计数器停止位 1 = 1 = 只要只要MCUMCU处于冻结模式,禁止定时器和模数计数器。处于冻结模式,禁止定时器和模数计数器。 0 = 0 = 冻结模式下允许定

33、时器和模数计数器继续运行。冻结模式下允许定时器和模数计数器继续运行。TFFCA TFFCA :快速清除定时器所有标志位:快速清除定时器所有标志位1 = 1 = 对于对于TFLG1TFLG1寄存器,读寄存器,读ICIC通道或写通道或写OCOC通道将清除相应的标志通道将清除相应的标志CnFCnF。对于对于TFLG2TFLG2寄存器,对寄存器,对TCNTTCNT寄存器的任何访问将清除寄存器的任何访问将清除TOFTOF标志。标志。对对PACN3PACN3和和PACN2PACN2寄存器的任何访问将清除寄存器的任何访问将清除PAFLGPAFLG寄存器中的寄存器中的PAOVFPAOVF和和PAIFPAIF标

34、标志。志。对对PACN1PACN1和和PACN0PACN0寄存器的任何访问将清除寄存器的任何访问将清除PBFLGPBFLG寄存器中的寄存器中的PBOVFPBOVF标志。标志。0 = 0 = 定时器标志普通清除方式。允许清除定时器标志,使其正常运行。定时器标志普通清除方式。允许清除定时器标志,使其正常运行。基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块9.2.2 ECT9.2.2 ECT模块的基本寄存器模块的基本寄存器2. 2. 定时器系统控制寄存器定时器系统控制寄存器2 (Timer System Control Register 22 (T

35、imer System Control Register 2,TSCR2)TSCR2)TOITOI:定时器溢出中断允许位:定时器溢出中断允许位 1 = 1 = 当当TOFTOF标志置位时,允许定时器溢出中断。标志置位时,允许定时器溢出中断。 0 = 0 = 禁止定时器溢出中断。禁止定时器溢出中断。TCRETCRE:定时器计数器复位允许:定时器计数器复位允许 1 = 1 = 通过成功的输出比较通过成功的输出比较7 7复位自由运行计数器。复位自由运行计数器。 0 = 0 = 禁止计数器复位,计数器自由运行。禁止计数器复位,计数器自由运行。p如果如果TC7 = $0000TC7 = $0000且且T

36、CRE = 1TCRE = 1,TCNTTCNT一直保持一直保持$0000$0000。p如果如果TC7 = $FFFFTC7 = $FFFF且且TCRE = 1TCRE = 1,当,当TCNTTCNT从从$FFFF$FFFF复位到复位到$0000$0000时,时,TOFTOF将不会置位。将不会置位。基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块预分频系数选择预分频系数选择9.2.2 ECT模块的基本寄存器模块的基本寄存器2. 2. 定时器系统控制寄存器定时器系统控制寄存器2 (Timer System Control Register 22

37、(Timer System Control Register 2,TSCR2)TSCR2)PR2PR2、PR1PR1、PR0PR0:定时器预分频器选择位:定时器预分频器选择位3. 3. 定时器计数寄存器定时器计数寄存器(Timer Count Register(Timer Count Register,TCNT)TCNT)p1616位主定时器是一个递增计数器,不停地对时钟信号位主定时器是一个递增计数器,不停地对时钟信号TIMCLKTIMCLK进行计数,进行计数,定时器计数寄存器定时器计数寄存器TCNTTCNT的内容即为计数结果。的内容即为计数结果。基于HCS12的嵌入式系统设计第第9 9章章

38、S12S12增强型捕捉定时器模块增强型捕捉定时器模块9.2 9.2 自由运行计数器及定时器基本寄存器自由运行计数器及定时器基本寄存器9.2.2 ECT9.2.2 ECT模块的基本寄存器模块的基本寄存器4. 4. 主定时器中断标志寄存器主定时器中断标志寄存器2 (Main Timer Interrupt Flag 22 (Main Timer Interrupt Flag 2,TFLG2)TFLG2)TOFTOF:主定时器溢出标志:主定时器溢出标志p当自由运行定时器溢出时,当自由运行定时器溢出时,TOF=1TOF=1,如果允许中断(,如果允许中断(TSCR2TSCR2寄存器中寄存器中TOI=1T

39、OI=1),则将引发溢出中断。),则将引发溢出中断。p向该位写向该位写1 1将清除将清除TOFTOF标志。标志。p如果如果TSCR1TSCR1寄存器中的寄存器中的TFFCA=1TFFCA=1,对,对TCNTTCNT的任何访问将清零的任何访问将清零TFLG2TFLG2寄存器。寄存器。基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块9.3 9.3 输入捕捉功能及寄存器设置输入捕捉功能及寄存器设置9.3.1 ECT9.3.1 ECT模块的输入捕捉功能模块的输入捕捉功能【功能选择【功能选择】p当定时器当定时器IC/OCIC/OC选择寄存器选择寄存器TI

40、OSTIOS中的中的IOSnIOSn=0=0时,通道定义为输入捕捉。时,通道定义为输入捕捉。【工作原理【工作原理】p自由运行定时器启动后,边沿检测器便开始监视引脚事件,一旦引脚电平自由运行定时器启动后,边沿检测器便开始监视引脚事件,一旦引脚电平出现设定的有效跳变,自由运行计数器寄存器出现设定的有效跳变,自由运行计数器寄存器TCNTTCNT的当前值便被捕捉到捕的当前值便被捕捉到捕捉寄存器捉寄存器TCnTCn中中(n=0(n=07)7)。p【有效跳变边沿【有效跳变边沿】上升沿、下降沿或任意跳变,由定时器控制寄存器上升沿、下降沿或任意跳变,由定时器控制寄存器TCTL3TCTL3和和TCTL4TCTL

41、4中的中的EDGxBEDGxB和和EDGxAEDGxA位决定。位决定。p设置设置EDGxB:EDGxAEDGxB:EDGxA=00=00,可以关闭边沿检测器,停止该通道的捕捉。,可以关闭边沿检测器,停止该通道的捕捉。p要求引脚输入的最小脉宽大于要求引脚输入的最小脉宽大于2 2个模块时钟周期。个模块时钟周期。基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块9.3 9.3 输入捕捉功能及寄存器设置输入捕捉功能及寄存器设置9.3.1 ECT9.3.1 ECT模块的输入捕捉功能模块的输入捕捉功能【中断产生【中断产生】p捕捉完成后,主定时器中断标志寄存器

42、捕捉完成后,主定时器中断标志寄存器TFLG1TFLG1中的中断请求标志中的中断请求标志CnFCnF置位。置位。p如果定时器中断允许寄存器如果定时器中断允许寄存器TIETIE中的中断允许位中的中断允许位CnICnI=1=1,且,且CCRCCR中的控制位中的控制位I=0I=0,则系统会产生一次,则系统会产生一次输入捕捉中断输入捕捉中断。p如果不采用中断方式响应引脚事件,可以置如果不采用中断方式响应引脚事件,可以置CnICnI=0=0,通过软件查询标志,通过软件查询标志CnFCnF来进行处理。各个来进行处理。各个IC/OCIC/OC通道可以单独发出中断请求,也可以分别关通道可以单独发出中断请求,也可

43、以分别关闭中断。闭中断。p事件处理后,可以向事件处理后,可以向TFLG1TFLG1寄存器的对应位写入寄存器的对应位写入1 1,清除标志,清除标志CnFCnF。基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块9.3 9.3 输入捕捉功能及寄存器设置输入捕捉功能及寄存器设置9.3.1 ECT9.3.1 ECT模块的输入捕捉功能模块的输入捕捉功能【通道类型【通道类型】p带缓冲的通道带缓冲的通道IC0IC0IC3(IC3(引脚引脚PT0PT0PT3)PT3)和和非缓冲通道非缓冲通道IC4IC4IC7(IC7(引脚引脚PT4PT4PT7)PT7)。【覆盖

44、保护功能【覆盖保护功能】p每个通道的每个通道的IC/OCIC/OC寄存器寄存器TCnTCn都具有覆盖保护功能,以防止都具有覆盖保护功能,以防止ICIC寄存器内容尚寄存器内容尚未读出之前,上一次捕捉的值被新值所覆盖。通过设置输入控制覆盖寄存未读出之前,上一次捕捉的值被新值所覆盖。通过设置输入控制覆盖寄存器器ICOVWICOVW的相应位,决定是否允许用新的捕捉值覆盖上一次的捕捉值。的相应位,决定是否允许用新的捕捉值覆盖上一次的捕捉值。1 1带缓冲的带缓冲的ICIC通道通道p 【组成【组成】边沿检测、延迟滤波、捕捉寄存器和保持寄存器。边沿检测、延迟滤波、捕捉寄存器和保持寄存器。基于HCS12的嵌入式

45、系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块9.3.1 ECT9.3.1 ECT模块的输入捕捉功能模块的输入捕捉功能1 1带缓冲的带缓冲的ICIC通道通道(1) (1) 边沿检测边沿检测p引脚逻辑电平的变化由内部边沿检测电路判别,判别规则由定时器控制寄引脚逻辑电平的变化由内部边沿检测电路判别,判别规则由定时器控制寄存器存器TCTL3TCTL3和和TCTL4TCTL4中的控制位中的控制位EDGxBEDGxB和和EDGxAEDGxA的状态决定,判别结果送到延的状态决定,判别结果送到延迟计数器进行滤波处理。迟计数器进行滤波处理。基于HCS12的嵌入式系统设计第第9 9

46、章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块1 1带缓冲的带缓冲的ICIC通道通道(2) (2) 延迟滤波延迟滤波p当延迟功能有效时,输入引脚检测到一个有效边沿后,延迟计数器按照预当延迟功能有效时,输入引脚检测到一个有效边沿后,延迟计数器按照预先选择的先选择的M M时钟时钟( (模块时钟,等于内部总线时钟模块时钟,等于内部总线时钟) )周期数,延迟给定的时间周期数,延迟给定的时间间隔,才产生输出脉冲。间隔,才产生输出脉冲。p延迟时间由延迟计数器控制寄存器延迟时间由延迟计数器控制寄存器DLYCTDLYCT中的中的DLY1DLY1、DLY0DLY0决定。延迟计数决定。延迟计数结束后,

47、延迟计数器自动清结束后,延迟计数器自动清0 0。p要求输入信号两个有要求输入信号两个有效边沿之间的持续时效边沿之间的持续时间必须大于设定的延间必须大于设定的延迟时间。迟时间。基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块9.3.1 ECT9.3.1 ECT模块的输入捕捉功能模块的输入捕捉功能1 1带缓冲的带缓冲的ICIC通道通道(3) (3) 输入捕捉与锁存输入捕捉与锁存p延迟后的有效信号送到输入捕捉逻辑,根据输入控制系统控制寄存器延迟后的有效信号送到输入捕捉逻辑,根据输入控制系统控制寄存器ICSYSICSYS控制位控制位BUFENBUFEN

48、的状态和输入控制覆盖寄存器的状态和输入控制覆盖寄存器ICOVWICOVW相关位的设置,决相关位的设置,决定是否将定是否将TCNTTCNT的当前值捕捉到捕捉寄存器的当前值捕捉到捕捉寄存器TCnTCn中,以及是否将中,以及是否将TCnTCn中原来中原来的捕捉值锁存到保持寄存器的捕捉值锁存到保持寄存器TCnHTCnH中。中。p保持寄存器允许在不保持寄存器允许在不产生中断的条件下,产生中断的条件下,连续捕捉两次不同时连续捕捉两次不同时刻的值。刻的值。基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块9.3.1 ECT9.3.1 ECT模块的输入捕捉功能模

49、块的输入捕捉功能1 1带缓冲的带缓冲的ICIC通道通道(3) (3) 输入捕捉与锁存输入捕捉与锁存p当输入捕捉寄存器当输入捕捉寄存器TCnTCn的值被读取后或被锁存到保持寄存器的值被读取后或被锁存到保持寄存器TCnHTCnH中时,相中时,相应的应的TCnTCn被清空。被清空。p当保持寄存器的内容被读出时,当保持寄存器的内容被读出时,TCnHTCnH也被清空。也被清空。p锁存完成后,根据中锁存完成后,根据中断允许寄存器断允许寄存器TIETIE中中CnICnI位的设置,决定是位的设置,决定是否向否向CPUCPU提出中断请求。提出中断请求。基于HCS12的嵌入式系统设计第第9 9章章 S12S12增

50、强型捕捉定时器模块增强型捕捉定时器模块1 1带缓冲的带缓冲的ICIC通道通道(4) (4) 带缓冲的带缓冲的ICIC通道的工作模式通道的工作模式p【工作模式【工作模式】锁存模式锁存模式和和队列模式队列模式,由输入控制系统控制寄存器,由输入控制系统控制寄存器ICSYSICSYS的的控制位控制位LATQLATQ决定。决定。锁存模式锁存模式当输入控制系统控制寄存器当输入控制系统控制寄存器ICSYS中中的的LATQ=1时,为输入捕捉锁存模式。时,为输入捕捉锁存模式。p 每个有效的输入每个有效的输入引脚跳变将自由引脚跳变将自由定时器的值复制定时器的值复制到捕捉寄存器到捕捉寄存器TCnTCn中,而中,而T

51、CnTCn到到TCnHTCnH的传送必须依赖的传送必须依赖MDCMDC复复0 0或强制锁或强制锁存命令实现。存命令实现。基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块锁存模式锁存模式【覆盖控制【覆盖控制】p如果输入控制覆盖寄存器如果输入控制覆盖寄存器ICOVWICOVW中的相应位中的相应位NOVWxNOVWx0 0,当发生,当发生新的输入捕捉时,输入捕捉寄新的输入捕捉时,输入捕捉寄存器存器TCnTCn的值将被新值所覆盖。的值将被新值所覆盖。如果发生锁存操作,其保持寄如果发生锁存操作,其保持寄存器存器TCnHTCnH的内容也会被覆盖。的内容也会

52、被覆盖。p如果如果ICOVWICOVW寄存器中的相应位寄存器中的相应位NOVWxNOVWx1 1,TCnTCn或或TCnHTCnH必须处于必须处于清空状态才允许写入,否则不清空状态才允许写入,否则不能写入新值。这样就可以在读能写入新值。这样就可以在读取捕捉值或将该捕捉值转移到取捕捉值或将该捕捉值转移到保持寄存器之前,避免保持寄存器之前,避免TCnTCn和和TCnHTCnH被覆盖。被覆盖。基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块1 1带缓冲的带缓冲的ICIC通道通道(4) (4) 带缓冲的带缓冲的ICIC通道的工作模式通道的工作模式锁存模

53、式锁存模式p【锁存条件【锁存条件】MDCMDC自然回自然回0 0。向向MDCMDC直接写直接写入入$0000$0000。向向MDCMDC控制寄控制寄存器存器MCCTLMCCTL强强制锁存控制位制锁存控制位ICLATICLAT直接写直接写1 1。LATQ=1基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块p 【锁存条件【锁存条件】 当当MDCMDC向下溢出向下溢出( (计数值计数值=0)=0)时,时,TCnTCn中的内容被锁存到各自的中的内容被锁存到各自的保持寄存器保持寄存器TCnHTCnH中。中。 当输入控制系统控制寄存器当输入控制系统控制寄存

54、器ICSYSICSYS中的控制位中的控制位BUFEN=1BUFEN=1时,时,向向MDCMDC和其计数寄存器和其计数寄存器MCCNTMCCNT写入写入$0000$0000,将使,将使TCnTCn的内容的内容锁存到各自的保持寄存器锁存到各自的保持寄存器TCnHTCnH中。中。 当当ICSYSICSYS寄存器中的控制位寄存器中的控制位BUFEN=1BUFEN=1时,向时,向MDCMDC控制寄存控制寄存器器MCCTLMCCTL强制锁存控制位强制锁存控制位ICLATICLAT写写1 1,将使,将使TCnTCn中的内中的内容锁存到各自的保持寄存器容锁存到各自的保持寄存器TCnHTCnH中。中。锁存模式下

55、的锁存模式下的ECT模块框图模块框图基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块9.3.1 ECT9.3.1 ECT模块的输入捕捉功能模块的输入捕捉功能(4) (4) 带缓冲的带缓冲的ICIC通道的工作模式通道的工作模式队列模式队列模式p 一旦输入引脚上出现一个有效的电平跳变,主定时器中的值被复制到捕捉寄存器一旦输入引脚上出现一个有效的电平跳变,主定时器中的值被复制到捕捉寄存器TCnTCn中。中。p TCnTCn与与TCnHTCnH形成一个类似形成一个类似先进先出先进先出的队列,每次捕捉值从的队列,每次捕捉值从TCnTCn寄存器进入,随着下

56、寄存器进入,随着下一个捕捉值的到来移入一个捕捉值的到来移入TCnHTCnH寄存器,程序可以从寄存器,程序可以从TCnHTCnH取得结果。取得结果。当输入控制系统控制寄存器当输入控制系统控制寄存器ICSYS中中的的LATQ=0时,为输入捕捉时,为输入捕捉队列模式队列模式。p 然而,这个队列是然而,这个队列是开放的,即程序也开放的,即程序也可以直接从可以直接从TCnTCn取取得捕捉结果。得捕捉结果。基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块9.3.1 ECT9.3.1 ECT模块的输入捕捉功能模块的输入捕捉功能(4) (4) 带缓冲的带缓冲的

57、ICIC通道的工作模式通道的工作模式队列模式队列模式p 【覆盖控制【覆盖控制】如果输入控制覆盖寄存器如果输入控制覆盖寄存器ICOVWICOVW中的相应位中的相应位NOVWxNOVWx0 0,当发生新的输入捕捉时,当发生新的输入捕捉时,ICIC寄存器中的值将被锁存到其保持寄存器中,寄存器中的值将被锁存到其保持寄存器中,ICIC寄存器存储新的定时器值。寄存器存储新的定时器值。如果如果ICOVWICOVW寄存器中的相应位寄存器中的相应位NOVWxNOVWx1 1,TCnTCn或或TCnHTCnH必须处于清空状态才允许写入,必须处于清空状态才允许写入,否则不能写入新值。否则不能写入新值。基于HCS12

58、的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块队列模式下定时器模块框图队列模式下定时器模块框图9.3.1 ECT9.3.1 ECT模块的输入捕捉模块的输入捕捉功能功能1 1带缓冲的带缓冲的ICIC通道通道(4) (4) 带缓冲的带缓冲的ICIC通道的工作模式通道的工作模式队列模式队列模式p 【锁存条件【锁存条件】在队列模式下,读在队列模式下,读TCnHTCnH将使将使相应的脉冲累加器的值锁存相应的脉冲累加器的值锁存到其保持寄存器中。到其保持寄存器中。基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块【中断标志

59、建立条件【中断标志建立条件】p在在锁存模式锁存模式下,下,LATQ=1LATQ=1,无论输入控制系统控制寄存器,无论输入控制系统控制寄存器ICSYSICSYS中的输入捕中的输入捕捉缓冲允许位捉缓冲允许位BUFENBUFEN和定时器标志置位模式位和定时器标志置位模式位TFMODTFMOD的状态如何,只有发的状态如何,只有发生捕捉时才会置位中断标志生捕捉时才会置位中断标志CnFCnF。p在在队列模式队列模式下,下,LATQ=0LATQ=0,如果,如果BUFENBUFEN和和TFMODTFMOD中任意一个状态为中任意一个状态为0 0,中断标,中断标志志CnFCnF置位条件与置位条件与LATQ=1LA

60、TQ=1时相同。只有当时相同。只有当BUFEN=1BUFEN=1和和TFMOD=1TFMOD=1时,捕捉时不时,捕捉时不会置位中断标志会置位中断标志CnFCnF,TCnTCn到到TCnHTCnH的锁存操作才会置位标志的锁存操作才会置位标志CnFCnF,这样就可,这样就可以在不产生中断的条件下,连续捕捉两次不同时刻的值。以在不产生中断的条件下,连续捕捉两次不同时刻的值。带缓冲的带缓冲的IC通道中断标志建立逻辑通道中断标志建立逻辑基于HCS12的嵌入式系统设计第第9 9章章 S12S12增强型捕捉定时器模块增强型捕捉定时器模块9.3 9.3 输入捕捉功能及寄存器设置输入捕捉功能及寄存器设置9.3.

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论