TMS320C54X DSP原理及应用 第二版 教学课件 ppt 作者 乔瑞萍 第5-8章 第6章

上传人:E**** 文档编号:89353133 上传时间:2019-05-23 格式:PPT 页数:124 大小:1.94MB
返回 下载 相关 举报
TMS320C54X DSP原理及应用 第二版 教学课件 ppt 作者 乔瑞萍 第5-8章 第6章_第1页
第1页 / 共124页
TMS320C54X DSP原理及应用 第二版 教学课件 ppt 作者 乔瑞萍 第5-8章 第6章_第2页
第2页 / 共124页
TMS320C54X DSP原理及应用 第二版 教学课件 ppt 作者 乔瑞萍 第5-8章 第6章_第3页
第3页 / 共124页
TMS320C54X DSP原理及应用 第二版 教学课件 ppt 作者 乔瑞萍 第5-8章 第6章_第4页
第4页 / 共124页
TMS320C54X DSP原理及应用 第二版 教学课件 ppt 作者 乔瑞萍 第5-8章 第6章_第5页
第5页 / 共124页
点击查看更多>>
资源描述

《TMS320C54X DSP原理及应用 第二版 教学课件 ppt 作者 乔瑞萍 第5-8章 第6章》由会员分享,可在线阅读,更多相关《TMS320C54X DSP原理及应用 第二版 教学课件 ppt 作者 乔瑞萍 第5-8章 第6章(124页珍藏版)》请在金锄头文库上搜索。

1、第6章 TMS320C54x片内外设,6.1 时钟发生器 6.2 中断系统 6.3 定时器 6.4 主机接口 6.5 串行口,6.1 时 钟 发 生 器 图6-1 时钟电路时钟发生器为TMS320C54x提供时钟信号,它包括一个内部振荡器和一个锁相环电路。时钟发生器可以由内部振荡电路或外部时钟源驱动。, 内部振荡电路驱动方式:将一个晶体跨接到X1和X2/ CLKIN引脚两端,使内部振荡器工作,时钟电路如图6-1所示。图中的电路工作在基波方式,建议C1和C2值为10 pF。如果 工作在谐波方式,则还要加一些元件。 外部时钟源驱动方式:将一个外部时钟信号直接加到X2/CLKIN引脚(X1悬空不接)

2、。,晶体(Crystal)是晶体谐振器的简称,是一种压电石英晶体器件,具有一个固有的谐振频率,在恰当的激励作用下,以其固有频率振荡。振荡电路(Oscillator)是为晶体提供激励和检测的电路。晶振(Crystal Oscillator)将晶体、振荡器和负载电容集成在一起,其输出是方波时钟信号。,锁相环(Phase-Locked Loops,PLL)电路用于对输入时钟信号进行分频或倍频。它可以产生一个比外部时钟频率高数倍的CPU时钟,这个CPU时钟由一个特殊因子与外部时钟源相乘得到。这样,我们就可以使用一个频率很小的外部时钟源与CPU连接,以降低噪声。,TMS320C54x内部的PLL时钟控制

3、方式为: 硬件配置的PLL(如TMS320C541、TMS320C542、TMS320C543、TMS320C545和TMS320C546); 软件可编程PLL(如TMS320C545A、TMS320C546A 和TMS320C548)。,1硬件配置的PLL 通过设定TMS320C54x的3个引脚(CLKMD1、CLKMD2 和CLKMD3)的状态来完成PLL的配置。时钟方式的配置方法如表6-1所示。,由表6-1可见,不用PLL时,CPU的时钟频率等于晶体振荡频率或外部时钟频率的一半;如果用PLL,CPU的时钟频率等于外部时钟源或内部振荡器频率乘以系数N(PLLN)。 注意:在DSP已经正常工

4、作时,不能重新改变和配置DSP的时钟方式,但当DSP进入节电模式IDLE3,即其CLKOUT输出为高后,可以改变和重新配置DSP的时钟方式。,2软件可编程PLL 软件可编程PLL是一种高度灵活的时钟控制方式,它的时钟定标器提供各种时钟乘法器系数,并能直接接通和关断PLL。PLL的锁定定时器可以延迟器件PLL时钟方式的切换,直到锁定为止。,通过软件编程,可以选用以下两种时钟方式中的一种: PLL方式。输入时钟(CLKIN)乘以31个可能的系数中的一个,这些系数的取值范围是0.2515。这是靠PLL电路来完成的。 DIV(分频器)方式。输入时钟(CLKIN)除以2或4。当采用DIV方式时,所有的模

