DSP原理与应用 教学课件 ppt 作者 张东亮 第6章事件管理器

上传人:E**** 文档编号:89190386 上传时间:2019-05-21 格式:PPT 页数:90 大小:1.01MB
返回 下载 相关 举报
DSP原理与应用 教学课件 ppt 作者 张东亮 第6章事件管理器_第1页
第1页 / 共90页
DSP原理与应用 教学课件 ppt 作者 张东亮 第6章事件管理器_第2页
第2页 / 共90页
DSP原理与应用 教学课件 ppt 作者 张东亮 第6章事件管理器_第3页
第3页 / 共90页
DSP原理与应用 教学课件 ppt 作者 张东亮 第6章事件管理器_第4页
第4页 / 共90页
DSP原理与应用 教学课件 ppt 作者 张东亮 第6章事件管理器_第5页
第5页 / 共90页
点击查看更多>>
资源描述

《DSP原理与应用 教学课件 ppt 作者 张东亮 第6章事件管理器》由会员分享,可在线阅读,更多相关《DSP原理与应用 教学课件 ppt 作者 张东亮 第6章事件管理器(90页珍藏版)》请在金锄头文库上搜索。

1、1,第6章 事件管理器,本章内容: 6.1 事件管理器功能概述 6.2 通用定时器 6.3 比较单元与PWM电路 6.4 空间矢量PWM 6.6 捕捉单元 6.7 正交脉冲编码QEP电路 6.8 事件管理器的中断 6.9 事件管理器的寄存器 6.10 事件管理器的应用实例,2,每个事件管理器包括: 两个通用定时器 GPT (General Purpose Timer) 比较单元(Compare Unit)与PWM (Pulse Width Modulation) 电路 捕获单元(Capture) 正交脉冲编码电路QEP (Quadrature Encoder Pulse ),240x DSP

2、提供两个完全相同的事件管理器模块EVA/EVB。事件管理器非常适用于运动控制和电机控制领域。,6.1 事件管理器功能概述,3,事件管理器A 功能框图,4,LF2407A 两个事件管理器模块:EVA和EVB。 每个事件管理器模块包括:两个通用定时器(GP)、三个比较单元、三个捕捉单元以及两个正交编码脉冲输入电路(QEP)。 EVA和EVB功能相同,只是名称不同。 通用定时器功能:具有计数/定时功能,可以为各种应用提供时基,并可以产生比较输出/PWM信号。,5,比较单元功能: 三个比较单元可以输出3组(6路)比较输出/PWM信号,且具有死区控制等功能。 捕捉单元功能: 三个捕捉单元可以记录输入引脚

3、上信号跳变的时刻。 QEP电路功能: 具有直接连接光电编码器脉冲的能力,可获得旋转机械的速度和方向等信息。 事件管理器的设计,使得事件管理器既可以实时控制电机(由PWM电路实现),同时还可以监视电机的运行状态(由QEP电路实现)。,6,事件管理器引脚 输入跳变脉冲宽度至少保持两个CPU时钟周期才能被识别。,7,通用定时器x包括以下部件: (EVA: x=1, 2; EVB: x=3, 4) 16位可读写的定时器计数器 TxCNT 16位可读写的定时器周期寄存器 TxPR 16位可读写的定时器比较寄存器 TxCMPR 16位可读写的定时器控制寄存器 TxCON,6.2 通用定时器,1. 通用定时

4、器的功能,8,通用定时器 GPT框图,9,2. 通用定时器的输入与输出,通用定时器的输入包括: 内部CPU时钟。 外部时钟TCLKINA/B,最高频率不超过CPU时钟的1/4。 方向输入TDIRA/B,控制定时器增/减计数的方向。 复位信号RESET。 用于QEP电路时,QEP产生定时器的时钟和方向。 通用定时器的输出包括: 通用定时器比较输出TxCMP, x=1,2,3,4。 为ADC模块提供ADC转换启动信号。 为自身比较逻辑和比较单元提供下溢、上溢、比较匹配和周期匹配信号。 计数方向指示位。,10,定时器控制寄存器TxCON(x=14),D15-14: Free, Soft 仿真控制位。

