资源描述
第第4 4章章 系统配置和中断模块系统配置和中断模块 本章介绍本章介绍LF240 x DSPLF240 x DSP的的系统配置寄存器系统配置寄存器和和中断模块中断模块。系统配置系统配置:根据具体用途来:根据具体用途来进行模块定制进行模块定制,即对,即对DSPDSP片片内的功能模块进行内的功能模块进行用户配置用户配置。中断模块:中断模块:中断源、中断优先级和中断向量表;中断源、中断优先级和中断向量表;外设中断扩展控制器外设中断扩展控制器(PIE)(PIE)、中断响应的流程、中断响、中断响应的流程、中断响应的时间、与中断有关的寄存器等。应的时间、与中断有关的寄存器等。4.1 4.1 系统配置寄存器系统配置寄存器4.1.1 4.1.1 系统控制和状态寄存器系统控制和状态寄存器1 1系统控制和状态寄存器系统控制和状态寄存器1 1(SCSR1SCSR1)映射到数据存储器空间映射到数据存储器空间7018h7018h,各位定义:,各位定义:位位1515:保留保留位位1414:CLKSRCCLKSRC,为为CLKOUTCLKOUT引脚输出引脚输出时钟源的选择时钟源的选择位位 0 0CLKOUTCLKOUT引脚输出引脚输出CPUCPU时钟时钟;1 1CLKOUTCLKOUT引脚输出引脚输出WDCLKWDCLK时钟时钟。位位13-1213-12:LPM1LPM1、LPM0LPM0,低功耗模式选择低功耗模式选择,指明在执行,指明在执行IDLE IDLE 指令指令后后进入哪一种低功耗模式。进入哪一种低功耗模式。0000进入进入IDLE1IDLE1(LPM0LPM0)模式;模式;0101进入进入IDLE2IDLE2(LPM1LPM1)模式;模式;1x1x进入进入 HALTHALT(LPM2LPM2)模式。模式。位位11-911-9:CLK PS2-CLK PS0CLK PS2-CLK PS0,选择输入时钟频率选择输入时钟频率finfin的的倍频系数倍频系数,如,如表表4.14.1(P32P32)所示。所示。0000004 4;0010012 2;0100101.31.33 3;0110111 1;1001000.80.8;1011010.660.66;1101100.570.57;1111110.50.5位位8 8:保留保留位位7 7:ADC CLKEN,ADC CLKEN,ADCADC模块模块时钟使能时钟使能控制位控制位0 0-禁止禁止ADCADC模块时钟(节能)模块时钟(节能)1 1-使能使能ADCADC模块时钟,且正常运行模块时钟,且正常运行位位6 6:SCICLKEN,SCICLKEN,SCISCI模块模块时钟使能时钟使能控制位控制位0-禁止禁止SCISCI模块时钟(节能)模块时钟(节能)1 1-使能使能SCISCI模块时钟,且正常运行模块时钟,且正常运行位位5 5:SPICLKEN,SPICLKEN,SPISPI模块模块时钟使能时钟使能控制位控制位0 0-禁止禁止SPISPI模块时钟(节能)模块时钟(节能)1 1-使能使能SPISPI模块时钟,且正常运行模块时钟,且正常运行位位4 4:CANCLKEN,CANCLKEN,CANCAN模块模块时钟使能时钟使能控制位控制位0 0-禁止禁止CANCAN模块时钟(节能)模块时钟(节能)1 1-使能使能CANCAN模块时钟,且正常运行模块时钟,且正常运行位位3 3:EVBCLKEN,EVBCLKEN,EVBEVB模块模块时钟使能时钟使能控制位控制位0 0-禁止禁止EVBEVB模块时钟(节能)模块时钟(节能)1 1-使能使能EVBEVB模块时钟,且正常运行模块时钟,且正常运行位位2 2:EVACLKEN,EVACLKEN,EVAEVA模块模块时钟使能时钟使能控制位控制位0 0-禁止禁止EVAEVA模块时钟(节能)模块时钟(节能)1 1-使能使能EVAEVA模块时钟,且正常运行模块时钟,且正常运行位位1 1:保留:保留位位0 0:ILLADR,ILLADR,无效地址检测位无效地址检测位 检测到无效地址时,该位检测到无效地址时,该位置置1 1。无效的地址会无效的地址会导致导致不可屏蔽中断(不可屏蔽中断(NMINMI)事事 件发生件发生。2 2系统控制和状态寄存器系统控制和状态寄存器2(SCSR2)2(SCSR2)映射到数据存储器空间映射到数据存储器空间7019h7019h,各位意义:,各位意义:位位15-715-7:保留位:保留位位位6 6:I/P QUALI/P QUAL,时钟输入限定时钟输入限定,它限定输入到,它限定输入到LF2407LF2407下列引脚:下列引脚:CAP1-6CAP1-6、XINT1-2XINT1-2、ADCSOCADCSOC 、PDPINTAPDPINTA*/PDPINTB/PDPINTB*上的上的最小脉冲宽度最小脉冲宽度。只有达到。只有达到这个宽度之后,这个宽度之后,内部的输入状态才会改变内部的输入状态才会改变。0 0-有效脉冲至少需要有效脉冲至少需要5 5个个时钟周期;时钟周期;1 1-有效脉冲至少需要有效脉冲至少需要1111个个时钟周期。时钟周期。如上述如上述引脚作引脚作I/OI/O使用使用,则,则不使用不使用输入时钟限定输入时钟限定电路。电路。位位5 5:WDWD保护位,保护位,用来允许或禁止用来允许或禁止WDWD工作工作。是。是个只个只能清除的位,复位该位为能清除的位,复位该位为1 1。向该位写向该位写1 1则对其清则对其清0 0。0 0-防止防止WDWD被软件禁止被软件禁止。1 1-禁止禁止WDWD工作工作。位位4 4:XMIF HI-ZXMIF HI-Z。该位控制外部存储器接口信号该位控制外部存储器接口信号 (XMIF)(XMIF)。仅对。仅对LF2407/LF2407ALF2407/LF2407A型号有效。型号有效。0 0-所有所有XMIFXMIF信号为正常驱动模式信号为正常驱动模式(非高阻态非高阻态)。1 1-所有所有XMIFXMIF信号处于高阻态。信号处于高阻态。位位3 3:引导引导ROMROM使能位。使能位。0 0-使能引导使能引导ROMROM。地址。地址0000h-00FFh0000h-00FFh被片内引导被片内引导ROMROM块占用块占用。禁止用禁止用FLashFLash存储器。存储器。1 1-禁止引导禁止引导ROMROM。LF2407LF2407片内片内FlashFlash为程序存储器,为程序存储器,映射地址映射地址范围为范围为0000h-7FFFh0000h-7FFFh。位位2 2:MP/MCMP/MC*(微处理器微控制器选择微处理器微控制器选择)。0 0-为为微控制器方式微控制器方式,片内,片内FlashFlash映射到地址为映射到地址为0000h-7FFFh0000h-7FFFh的的程序存储器空间程序存储器空间,。,。1 1-为为微处理器方式微处理器方式,片内,片内FlashFlash无用,无用,必须外扩必须外扩外部程序存储器。外部程序存储器。位位1-01-0:SARAMSARAM的程序的程序/数据空间选择数据空间选择 0000-地址空间不被映射,该空间被分配到外部存地址空间不被映射,该空间被分配到外部存储器储器0l0l-SARAM-SARAM 被映射到被映射到片内程序空间片内程序空间1010-SARAM-SARAM 被映射到被映射到片内数据空间片内数据空间1111-SARAM-SARAM 被映射到被映射到片内片内程序空间程序空间,又被映射到,又被映射到片内片内数据空间数据空间4.1.2 4.1.2 器件标识号寄存器器件标识号寄存器(DINR)(DINR)映射到映射到数据存储器空间数据存储器空间701Ch701Ch。各位意义:。各位意义:位位15-415-4:DIN15-DIN4DIN15-DIN4。为。为DSPDSP器件的器件的器件标识号器件标识号(DINDIN)。)。位位3-03-0:DIN3-DIN0DIN3-DIN0。为所用。为所用DSPDSP的器件的的器件的版本、给定值版本、给定值。不同型号的不同型号的DSPDSP所对应的所对应的DIN15-DIN0DIN15-DIN0的值如下:的值如下:器件器件 版本版本 DIN15-DIN0DIN15-DIN0LF2407 1.0-1.5 0510hLF2407 1.0-1.5 0510hLF2407 1.6 0511hLF2407 1.6 0511hLF2407A 1.0 0520hLF2407A 1.0 0520h LC2406A 1.0 0700hLC2406A 1.0 0700hLC2402A 1.0 0610h LC2402A 1.0 0610h 4.2 4.2 中断优先级和中断向量表中断优先级和中断向量表LF2407 LF2407 具有具有3 3个个不可屏蔽中断和不可屏蔽中断和6 6个级别个级别的可屏蔽中断的可屏蔽中断(INT1-INT6INT1-INT6)。每级可屏蔽中断每级可屏蔽中断(INT1-INT6INT1-INT6)有唯一的中断入口地址有唯一的中断入口地址向量向量。表表4.2(P34)4.2(P34)不可屏蔽中断源不可屏蔽中断源的的优先级优先级和和中断中断入口地入口地址向量表址向量表。表表4.3(P34)4.3(P34)可屏蔽中断源可屏蔽中断源的的优先级优先级和和中断中断入口地址入口地址向量表向量表。表表4.2 4.2 不可屏蔽中断不可屏蔽中断(3(3个个)中断优先级中断优先级 中断名称中断名称 外设中断向量外设中断向量 描述描述 1 Reset 0000h 1 Reset 0000h 复位引脚和复位引脚和WDWD溢出溢出 2 2 保留保留 0026 0026h h 仿真陷阱仿真陷阱 3 NMI 0004h 3 NMI 0004h 软件中断软件中断 表表4.3 4.3 可屏蔽中断的优先级和中断向量可屏蔽中断的优先级和中断向量INT1(INT1(级别级别1 1)-CPU-CPU中断向量中断向量00020002h h 中断优先级中断优先级 中断名称中断名称 外设中断向量外设中断向量 描述描述 4 PDPINTA 0020h 功率驱动保护中断功率驱动保护中断 5 PDPINTB 0019h 功率驱动保护中断功率驱动保护中断 6 ADCINT 0004h 高优先级高优先级ADC中断中断 7 XINT1 0001h 高优先级高优先级外中断外中断 8 XINT2 0011h 高优先级高优先级外中断外中断 9 SPINT 0005h 高优先级高优先级SPI中断中断 10 RXINT 0006h 高优先级高优先级SCI接收中断接收中断 11 TXINT 0007h 高优先级高优先级SCI发送中断发送中断 12 CANMBINT 0040h 高优先级高优先级CAN邮箱中断邮箱中断 13 CANERINT 0041h 高优先级高优先级CAN错误中断错误中断INT2(INT2(级别级别2 2)-CPU-CPU中断向量中断向量00040004h h 中断优先级中断优先级 中断名称中断名称 外设中断向量外设中断向量 描述描述 14 CMP1INT 0021h 比较器比较器1 1中断中断 15 CMP2INT 0022h 比较器比较器2 2中断中断 16 CMP3INT 0023h 比较器比较器3 3中断中断 17 T1PINT 0027h 定时器定时器1 1周期中断周期中断 18 T1CINT 0028h 定时器定时器1 1比较中断比较中断 19 T1UFINT 0029h 定时器定时器1下溢中断下溢中断 20 T1OFINT 0029h 定时器定时器1上溢中断上溢中断 21 CMP4INT 0024h 比较器比较器4中断中断 22 CMP5INT 0025h 比较器比较器5中断中断 23 CMP6INT 0026h 比较器比较器6中断中断 续续 INT2(INT2(级别级别2 2)-CPU-CPU中断向量中断向量00040004h h 中断优先级中断优先级 中断名称中断名称 外设中断向量外设中断向量 描述描述 24 T3PINT 002Fh 24 T3PINT 002Fh 定时器定时器3 3周期中断周期中断25 T3CINT 0030h 25 T3CINT 0030h 定时器定时器3 3比较中断比较中断 26 T3UFINT 0031h 26 T3UFINT 0031h 定时器定时器3 3下溢中断下溢中断27 T1OFINT 0032h 27 T1OFINT 0032h 定时器定时器3 3上溢中断上溢中断INT3(INT3(级别级别3 3)-CPU-CPU中断向量中断向量00060006h h 中断优先级中断优先级 中断名称中断名称 外设中断向量外设中断向量 描述描述28 T2PINT 002Bh 定时器定时器2周期中断周期中断29 T2CINT 002Ch 定时器定时器2比较中断比较中断 30 T2UFINT 002Dh 定时器定时器2下溢中断下溢中断31 T2OFINT 002Eh 定时器定时器2上溢中断上溢中断32 T4PINT 0039h 定时器定时器4周期中断周期中断33 T4CINT 003Ah 定时器定时器4比较中断比较中断 34 T4UFINT 003Bh 定时器定时器4下溢中断下溢中断35 T4OFINT 003Ch 定时器定时器4上溢中断上溢中断INT4(INT4(级别级别4 4)-CPU-CPU中断向量中断向量00080008h h 中断优先级中断优先级 中断名称中断名称 外设中断向量外设中断向量 描述描述 36 CAP1INT 0033h 比较器比较器1中断中断 37 CAP2INT 0034h 比较器比较器2中断中断 38 CAP3INT 0035h 比较器比较器3中断中断 39 CAP4INT 0036h 比较器比较器1中断中断 40 CAP5INT 0037h 比较器比较器2中断中断 41 CAP6INT 0038h 比较器比较器3中断中断INT5(INT5(级别级别5 5)-CPU-CPU中断向量中断向量000A000Ah h 中断优先级中断优先级 中断名称中断名称 外设中断向量外设中断向量 描述描述 42 SPINT 0005h 低优先级低优先级SPISPI中断中断 43 RXINT 0006h 低优先级低优先级SCISCI接收中断接收中断 44 TXINT 0007h 低优先级低优先级SCISCI发送中断发送中断 45 CANMBINT 0040h 低优先级低优先级CANCAN邮箱中断邮箱中断 46 CANERINT 0040h 低优先级低优先级CANCAN错误中断错误中断INT6(INT6(级别级别6 6)-CPU-CPU中断向量中断向量000C000Ch h 中断优先级中断优先级 中断名称中断名称 外设中断向量外设中断向量 描述描述47 ADCINT 0004h 47 ADCINT 0004h 低优先级低优先级ADCADC中断中断48 XINT1 0001h 48 XINT1 0001h 低优先级低优先级外中断外中断49 XINT2 0011h 49 XINT2 0011h 低优先级低优先级外中断外中断 N/A N/A TRAP TRAP 0022h 0022h 陷阱中断陷阱中断 N/A N/A 假中断向量假中断向量 0000 0000h h 假中断向量假中断向量 4.3 4.3 外设中断扩展控制器外设中断扩展控制器6 6级可屏蔽中断级可屏蔽中断INT1-INT6INT1-INT6。每每1 1级别又包含级别又包含多个多个外设中断请求外设中断请求,用一个,用一个外设外设中断中断扩展(扩展(PIEPIE)控制器)控制器专门专门管理管理各种外设各种外设或或外部引脚外部引脚的的多个中断请求多个中断请求。图图4.44.4为为外设外设中断扩展模块图中断扩展模块图。4.3.1 4.3.1 中断请求层次和结构中断请求层次和结构两级中断结构两级中断结构在低层次中断在低层次中断,从几个外设来的外设中断请求,从几个外设来的外设中断请求(PIRQ)(PIRQ)在中断控制器处进行或运算,产生一个在中断控制器处进行或运算,产生一个INTnINTn(n n1-1-6 6)中断请求)中断请求。在高层次中断,在高层次中断,从从INTnINTn中断请求产生一个中断请求产生一个具体外设具体外设的的中断请求中断请求。如如果果引起中断的外设事件发生引起中断的外设事件发生且且中断被使能中断被使能,则产生一则产生一个中断请求个中断请求。有的外设有的外设既可产生既可产生高级高级的中断请求,又可产生的中断请求,又可产生低级低级中断中断请求(如请求(如SCISCI、SPISPI、ADCADC等),等),根据实际需要来设定。根据实际需要来设定。中断请求标志位中断请求标志位采用采用中断应答自动清除中断应答自动清除或或用软件用软件清除。清除。注意:注意:外设中断请求标志位外设中断请求标志位是是在高层次中断时清在高层次中断时清0 0,而,而不是在不是在低层次中断低层次中断清清0 0。4.3.2 4.3.2 中断向量中断向量某个外设的中断请求有效时,都会产生某个外设的中断请求有效时,都会产生唯一的唯一的外设中断外设中断向量向量,并被装载到并被装载到外设中断向量外设中断向量寄存器寄存器(PIVR)(PIVR)。CPUCPU响应响应外设中断请求时,从外设中断请求时,从PIVRPIVR中读取中读取相应的中断向相应的中断向量量,并产生一个转到该,并产生一个转到该外设外设中断服务子程序中断服务子程序(SISR)(SISR)入口的向量入口的向量。LF240 xLF240 x有两个中断向量表有两个中断向量表,CPUCPU向量表向量表(INT1-INT6INT1-INT6)和和外设向量表外设向量表。CPUCPU向量:向量:为为一级一级通用中断服务子程序通用中断服务子程序(GISR)(GISR)入口,即入口,即INT1-INT6INT1-INT6对应对应的入口。的入口。外设向量:外设向量:为某外设事件的为某外设事件的特定特定中断服务子程序中断服务子程序(SISR)(SISR)入口。入口。在在GISRGISR中断服务子程序中可中断服务子程序中可读读PIVRPIVR中的值,中的值,用用PIVRPIVR中中的值来产生一个转到的值来产生一个转到SISRSISR的向量的向量。例例 可屏蔽中断可屏蔽中断XINT1XINT1(见表见表4.34.3,高优先级为,高优先级为INT1INT1,优,优先级为先级为7 7)产生一个中断请求,产生一个中断请求,CPUCPU中断向量中断向量00020002h h,CPUCPU对其响应。这时,对其响应。这时,0001h 0001h(XINT1XINT1的外设中断向的外设中断向量量)被)被装载到装载到PIVRPIVR中,中,CPUCPU用这个用这个值值来判断是哪一个外设引起的中断来判断是哪一个外设引起的中断,接着,接着转移到相应的转移到相应的SISRSISR。将将PIVRPIVR中的值装载入累加器时中的值装载入累加器时需先左移需先左移,再,再加上一个加上一个固定的固定的偏移量偏移量,然后,然后程序程序转到指定的地址入口转到指定的地址入口SISRSISR,从而执行,从而执行XINT1XINT1的中断服务子程序。的中断服务子程序。1 1假中断向量假中断向量以下两种情况会产生假中断:以下两种情况会产生假中断:(1)CPU(1)CPU执行一个软件中断指令执行一个软件中断指令INTRINTR,使用参数,使用参数1-61-6,用于请求服务用于请求服务6 6个可屏蔽中断(个可屏蔽中断(INT1-INT6INT1-INT6)之一。)之一。(2)(2)当外设发出中断请求当外设发出中断请求,但是其,但是其INTnINTn标志位标志位却在却在CPUCPU应答请求之前已经被清应答请求之前已经被清0 0。上述两种情况,上述两种情况,并没有外设发出中断请求并没有外设发出中断请求,因此,因此不知不知道哪个外设中断向量装入到道哪个外设中断向量装入到PIVRPIVR,此时向,此时向PIVRPIVR中中装装入假中断向量入假中断向量0000h0000h。从而。从而避免程序进入中断死循避免程序进入中断死循环中环中。假中断向量假中断向量可以保证中断系统的完整性可以保证中断系统的完整性,从而,从而使中断使中断系统一直可靠安全地运行系统一直可靠安全地运行,不会进入死循环中。不会进入死循环中。2 2软件层次软件层次中断服务子程序有两级:中断服务子程序有两级:通用通用中断服务子程序中断服务子程序(GISR)(GISR)和和特定特定中断服务子程序中断服务子程序(SISR)(SISR)。在在GISRGISR中保护现场,中保护现场,从从PIVRPIVR中读取中读取外设中断向量,外设中断向量,计计算出算出产生转移到产生转移到SISRSISR的地址入口的地址入口。进入特定中断服务子程序进入特定中断服务子程序SISRSISR后,所有的后,所有的可屏蔽中断可屏蔽中断都被屏蔽都被屏蔽-中断不能嵌套中断不能嵌套。3 3不可屏蔽中断不可屏蔽中断2407 2407 无无NMINMI引脚,引脚,在在访问无效的地址访问无效的地址时时,不可屏蔽中断不可屏蔽中断(NMI)(NMI)就会发出请求。就会发出请求。当当NMINMI被响应后被响应后,程序将转到,程序将转到不不可屏蔽中断向量入口地址可屏蔽中断向量入口地址0024h0024h(见表(见表4.24.2)处。)处。4.3.3 4.3.3 全局中断使能全局中断使能STOSTO中有一个中有一个全局中断使能位全局中断使能位INTMINTM,在,在初始化程序初始化程序和和主主程序程序中,常常需要使用该位中,常常需要使用该位对对DSPDSP的全局中断的全局中断进行打进行打开和关闭操作。开和关闭操作。特别是初始化过程中,需要关全局特别是初始化过程中,需要关全局中断。中断。主程序开始执行时,需要开全局中断主程序开始执行时,需要开全局中断。关全局中断关全局中断和和开全局中断开全局中断的汇编语言指令如下:的汇编语言指令如下:SETC INTMSETC INTM;把;把INTMINTM位置位置1 1,关关全局中断全局中断CLRC INTMCLRC INTM;把;把INTMINTM位清位清0 0,开开全局中断全局中断执行完中断服务子程序后,执行完中断服务子程序后,一定要打开全局中断。一定要打开全局中断。进入中断服务程序时,系统自动关进入中断服务程序时,系统自动关全局中断全局中断。所以。所以从从中断返回时需要中断返回时需要重新打开重新打开全局中断。全局中断。4.4 4.4 中断响应的过程中断响应的过程下面介绍某外设下面介绍某外设中断请求的响应过程中断请求的响应过程。(1 1)某外设)某外设发出中断请求发出中断请求。(2 2)如该外设的)如该外设的中断请求标志位中断请求标志位为为1 1,且该外设的,且该外设的中中断使能位断使能位(IEIE)为为1 1,则,则产生产生一个中断请求;一个中断请求;如果如果中断没有被使能中断没有被使能,则中断请求标志位为,则中断请求标志位为1 1的状态保的状态保持到被软件清持到被软件清0 0。(3 3)如果不存在相同优先级(如果不存在相同优先级(INTnINTn)的中断请求)的中断请求,那,那么就会么就会产生一个产生一个INTnINTn的中断请求,的中断请求,为为2 2个个CPUCPU时钟宽时钟宽度的低电平脉冲。度的低电平脉冲。(4 4)如果中断已被使能如果中断已被使能,CPUCPU将将INTMINTM置置1 1,以屏蔽所有以屏蔽所有可屏蔽的中断,可屏蔽的中断,保护现场,并且开始为保护现场,并且开始为优先级高的优先级高的中断中断INTnINTn执行通用中断服务子程序执行通用中断服务子程序(GISRGISR)。)。CPUCPU自动产生一个中断应答。自动产生一个中断应答。例如例如,如果,如果1NT21NT2被响应被响应了,它的了,它的中断向量中断向量0004h0004h被送出。被送出。(5 5)外设中断扩展()外设中断扩展(PIEPIE)控制器会)控制器会对对中断向量中断向量的值的值进行判断进行判断,并,并产生一个外设响应应答产生一个外设响应应答,清除相应的,清除相应的外设中断请求标志位。外设中断请求标志位。(6 6)PIEPIE然后将相应的中断向量(或假中断向量)载然后将相应的中断向量(或假中断向量)载入入外设中断向量寄存器(外设中断向量寄存器(PIVRPIVR)。(7 7)当当GISRGISR中完成了现场保护后,就可中完成了现场保护后,就可读入读入PIVRPIVR中中的的中断向量中断向量,使程序转入到使程序转入到特定外设的中断服务子特定外设的中断服务子程序(程序(SISRSISR)的入口处去执行)的入口处去执行。4.5 4.5 中断响应的等待时间中断响应的等待时间中断响应的等待时间包括中断响应的等待时间包括:外设同步接口时间、:外设同步接口时间、CPUCPU响应时间、响应时间、ISRISR转移时间。转移时间。(1)(1)外设同步接口时间:外设同步接口时间:PIEPIE识别出外设发来的中断请识别出外设发来的中断请求,经判优、转换后求,经判优、转换后将中断请求将中断请求发送至发送至CPUCPU的时间的时间。(2(2)CPUCPU的响应时间的响应时间:是:是CPUCPU识别出识别出已被使能的中断请已被使能的中断请求、响应中断、清除流水线、并且开始捕获来自求、响应中断、清除流水线、并且开始捕获来自CPUCPU中断向量的第一条指令所花费的时间。中断向量的第一条指令所花费的时间。最小的最小的CPUCPU的响应时间的响应时间-4 4个个CPUCPU指令周期。指令周期。(3)(3)ISRISR转移时间转移时间:由:由GISRGISR转移转移SISRSISR所花费的时间。该所花费的时间。该时间长短根据用户所实现的时间长短根据用户所实现的ISRISR的不同而有所变化。的不同而有所变化。4.6 4.6 有关的中断寄存器有关的中断寄存器包括:包括:(1)(1)中断请求标志中断请求标志寄存器寄存器(IFR)(IFR);(2)(2)中断屏蔽中断屏蔽寄寄存器存器(IMR)(IMR)。4.6.1 4.6.1 中断请求标志中断请求标志寄存器寄存器(IFR)(IFR)映射到数据存储器空间映射到数据存储器空间0006h0006h。包含了所有可屏蔽中断。包含了所有可屏蔽中断INT6-INT1INT6-INT1的的中断请求标志位中断请求标志位。位位15-615-6:保留位。保留位。位位5-05-0:分别为分别为INT6-INT1INT6-INT1的的中断请求标志位中断请求标志位。0 0无无INTnINTn(n n1-61-6)中断挂号,)中断挂号,1 1有有INTnINTn(n n1-61-6)中断挂号。)中断挂号。当某外设发出中断请求时,当某外设发出中断请求时,中断标志寄存器的相应标中断标志寄存器的相应标志位被置志位被置1 1。如果中断屏蔽寄存器中的对应的。如果中断屏蔽寄存器中的对应的中断使中断使能位能位也为也为1 1,则该,则该中断请求被送到中断请求被送到CPUCPU,此时该此时该中断中断被挂号被挂号。读取读取IFRIFR可以识别挂号的中断可以识别挂号的中断,向相应的向相应的IFRIFR位位写写1 1将清将清除已挂号的中断除已挂号的中断。CPUCPU响应中断响应中断或或复位复位都能将都能将IFRIFR标志清除。标志清除。在对在对IFRIFR操作时应注意:操作时应注意:(1 1)想)想清除清除某一某一IFRIFR位,必须向该位位,必须向该位写写1 1;(2 2)当一个)当一个可屏蔽中断被响应可屏蔽中断被响应时,只有时,只有IFRIFR位被清位被清除,而除,而相应的外设控制寄存器中的中断请求标志位相应的外设控制寄存器中的中断请求标志位不会被清除。不会被清除。如需清除,应该用如需清除,应该用软件软件来清除。来清除。(3 3)用)用INTRINTR指令指令来请求中断,且相应的来请求中断,且相应的IFRIFR位被置位被置1 1时,时,CPUCPU不会自动清除该位,该位不会自动清除该位,该位必须由软件来清除必须由软件来清除。(4 4)IFRIFR和和IMRIMR控制的是控制的是核心级的中断核心级的中断,所有,所有外设在它外设在它们各自的们各自的配置配置/控制寄存器控制寄存器都有相应的都有相应的中断标志位中断标志位和和中断屏蔽位中断屏蔽位。4.6.2 CPU4.6.2 CPU中断屏蔽寄存器中断屏蔽寄存器(IMR)(IMR)IMRIMR映射在数据存储器空间中的地址为映射在数据存储器空间中的地址为0004h0004h,各位意,各位意义如下:义如下:位位15-615-6:保留位。保留位。位位5-05-0:分别为分别为INT6-INT1INT6-INT1中断的中断的屏蔽位屏蔽位。0 0中断中断INTnINTn被屏蔽。被屏蔽。1 1中断中断INTnINTn被使能。被使能。屏蔽某中断时只需将相应的屏蔽某中断时只需将相应的IMRIMR位设为位设为0 0。4.6.3 4.6.3 外设中断寄存器外设中断寄存器外设中断寄存器还包括如下几种:外设中断寄存器还包括如下几种:外设外设中断向量中断向量寄存器寄存器(PIVR)(PIVR)外设外设中断请求中断请求寄存器寄存器0(PIRQR0)0(PIRQR0)外设外设中断请求中断请求寄存器寄存器1(PIRQR1)1(PIRQR1)外设外设中断请求中断请求寄存器寄存器2(PIRQR2)2(PIRQR2)外设外设中断应答中断应答寄存器寄存器0(PIACKR0)0(PIACKR0)外设外设中断应答中断应答寄存器寄存器1(PIACKR1)1(PIACKR1)外设外设中断应答中断应答寄存器寄存器2(PIACKR2)2(PIACKR2)外设外设中断请求中断请求寄存器和外设寄存器和外设中断应答中断应答寄存器都属于外寄存器都属于外设中断扩展模块用来设中断扩展模块用来向向CPUCPU产生产生INT1-INT6INT1-INT6中断请求中断请求的内部寄存器的内部寄存器。这些寄存器用户。这些寄存器用户只能对其读只能对其读。1 1外设中断向量寄存器外设中断向量寄存器(PIVR)(PIVR)外设中断向量寄存器外设中断向量寄存器(PIVR)(PIVR)映射在数据存储器空间映射在数据存储器空间中中的地址为的地址为701Eh701Eh,1616位位V15V15V0V0,为外设中断的地址,为外设中断的地址向量。向量。2 2外设中断请求寄存器外设中断请求寄存器0(PIRQR0)0(PIRQR0)映射在数据存储器空间中的地址为映射在数据存储器空间中的地址为7010h7010h,寄存器的格,寄存器的格式如下:式如下:位位15150 0 :外设请求外设请求标志位标志位IRQ0.15IRQ0.15IRQ0.0IRQ0.00 0相应外设的相应外设的无中断请求无中断请求1 1相应外设的相应外设的中断请求被挂起中断请求被挂起该寄存器该寄存器1616个位所个位所对应的外设对应的外设如如表表4.44.4(P42P42)所示。所示。3.3.外设中断请求寄存器外设中断请求寄存器1(PIRQR1)1(PIRQR1)外设中断请求寄存器外设中断请求寄存器1(PIRQR1)1(PIRQR1)映射在数据存储器空间映射在数据存储器空间中的地址为中的地址为7011h7011h,该寄存器的格式如下:,该寄存器的格式如下:位位1515:保留位,读出为保留位,读出为0 0,写入无影响。,写入无影响。位位14140 0 :外设请求标志位:外设请求标志位IRQ1.14IRQ1.14IRQ1.0IRQ1.00 0相应外设的相应外设的无中断请求无中断请求1 1相应外设的相应外设的中断请求被挂号中断请求被挂号该寄存器该寄存器1616个位所对应的中断如个位所对应的中断如表表4.54.5(P43P43)所示。所示。4 4外设中断请求寄存器外设中断请求寄存器2(PIRQR2)2(PIRQR2)映射在数据存储器空间中的地址为映射在数据存储器空间中的地址为7012h7012h,格式如下:,格式如下:位位1515:保留位保留位位位14140 0 :外设请求标志位:外设请求标志位IRQ2.14IRQ2.14IRQ2.0IRQ2.00 0相应外设的相应外设的无中断请求无中断请求1 1相应外设的相应外设的中断请求被挂号中断请求被挂号注:注:写写1 1会发出一个中断请求到会发出一个中断请求到DSPDSP核,写核,写0 0无影响。无影响。该寄存器该寄存器1616个位所对应的中断如个位所对应的中断如表表4.64.6(P44P44)所示。所示。5 5外设中断应答寄存器外设中断应答寄存器0(PIACKR0)0(PIACKR0)映射在数据存储器空间中的地址为映射在数据存储器空间中的地址为7014h7014h该该寄存器寄存器1616个位所对应的中断个位所对应的中断如如表表4.74.7(P45P45)所示。所示。6 6外设中断应答寄存器外设中断应答寄存器1(PIACKR1)1(PIACKR1)映射在数据存储器空间中的地址为映射在数据存储器空间中的地址为7015h7015h该该寄存器各个位所对应的中断寄存器各个位所对应的中断如如表表4.84.8(P46P46)所示。所示。7.7.外设中断应答寄存器外设中断应答寄存器2(PIACKR2)2(PIACKR2)映射在数据存储器空间中的地址映射在数据存储器空间中的地址7016h7016h该寄存器各个位所对应的中断如该寄存器各个位所对应的中断如表表4.94.9(P47P47)所示。所示。4.7 4.7 复位和无效地址检测复位和无效地址检测4.7.1 4.7.1 复位复位复位原因有两种复位原因有两种:(1 1)复位引脚复位引脚的的电平变化电平变化引起的复位;引起的复位;(2 2)看门狗定时器溢出看门狗定时器溢出引起的复位。引起的复位。复位复位时,时,复位复位引脚被设置为输出方式,且被引脚被设置为输出方式,且被驱动为低驱动为低,向外部电路表明向外部电路表明LF240 xLF240 x器件正在复位。器件正在复位。4.7.2 4.7.2 无效地址检测无效地址检测无效地址是无效地址是不可执行的地址不可执行的地址(例如:例如:保留单元保留单元)。)。LF240 xLF240 x一旦一旦检测到对无效地址的访问检测到对无效地址的访问,就将系统控制,就将系统控制和状态寄存器和状态寄存器1(SCSRl)1(SCSRl)中的中的无效地址标志位无效地址标志位(ILLADR)(ILLADR)置置1 1,从而产生一个不可屏蔽中断从而产生一个不可屏蔽中断(NMI)(NMI)。无效地址标志位无效地址标志位(ILLADR)(ILLADR)被置被置1 1,直到软件将其清除。,直到软件将其清除。产生产生原因原因:不正确的数据页面初始化:不正确的数据页面初始化。4.8 4.8 外部中断控制寄存器外部中断控制寄存器寄存器寄存器XINT1CRXINT1CR、XINT2CRXINT2CR为用来为用来控制和监视控制和监视XINT1XINT1和和XINT2XINT2两个引脚状态两个引脚状态的两个外部中断控制寄存器。的两个外部中断控制寄存器。在在LF240 x LF240 x 中,中,XINT1XINT1和和XINT2XINT2引脚必须被拉为低电平引脚必须被拉为低电平至至少少6 6个个(或或1212个)个)CLKOUTCLKOUT周期周期才能被才能被CPUCPU识别。识别。4.8.1 4.8.1 外部中断外部中断1 1控制寄存器控制寄存器XINT1CRXINT1CR映射到数据存储器空间的映射到数据存储器空间的7070h7070h,格式如下:,格式如下:位位1515:XINT1XINT1标志位。标志位。在在XINT1XINT1引脚上引脚上是否检测到一个是否检测到一个所选择的中断跳变所选择的中断跳变,无论中断是否使能,该位都可,无论中断是否使能,该位都可被置被置1 1。0 0没有检测到跳变没有检测到跳变1 1检测到跳变检测到跳变位位14-314-3:保留位:保留位位位2 2:XINT1XINT1极性极性。是在。是
展开阅读全文