5、拟电路,包括PLL电路都关断,以使功耗最小。,6.1.2 时钟模块编程 软件可编程PLL可以对时钟方式寄存器(CLKMD)进行编程加载,以将其配置成所要求的时钟方式。CLKMD寄存器是16位存储器映像寄存器,地址为0058H。它用来定义PLL时钟模块中的时钟配置。CLKMD的结构如图6-2所示。,图6-2 CLKMD的结构,时钟方式寄存器(CLKMD)各位段的功能如表6-2所示,PLL的乘数如表6-3所示。,当用IDLE指令降低功耗要求时,恰当地使用PLL显得尤为重要。时钟发生器在DIV模式且禁止PLL时,消耗功耗最 少。因此,若要考虑降低功耗,则必须在IDLE指令执行前,从PLL模式切换到D

6、IV模式,且禁止PLL;在被IDLE1/IDLE2/ IDLE3指令唤醒后,时钟发生器会重新对PLL模式进行编程。,如果要从DIV进入PLL 3方式,已知PLLCOUNT= 64(锁定时间值),再在程序中加入如下指令即可: STM #0010001000000111B,CLKMD; PLLCOUNT=64(十进制),6.1.3 低功耗(节电)模式 TMS320C54x器件有四种节电模式,可以通过停止DSP内部的不同时钟,使TMS320C54x的核心进入休眠状态,降低功耗,且能保持CPU中的内容。当节电模式结束时,DSP被唤醒,可以连续工作下去。 通过执行IDLE1、IDLE2和IDLE3三条指

7、令,或使 信号为低电平,可使处理器进入不同的节电模式。表6-4列出了四种节电模式及其特性。,1IDLE1模式 IDLE1暂停所有的CPU活动,但片内外设仍在工作。片内外设如串口定时器等的中断可唤醒CPU结束节电工作方式。使用IDLE1指令可进入IDLE1模式,而使用唤醒中断则结束此方式。当发生唤醒中断时,如果INTM=0,则结束IDLE1时,TMS320C54x进入中断服务程序运行;如果INTM=1,则TMS320C54x紧随IDLE1指令的下一条指令继续工作。不管INTM为何值,所有唤醒中断都必须在中断屏蔽寄存器IMR中将其对应位设置为允许状态(除 和 之外)。,2IDLE2模式 IDLE2

8、暂停CPU和片内外设的工作。由于片内外设也停止了工作,不能产生中断,因而其唤醒方式不同于IDLE1,但是,其功耗会明显降低。通过在DSP芯片外部中断引脚 、 或 上加10 ns的低脉冲,可以启动唤醒中断服务,结束IDLE2。如果INTM=0,则结束IDLE1时,TMS320C54x进入中断服务程序运行;如果INTM=1,则TMS320C54x紧随IDLE1指令的下一条指令继续工作。,3IDLE3模式 IDLE3模式类同于IDLE2,它使片内锁相环PLL暂停工作,这样就完全使TMS320C54x停止了工作。与IDLE2相比,IDLE3更显著地降低了功耗。此外,如果系统需要工作在较低频率,则IDL

9、E3状态可重新配置PLL。进入和结束IDLE3模式的方法同IDLE2。,4HOLD模式 HOLD模式是另外一种节电模式,它使外部地址总线、数据总线和控制总线进入高阻状态,也可以使CPU暂停工作,这取决于HM位的状态。当HM=1时,CPU停止工作;当HM=0时,CPU继续工作。这时,TMS320C54x不能进行外部数据存取,CPU只能在内部工作。这种模式不能停止片内外设的工作,只有在信号无效时,才能结束HOLD模式。,此外,TMS320C54x还有两种节电功能:关闭外部总线和关闭CLKOUT。 TMS320C54x可以通过将分区转换控制寄存器(BSCR)的第0位置成1的方法,关闭片内的外部接口时

10、钟,使接口处于低功耗状态。 利用软件指令,可将PMST中的CLKOUT位置成1以关闭CLKOUT。,6.2 中 断 系 统 6.2.1 中断结构 1中断类型 TMS320C54x中断既支持硬件中断,也支持软件中断。硬件中断有外部硬件中断和内部硬件中断之分。外部硬件中断由外部中断口的信号触发;内部硬件中断由片内外围电路的信号触发。,软件中断由程序指令引起,如INTR、TRAP或RESET。软件中断不分优先级,硬件中断有优先级。当多个硬件中断同时请求时,TMS320C54x根据优先级别的不同对其进行服务。TMS320C54x的硬件中断优先级见附录3,其中,1为最高优先级。,1) 可屏蔽中断 可屏蔽