5、 00: 一旦仿真悬挂,立即停止。 01: 一旦仿真悬挂,在当前定时器周期结束后停止。 10,11: 操作不受仿真悬挂影响。 D13: Reserved D12-11:TMOD1,TMODE0 计数模式。连续增减、连续增、定向增减 00:停止/保持。 01:连续增/减计数模式(Continuous up/down count mode)。 10:连续增计数模式(Continuous up count mode)。 11:定向增/减计数模式(Directional up/down count mode)。,3. 通用定时器的寄存器,11,D10-8:TPS2-TPS0输入时钟预定标系数1/2n

6、000:x/1 001:x/2 010:x/4 011:x/8 100:x/16 101:x/32 110:x/64 111:x/128 (x=CPU时钟) D7:T2SW1/T4SW3定时器2,4周期寄存器选择位。 0:使用自身的定时器使能位(TENABLE)。 1:使用T1CON(对于EVA)或T3CON(对于EVB)中的定时器使能位来使能或禁止操作,忽略自身的定时器使能位。 D6:TENBLE定时器使能位。 0:禁止定时器操作。 1:使能定时器操作。 D5-4:TCLKS1,TCLKS0 时钟源选择。 00:内部(HSPCLK)。 01:外部(TCLKINx,x=A,B)。 10:保留。

7、 11:正交脉冲编码电路(QEP)。,12,D3-2:TCLD1,TCLD0定时器比较寄存器的重载条件。 00:计数器值为0时,重装载。 01:计数器值为0或等于周期寄存器值时,重装载。 10:立即重装载。 11:保留。 D1:TECMPR定时器比较使能位。 0:禁止定时器比较操作。 1:使能定时器比较操作。 D0:SELT1PR /SELT3PR周期寄存器选择。 0:使用自身的周期寄存器。 1:使用T1PR(在EVA模块)或T3PR(在EVB模块)作为周期寄存器,而忽略自身的周期寄存器。,13,全局通用定时器控制寄存器GPTCONA/B,D15,Reserved D14:T2STAT 定时器

8、2的状态。0:减计数,1:增计数 D13:T1STAT 定时器1的状态。0:减计数,1:增计数 D12/D11:T2/1TRIPE:T2/1CTRIP使能位。0:禁止 1:使能。 D10-9:T2TOADC 定时器2启动AD转换事件。 00:不启动模数转换。 01:下溢中断标志启动模数转换。 10:周期匹配中断标志启动模数转换。 11:比较匹配中断标志启动模数转换。 D8-7:T1TOADC 定时器1启动AD转换事件。与T1相似。,14,D6:TCOMOE 比较输出允许。 0:定时器比较输出T1/2PWM_T1/2CMP置成高阻态。 1:定时器比较输出,T1/2PWM_T1/2CMP由独立定时

9、器比较逻辑驱动。 D5/D4:T2/1CMPOE:定时器2/1比较输出使能。 0:定时器2/1比较输出置成高阻态。 1:定时器2/1比较输出由定时器2比较逻辑驱动。 D3-2:T2PIN 定时器2比较输出极性。 00:强制低电平。 01:低电平有效。 10:高电平有效。 11:强制高电平。 D1-0:T1PIN定时器1比较输出极性。与T1相似。,15,通用定时器比较寄存器(TxCMPR, x=14) 比较寄存器中存放了一个常数,它和通用定时器的计数器值不断比较,当比较匹配时,将产生下列事件: 根据GPTCONA/B设置的模式,相关的比较输出引脚将产生跳变。 相应的中断标志位置位。 如果中断未被

10、屏蔽,则产生一个外设中断请求。 通过设置TxCON的相关位,可以使能或禁止比较操作。,16,通用定时器周期寄存器(TxPR, x=14) 周期寄存器的值决定了定时器的周期。当周期寄存器的值和定时器的计数器值相等时,根据计数器所使用的计数方式,通用定时器复位为0,或继续向下递减计数。,通用定时器比较寄存器和周期寄存器的双缓冲 通用定时器的比较寄存器TxCMPR和周期寄存器TxPR都带有影子寄存器,在一个周期的任何时刻都可以对这两个寄存器进行读/写。然而当进行写操作时,新值写到影子寄存器。对于比较寄存器,只有当TxCON寄存器指定的特定定时器事件发生时,影子寄存器中的值才加载到比较寄存器中。对于周

