书签 分享 收藏 举报 版权申诉 / 44
上传文档赚钱

类型增强型定时器ECT模块课件.pptx

  • 上传人(卖家):晟晟文业
  • 文档编号:4685445
  • 上传时间:2023-01-01
  • 格式:PPTX
  • 页数:44
  • 大小:545.13KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《增强型定时器ECT模块课件.pptx》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    增强 定时器 ECT 模块 课件
    资源描述:

    1、*aH|J 日寸才 MC9S12MC9S12系列单片机增强型定时器模块是在标准定时 器模块的基础上添加了新的功能。定时器的核心是一个1616位的可编程计数器,计数的 频率可以通过分频来调整。用途彳艮多普通定时器的工作,例如脉冲计数、定时等可以用来测量输入的脉冲宽度产生我们需要的脉冲波形。*a H|J 日寸才 ECT模块的组成:1个预分频器1个16位自由运行数器 8个 16位IC/OC通;2个16位(4个8位 脉冲累加器 1个16位模数递减 数器 E C T 模块的组成:1 个预分频器1 个1 6 位自由运行数增强型定时器E C T 模块课件输入捕捉功能是用来监测外部的事件和输入信号。当外部事件

    2、发生或信号发生变化时,在指定的 输入捕捉引脚上发生一个指定的沿跳变(可以;指定该跳变是上升沿还是下降沿)。定时器捕 捉到特定的沿跳变后,把计数寄存器当前的值4 I计数器时钟 /锁存到通道寄存器。如果输入捕捉控制寄存器甲夜许输入捕捉16位计数器16在捕捉硕存嘉I,利用中中断,系睚基沿选择N断处理程序航晶序叔*g或信号发输入捕捉功能是用来监测外部的事件和输入信号。当外部事件发生在特定的时刻在管脚上输出特定电平,用来控 制外电路工作。原理是:输出比较寄存器的值和计数器的值每 隔4个总线周期比较一次,当两个值相等的时候,会在该通道的引脚上输出预先规定的电平。如果输出比较中断允许,还会产生一个硬件的定时

    3、中断。计数器时钟E,输出比较最简单和最常16位计数器间隔的脉冲。n一16位椅出比较寄存器比较器在特定的时刻在管脚上输出特定电平,用来控 制外电路工作。原输入捕捉/输出比较通道有8 8个输入捕捉输出比较通道。共有8 8个外部引 脚,分别为IOCOI0C7,IOCOI0C7,与PORTTPORTT复用。通过选择TIOSTIOS寄存器的lOSxlOSx位可以选择是输出 比较还是输入捕捉。对于输入捕捉:带缓冲的输入捕捉通道不带缓冲的输入捕捉通道输入捕捉/输出比较通道不带缓冲的输入捕捉通道 8个输入捕捉,其中4个(PT4PT7)带有*一个捕捉寄存器用来记录管脚上电平变化|时自由计数器的锁存值。j捕捉寄存

    4、器TCx (当输入覆盖控制寄存器(ICOVW)的 INOVWx位清0时,每发生一次输入捕捉,(新的计数器的值就会覆盖原来的输入捕捉1 寄存器的内容;、亿云Me四4 n-PP/k-I k -kn 去 t=2 口.口.XU*不带缓冲的输入捕捉通道、亿云Me 四4 n-P P/k -I带缓冲的输入捕捉通道PT0PT3PT0PT3是带缓冲的输入捕捉通道。捕捉寄存器TCxTCx保持寄存器TCxHTCxH。,可以在不产生中断的情况下,连续记录两次自由 计数器的值。入口设置了延迟计数器/用来提高抗干扰能力 带缓冲的输入捕捉通道锁存方式:每个有效的引脚事件只将自由定时器的值放入捕 捉寄存器TCx,而TCx到保

    5、持寄存器TCxH的传 送必须依赖强制锁存命令才能实现/当模数计数器减为“0”/向模数计数器写入“$0000”,写强制锁存位ICLAT(输入控制系统控制寄存器ICSYS)输入捕捉寄存器的值将锁存到相应通道的保持寄 存器中,并将输入捕捉寄存器的值清零。锁存方式:队列方式TCxTCx与TCxHTCxH形成了 一个类似先进先出的 队列,每个捕捉结果从TCxTCx进入,然后随 着下一个捕捉结果的到来移入TCxH oTCxH o程序可以从TCxHTCxH取得结果,也可以直接 从TCxTCx取得捕捉结果。队列方式 4 4个8 8位的通道PAC0-PAC3PAC0-PAC3组成可以通过级联形成两个1616位通

    6、道PACAPACA、PACBPACB通过检测相应管脚上的有效边缘来记录脉冲的个数。各通道的8 8位累加器与4 4个缓冲ICIC通道相关联的,它们共享边沿检测与延迟电路。4 个8 位的通道P A C 0-P A C 3 组成两种工作模式椅锁存方式::通过锁存命令,将脉冲累加计数器的值锁 存到相应通道的保持寄存器中5队列方式:当读取某通道保持寄存器的值时,相应脉 冲累加器的值将被写入保持寄存器。两种工作模式 1616位递减模数计数器(MDC)(MDC)可以用作 时钟基准,产生周期性的中断请求。也可用于将ICIC寄存器和脉冲累加器的 值锁存到各自的保持寄存器中。1 6 位递减模数计数器(MD C)可

    7、以用作 时钟基准,产生周模数递减计数器(MCCNTMCCNT)模数递减标志寄存器(MCFLGMCFLG)模数递减控制寄存器(MCCTLMCCTL)I模数计数器由初值递减,递减到0 0时,会产生相应I的中断。I递减频率由总线时钟经分频得到。j初值可以由用户写入 模数递减计数器(MC C N T)在模数模式允许后(MODMCFMODMCF),向模数递 减计数器的写操作会更新预置数的值,模数计 数器递减到0 0时,就会装载最新的预置数,装载的操作也可以由置MCCTLMCCTL寄存器的FLMC FLMC 位为1 1来强制执行。总定时时间=预置数X X总线周期X X中断次数 在模数模式允许后(MO D

    8、MC F),向模数递 减计数器的写操等待中断等待中断在中断程序中,需 要清除相应的中断 标志位(MCFLG),并将中断次数减1,当中断次数减为。时,一次延时就完成了。在中断程序中,需 要清除相应的中断 标志位(MC F L G),P。引脚逻野延诅il数 器心比较器MOH保打寄存群复位SP1*引应逻辄延迟计散 器EDGA行?!顽砌PACTTCI H保抻寄存驿PA1H保持寄存器R2O引脚遂折延退讣故 器,腥比较器,复位引脚逻辑延迟讣故 器PA2H保持寄存器|复位_理箜_TC3li&tot较韶蓝PAQ5TC5H榛h井在盟PA3H别沽存器P。引脚逻野延诅i l 数 器 心比较器MO H 保打寄存A、:

    9、举三个例子讲述本节内容心流水灯显示椅使用输入捕捉功能,对外来脉冲进行计数心使用输出比较功能,输出一个具有一定宽 度的高电平脉冲 A、:举三个例子讲述本节内容BIT 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0T15tl4tl3T12tiltlOt9t8t7t6t5t4t3t2tltO0000000000000000WRESETTCNTTCNT为自由计数器的计数值,本例通过读取它的j j值实现延时。1这是一个1616位的加法计数器,最大值为65535o65535o任意时刻可读,正常模式下写操作无效。B I T 1 5 1 4 1 3 1 2 1 1 BIT7 6 5

    10、 4 3 2 1 BITOTENTSWAITSFRZTFFCAU020RESET:00000000必须设置TSCR1才可以使主定时器工作,需要在ECT模块初始化 时就设置好。TEN=1:主定时器使能。0=主定时器禁止,进入低功耗状2TSWAI=0:等待模式时主定时器继续工作,方便调试。0=停止工作。TSFRZ=O:冻结模式时主定时器继续工作。0=停止工作。TFFCA=O:自动清除标志位。1=手动清除。本例设置TSCRl=0 x80。B I T 7 6 5 TOI020TOREPR2PR1PRO00000000禁止定时器溢出中断。1=1=允许。BIT7 6 5 4 3 2 1 BITORWRES

    11、ET:TOITOI:TCRETCRE:定时计数器复位允许。0=0=禁止复位,计数器自由计数。1=1=允许复位。J进行完一次输出比较时,可以使定时计数器复位I IPR2PR2、PR1PR1、PROPRO:预分频因子选择主定时器的计数器频率=总线时钟频率于2 2顼分熊子T O I 0 2 0 T O R E P R 2 P R 1 P R O 0 0 0 0 0 0 0 0 禁止定void TimerOverflow(void)unsigned char i=l,j=0 x80;while(i!=0)&(j!=0)PORTA=(i|j);i=l;while(TCNT!=0 x0000);/延时 w

    12、hile(TCNT=0 x0000);void main(void)E n a b I e n t e rru pTSCRl=0 x80;77南盘使能TSCR2=0 x07;/74频系冬也 DDRA=0 xff;PORTA=Oxff;for(;)TimerOverflow();v o i d T i m e r O v e r f l o w(v o i d)增强型定时器E C T 模块课件 while(TCNT!=OxOOOO);|:while(TCNT=OxOOOO);|:这两句的含义是:TCNT开始计数后值不为0等待直到TCNT溢出返回0,然后再等到|TCNT不为0。为什么要弄两个whi

    13、le?/w h i l e(T C N T!=O x O O O O);利用输入捕捉。通道对外来的方波信号进行捕I 捉,采用中断的形式。中断发生后,读取捕)捉后的计数值,并通过PORTB口使LED灯点 亮以指示中断成功。1通道。设置为输入捕捉,采用双沿触发(上下j 沿均触发),ICO开中断,可以进入中断服务 程序。方波信号由PORTA_BIT6产生,PORTA_B IT6和IOCO硬件连接。利用输入捕捉。通道对外来的方波信号进行捕I 捉,采用中断的BIT RW7554321。SH37SH26SH1.5SH04mioDPACbfXBUFEXLAIQRESET00000000SHxy=O:正常操作

    14、。l=x通道和y通道将产生一样的输 入动作,x通道的设置同样适用于y。TFMOD=0:当出现有效的输入捕获事件,TFLG1中的 对应中断标志位CxF就置1。1=队列模式时才使用。PACMX=O:8位脉冲累加器溢出后自动回0。1=不自动 回0,停留在OxFFo脉冲累加器对IC通道捕获的有效边沿 数量进行计数。B I T R 7 5 5 4 3 2 1。S H 3 7 S H 2 6 S H 1.5 S H 0 4BnRW7554321。SH37SH26SH1.5SH04mioDPACbfXBUFEXLAIQRESET00000000 BUFEN=1 BUFEN=1:使用输入捕获缓冲区。0 0=不

    15、使用。(输入捕捉和脉冲累加器的保持寄存器)LATQ=O LATQ=O:输入捕获队列模式使能。产生一次成 功的输入捕获时,ICIC通道寄存器中保留的计数值会 被送到保持器中,然后ICIC寄存器会接收新的计数值。1 1=锁存模式使能。IC SYS=0 x02;/IC 缓冲使能B n 7 5 5 4 3 2 1。S H 3 7 S H 2 6 S H 1.5 S H 0 4 m i oBIT76543210RWC7FC6FC5FC4FC3FC2FC1FCOFRESET00000000TFLG1TFLG1指示了中断发生在哪个通道,需要对相应位 清零时,可以对它进行置1 1操作。C7F-C0FC7F-C

    16、0F:IC/OC IC/OC的 中断标志。当TSCRTSCR寄存器中的TFFCATFFCA位被置位时,对于输入捕 捉和输出比较通道的读写操作,将清除对应通道的 CxF CxF 位。B I T 7 6 5 4 3 2 1 0 R C 7 F C 6 F C 5 F C 4 F C 3 F C 2 FTCO-TC 7TCO-TC 7寄存器:用来锁存自由计数器的值,当得到有效的边沿触 发时,我们可以通过读这些寄存器来获得输入捕 捉计数值;A通过写这些寄存器来设置输出比较的计数值。任意时刻可读。A在输出比较模式任何时刻可写。A在输入捕捉模式对寄存器的写操作没有意义。当寄存器复位后,寄存器值等于$000

    17、0$0000o o T C O-T C 7 寄存器:BIT7S543210RWIOS7IOS6IOS5IOS4IOS3IOS2IOS1IOSORESETQ0000Q00IOSX:1=1=通道x x为输出比较;0=0=通道x x为输入捕获。B I T 7 S 5 4 3 2 1 0 R I O S 7 I O S 6 I O S 5 I O S 4 I OTCTL3 7 6 5 4 3 2 10RWEDG7BEDG7AFDG6BEDG6AEDG5BEDG5AEDG4BEDG4ARESET00000000rCTL476543710RWEDG3BEDG3AEDG2BEDG2AEDG1BEDG1AED

    18、G:BEDGOARESET 00000000EDGnA/B:输入捕捉边沿控制。本例设置0 x03(EDG0A=l,EDG0B=l)o即ICO通道采用上 升,下降沿都触发。EDMEDGuAftt0001仅在上升倾10仅茁Fl轴11上升下降醐碱n代表通道序号。T C T L 3 7 6 5 4 CxiCxi:1=1=第乂个通道中断允许;0 0=第乂个通道中断禁止。C x i:ICO的初始化:void icjnit(void)TSCR1=0 x90;11主定时器使能,对TCNT访问即可清除标志TSCR2=0 x07;/分频因子=128ICSYS=0 x02;/IC缓冲使能(保持寄存器)TIOS=0;

    19、/通道设置为输入捕获TCTL4=Oxff;采用上升、下降沿触发TIE=0b00000001;通道0开中断I C O 的初始化:初始化好后,需要在main函数中调用初始化函数ic_init()。以下是在main函数中,如何使用PO RTA_BIT6来产生一个方波信号。DDRA=Oxff;PORTA=OxOO;DDRB=Oxff;PORTB=OxOO;for(;)设置PORTA的方向寄存器,为输出/PORTA的输出初始化为低电平/PORTB设置为LED灯的控制信号/LED全灭 for(i=0;i6000;i+)PORTA_BIT6=1;循环中设置信号为高电平fo(i=0;iv6000;i+)POR

    20、TA_BIT6=0;循环中设置信号为低电平,产生方波初始化好后,需要在m a i n 函数中调用初始化函数i c _ i n i t方波信号已经成功得产生了,下面是中断服务程序:#pragma CODE_SEG NON_BANKED必须有这句void interrupt 8 icOJnt(void)TFLG1_COF=1;中断标志清除jc4=TC0B通过读TC0寄君器来响应中断,ic4、ic40为用户定义的变量 dic4=ic4-ic40;ic40=ic4;PQDTD=nYCC-用LEW 来指宗已经进入了中断/*以下放置其他代码*/方波信号已经成功得产生了,下面是中断服务程序:BTT 7654

    21、3210R000FOC7FOC6FOC5FOC4FOC3FOC2FOCIFOCORESET 00000000FOCxxFOCxx通道强制输出比较 )在相应的寄存器位写入强制输出比较命令,会立即使 相应的通道处于输出比较状态。)B T T 7 6 5 4 3 2 1 0 R 0 0 0 F O C 7 F O C 6 F O C 5 F OTCTL17654J210R WOLf70L70M60L60M50L50M4OL4RESET。000。0。0TCIL2?654321QR WONf30L3CM20L20M10L1OMOOLORESET00。00000OMn:输出模式OLn:输出等级这8对控制位

    22、是用来指定输出比较的输出动作的,当OMn和OLn二者 任意一个为1时,OCn对应的端口会有相应的输出。如果需要用OMn和OLn来控制相应定时器端口的输出,贝UOC7M中的 对应位必须清零。OMuOLn螃出动作00没有给出动作0105触发输出电平10OCn输出电平为低电平11OCn输出电平为高电平T C T L 1 7 6 5 4 J 2 1 0 R WO L f 7 0 L 7 0 M6 0 L 6 0 void oc_init():TSCR2=0 x07;时器溢出中断禁止 TIOS=0 x01;出比较 TIE=0 x01;TCTL2 OMO=1;平&TCTI y v o i d o c _

    23、i n i t()128分频,定通道。输中断使能输出低电1 2 8 分频,定通道。输 void main(void):Enablelnterrupts;DDRB=0 x00;PORTB=Oxff;DDRM=0 xff;PTM=0 xff;oc_init();v o i d m a i n(v o i d):E n a b l e l n t增强型定时器E C T 模块课件#pragma CODE_SEG NON_BANKED void interrupt 8 ocOJnt(void)TCTL2 OMO=1;:TCTL2 OLO=!TCTL2 OLO;:PTM PTM1=PORTB BIT1;TC0=TCNT+4000;:#p r a g m a C O D E _ S E G N O N _ B A N K E D 增强型定时器E C T 模块课件

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:增强型定时器ECT模块课件.pptx
    链接地址:https://www.163wenku.com/p-4685445.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库