11、中断是可用软件来屏蔽或开放的中断,即可以通 过对中断屏蔽寄存器(IMR)中的相应位和状态寄存器(ST1)中 的中断允许控制位INTM进行编程来屏蔽或开放该中断。TMS320C54x最多可以支持16个用户可屏蔽中断(SINT15SINT0),但有的处理器只用了其中的一部分。有些中断有两个中断名称,如TMS320C541。,TMS320C541中的9个中断的硬件名称为: (外部硬件中断)。 RINT0、XINT0、RINT1和XINT1(串行口中断和内部硬件中断)。 TINT(定时器中断和内部硬件中断)。,2) 非可屏蔽中断 非可屏蔽中断是不能用软件来屏蔽的中断,不受IMR和INTM位的影响。TM

12、S320C54x对这一类中断总是响应的,即从主程序转移到中断服务程序。TMS320C54x的非屏蔽中断 包括: 所有的软件中断。 (复位、外部硬件中断)。 (外部硬件中断)。,也可以用软件进行 和 中断。 中断不会对TMS320C54x的任何操作方式发生影响。 中断响应时,所有其他的中断将被禁止。而复位 是一个对TMS320C54x所有操作方式产生影响的非屏蔽中断,复位后,TMS320C54x的相关内部资源设置的状态如下:,中断向量指针IPTR=1FFH,PC=FF80H,中断向量表位于FF80H处;PMST中的MP/ 与引脚MP/ 具有相同的值;XPC=0(TMS320C548);数据总线为

13、高阻状态,所有控制总线无效;产生 信号;INTM=1,关闭所有可屏蔽中断;中断标志寄存器IFR=0;产生同步信号 ;将下列状态位置成初始值:,注意:复位时,其余的状态位以及堆栈指针(SP)没有被初始化,因此,用户在程序中必须对它们进行设置。如果MP/ =0,处理器从片内ROM开始执行程序,否则,它将从片外程序存储器开始执行程序。可屏蔽硬件中断信号产生后能否引起CPU执行相应的中断服务程序ISR,取决于以下四点:, ST1中的INTM=0。 CPU当前没有响应更高优先级的中断。 IMR中对应的中断屏蔽位置1。 IFR中对应的中断标志位置1。 下面将详细介绍IMR和IFR。,2中断管理寄存器 1)

14、 中断标志寄存器 中断标志寄存器(Interrupt Flag Register,IFR)是一个16位存储器映像的CPU寄存器,位于数据存储器空间内,地址为0001H。当一个中断出现的时候,TMS320C54x收到了一个相应的中断请求(中断挂起),此时,IFR中相应的中断标志位为1。TMS320C541 IFR的位定义如图6-3所示,各位对应的可屏蔽中断源的说明见附录3。,图6-3 TMS320C541 IFR的位定义,读IFR可识别挂起的中断,写IFR可清除挂起的中断。为清除中断请求(即将其IFR标志清零),可向IFR中相应的位写入1。将IFR当前的内容写回IFR,可清除所有挂起的中断。,注

15、意: IFR中的标志位不能用软件写操作来设置,只有相应的硬件请求才能对其进行设置。 当通过INTR指令请求中断时,如果对应的IFR位是1,则CPU不会自动将其清零;如果应用程序要求清除该IFR位,则必须在中断程序中将其清零。下面4种情况都会将中断标志清零:, TMS320C54x复位(为低电平)。 中断得到处理。 将1写到IFR中的适当位(相应位变成0),相应的尚未处理完的中断被清除。 利用适当的中断号来执行INTR指令,相应的中断标志位清零。,2) 中断屏蔽寄存器 在状态寄存器ST1中的第11位INTM是中断方式位,该 位是可屏蔽中断的总允许控制位。INTM=0时,开放全部可 屏蔽中断;IN

16、TM=1时,禁止所有可屏蔽中断。 INTM不修改中断标志寄存器(IFR)和中断屏蔽寄存器(Interrupt Mask Register,IMR)。程序员通过设置中断屏蔽寄存器(IMR)的值,可以屏蔽或开放某一个可屏蔽中断。,中断屏蔽寄存器(IMR)也是一个存储器映像的16位CPU寄存器,地址为0000H,主要用来屏蔽内部的和外部的可屏蔽硬件中断。如果ST1中的INTM=0,IMR中的某一位为1,就开放相应的中断。和都不包括在IMR中,IMR不能屏蔽这两个中断。TMS320C541 IMR的位定义如图6-4所示,各位对应的可屏蔽中断源的说明如附录3所示。,图6-4 TMS320C541 IMR的位定义,当CPU响应可屏蔽中断时,如何转到中断服务

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

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

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