11、期寄存器,只有当计数寄存器TxCNT为0时,影子寄存器的值才能重新加载到周期寄存器。,17,4. 通用定时器的比较输出,通用定时器的比较输出可以高电平有效、低电平有效、强制高或强制低,与GPTCONA/B控制寄存器的设置有关。当比较输出高(低)电平有效同时在第一次比较匹配时,比较输出由低变为高(由高变为低)。如果通用定时器配置为递增/递减计数模式,则在第二次比较匹配或周期匹配时,比较输出从高至低(由低至高)。当定时器的比较输出设置为强制高(低)时,它立即变为高(低)电平。,18,5. 定时器计数方向,寄存器GPTCONA/B中的相应位反映了通用定时器的计数方向: 1 代表递增计数; 0 代表递

12、减计数。,6. 通用定时器的时钟,可以采用内部CPU时钟或外部时钟作为时钟源,外部时钟通过TCLKINA/B引脚提供。外部时钟的频率必须小于或等于内部CPU频率的1/4。在定向增/减计数模式下,通用定时器2(EVA)和通用定时器4(EVB)可以使用QEP电路,此时QEP电路为定时器提供时钟和方向输入。,19,7. 通用定时器的同步,适当地配置T2CON控制寄存器,可实现通用定时器2与通用定时器1的同步。方法如下: 将T2CON中的T2SWT1位置1,使定时器2使用定时器1的使能位TENABLE启动定时器,这样即可实现两个计数器的同步启动。 在启动同步操作之前,用不同的初始化值初始化通用定时器1

13、和定时器2中的计数器。 通过将寄存器T2CON的SELT1PR位置位,使通用定时器2使用通用定时器1的周期寄存器作为自己的周期寄存器,而不用自己本身的周期寄存器。,20,8. 用一个定时器事件启动A/D转换 在GPTCONA/B寄存器中可设置A/D转换器的启动信号由哪个通用定时器事件提供,例如下溢中断、周期匹配中断和比较匹配中断,这样就可以在没有CPU干预的情况下,实现通用定时器事件和A/D转换器开始转换之间的同步。,9. 仿真悬挂时的通用定时器操作 在仿真悬挂时,通用定时器的控制寄存器定义了通用定时器的操作。当在线仿真产生仿真中断时,设置相关的控制位可以使通用计数器继续计数,也可以设置使计数

14、立即停止或当前计数周期结束后停止。,21,10. 通用定时器中断,在通用定时器的EVAIFRA、EVAIFRB、EVBIFRA和EVBIFRB寄存器中有16个中断标志,当发生下列事件时,每个通用定时器可产生4个中断。 上溢(Overflow), TxOFINT(x=14)。 下溢(Underflow), TxUFINT(x=14)。 比较匹配(Compare match), TxCINT(x=14)。 周期匹配(Period match), TxPINT(x=14)。,22,通用定时器的有四种工作模式,停止/保持模式 连续增计数模式 定向增/减模式 连续增/减模式,11. 通用定时器的计数操作

15、模式,23,通用定时器连续增计数模式,24,通用定时器定向增/减计数模式,25,通用定时器 连续增/减模式,26,通用定时器连续增计数模式下的比较/PWM输出 GP Timer Compare/PWM Output in Up/Down Counting Modes,12. 通用定时器的比较操作,非对称波形的产生,27,通用定时器连续增减计数模式下的比较/PWM输出,对称波形的产生,28,/例6-1,已知通用I/O引脚IOPE14通过驱动电路连接4个LED指 /示灯。编程利用定时器T1中断方式定时1ms,令4个指示灯循 /环亮灭,每200ms切换1次。CLKIN=20MHz,CLKOUT=40

16、MHz。 #include “f2407_c.h” /*包含头文件*/ void interrupt gpt1( ); /中断服务函数声明 void gpt1_init(); /定时器T1初始化函数声明 void Led(); /指示亮灭函数声明 unsigned int nCount=1; /全局变量声明 main() SCSR1=0x02FC; /*CPU系统时钟 CLKOUT=20*2=40MHz, CLKIN=20MHz */ WDCR=0x006F; /*关闭看门狗*/ IFR=0xFFFF; /*清除中断标志 */ IMR=0x0002; /*使能中断2*/,29,MCRC=MCRC LED1亮 ,30,if(nCount=800) /800ms PEDATDIR=PEDATDIR ,31,void gpt1_init() /定时器T1初始化函数定义 EVAIMRA=0x0080; /定时器1周期中断使能 EVAIFRA=0xFFFF; /清除中断标志

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号