版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第六章事件管理器6.1事件管理器模块概述6.2通用定时器6.3比较单元6.4PWM电路及PWM信号的产生6.5空间向量PWM6.6捕捉单元6.7正交编码器脉冲电路6.8事件管理器中断6.9事件管理器应用实例
281x芯片内含有两个事件管理器模块EVA和EVB,事件管理器模块提供了强大的控制功能,非常适用于运动控制和电机控制。
EVA与EVB结构完全相同,外设地址7400-743FH对EVA进行管理。7500-753FH对EVB进行管理。每个事件管理器有:1)定时器GPT(2个)输出引脚为:T1PWM/T1CMP
T2PWM/T2CMP2)比较单元CMP(3个)每个单元两个输出:PWM1-PWM6
3)捕获单元CAP(3个)输入引脚为:CAP1.2.34)正交脉冲编码QEP电路,2个输入引脚QEP1.2与CAP1.2复用另外:有计数器计数方向选择输入TDIRA:1:加计数
0:减计数有定时器外部/内部时钟输入:TCLKINA(CPU频率的1/4)6.1事件管理器模块概述
EVAEVB各13个引脚26326.1.1事件管理器结构、引脚事件管理模块EVA模块引脚信号EVB模块引脚信号GP定时器(2个)定时器1定时器2T1PWM/CMP输出T2PWM/CMP输出定时器3定时器4T3PWM/CMP输出T4PWM/CMP输出比较单元(3个)比较器1比较器2比较器3PWM1/2输出PWM3/4输出PWM5/6输出Compare4Compare5Compare6PWM7/8输出PWM9/10输出PWM11/12输出捕获单元(3个)捕获器1捕获器2捕获器3CAP1/QEP1输入CAP2/QEP2输入CAP3输入Capture4Capture5Capture6CAP4/QEP3输入CAP5/QEP4输入CAP6输入正交编码脉冲电路QEP(2个)QEP1QEP2QEP1输入QEP2输入QEP3QEP4QEP3输入QEP4输入外部输入计数方向外部时钟TDIRA输入TCLKINA输入计数方向外部时钟TDIRB输入TCLKINB输入
EVA和EVB的功能相同,只是单元的名称有所区别。6.1事件管理器模块概述6.1.1事件管理器结构、引脚
定时器(GP):具有基本计数/定时功能,可以为各种应用提供时基,还可以与其他三个单元合作,进行电机控制,产生比较输出/PWM信号。多个定时器可配置行使不同功能。
3个比较单元:可以输出三组比较输出/PWM信号,且具有死区控制等功能。
3个捕捉单元:可以记录输入引脚跳变的时刻。
正交编码脉冲电路(QEP):可以直接连接光电编码器,可获得旋转机械的速度和方向等信息。
事件管理器模块中的大多数引脚与I/O口共用。当不用作事件管理器时,作为I/O引脚。
6.1.1事件管理器结构、引脚比较/PWM输出引脚:每个事件管理器都有8个比较/PWM输出引脚。其中,2个为通用定时器的比较/PWM输出,6个全比较器的比较/PWM输出。片外时钟输入引脚:定时器可以通过软件编程决定使用片内时钟还是片外时钟。当使用片外时钟时,TCLKINA、TCLKINB作为片外时钟输入引脚。计数方向引脚:当通用定时器处于定向增/减计数方式时,通过引脚TDIRA、TDIRB设置计数方向。6.1.2功率驱动保护中断事件管理器常用于运动控制和电机控制,一般其PWM输出信号要经过功率驱动才能控制电机等设备。为了保证系统操作的安全,设计了功率驱动保护中断功能。功率驱动保护中断引脚:
中断引脚一般用于向电机监视程序提供过电压、过电流等异常信息。
中断引脚低电平有效,当发生由高到低的电平跳变时,相应的中断标志位置1,但是必须维持至少2个时钟周以使中断引脚的跳变能被识别并且与内部时钟同步。如果相应的中断使能,硬件立即将所有事件管理器输出引脚置为高阻,起到保护作用,同时向CPU发出中断请求。信号的鉴别与同步需要2个CPU时钟周期,因此中断引脚的低电平至少要保持2个时钟周期。6.1.4EV寄存器及地址EVA模块中的寄存器(起始地址是7400h~7431h)地址寄存器名称7400hGPTCONA定时器控制寄存器7401hT1CNT定时器1的计数寄存器定时器17402hT1CMPR定时器1的比较寄存器7403hT1PR定时器1的周期寄存器7404hT1CON定时器1的控制寄存器7405hT2CNT定时器2的计数寄存器定时器27406hT2CMPR定时器2的比较寄存器7407hT2PR定时器2的周期寄存器7408hT2CON定时器2的控制寄存器EVA定时寄存器(9个)
每个EV各有29个寄存器。6.1.4EV寄存器及地址EVA模块中的寄存器(起始地址是7400h~7431h)EVA比较控制寄存器(6个)
地址寄存器名称7411hCOMCONA比较控制寄存器7413hACTRA比较方式控制寄存器7415hDBTCONA死区时间控制寄存器7417hCMPR1比较寄存器17418hCMPR2比较寄存器27419hCMPR3比较寄存器36.1.4EV寄存器及地址EVA模块中的寄存器(起始地址是7400h~7431h)EVA捕获控制寄存器(8个)地址寄存器名称7420hCAPCONA捕获控制寄存器7422hCAPFIFOA捕获FIFO状态寄存器A7423hCAP1FIFO两级深度的捕获FIFO栈17424hCAP2FIFO两级深度的捕获FIFO栈27425hCAP3FIFO两级深度的捕获FIFO栈37427hCAP1FBOTFIFO栈的栈底寄存器,允许读最近捕获的值7428hCAP2FBOT7429hCAP3FBOT6.1.4EV寄存器及地址EVA模块中的寄存器(起始地址是7400h~7431h)EVA中断寄存器(6个)
地址寄存器名称742ChEVAIMRA中断屏蔽寄存器A742DhEVAIMRB中断屏蔽寄存器B742EhEVAIMRC中断屏蔽寄存器C742FhEVAIFRA中断标志寄存器A7430hEVAIFRB中断标志寄存器B7431hEVAIFRC中断标志寄存器C6.1.4EV寄存器及地址EVB模块中的寄存器(起始地址是7500h~7531h)EVB定时寄存器(9个)地址寄存器名称7500hGPTCONB定时器控制寄存器7501hT3CNT定时器3的计数寄存器定时器37502hT3CMPR定时器3的比较寄存器7503hT3PR定时器3的周期寄存器7504hT3CON定时器3的控制寄存器7505hT4CNT定时器4的计数寄存器定时器47506hT4CMPR定时器4的比较寄存器7507hT4PR定时器4的周期寄存器7508hT4CON定时器4的控制寄存器6.1.4EV寄存器及地址EVB模块中的寄存器(起始地址是7500h~7531h)EVB比较控制寄存器(6个)
地址寄存器名称7511hCOMCONB比较控制寄存器7513hACTRB比较方式控制寄存器7515hDBTCONB死区时间控制寄存器7517hCMPR4比较寄存器47518hCMPR5比较寄存器57519hCMPR6比较寄存器66.1.4EV寄存器及地址EVB模块中的寄存器(起始地址是7500h~7531h)EVB捕获控制寄存器(8个)
地址寄存器名称7520hCAPCONB捕获控制寄存器7522hCAPFIFOB捕获FIFO状态寄存器B7523hCAP4FIFO两级深度的捕获FIFO栈47524hCAP5FIFO两级深度的捕获FIFO栈57525hCAP6FIFO两级深度的捕获FIFO栈67527hCAP4FBOTFIFO栈的栈底寄存器,允许读最近捕获的值7528hCAP5FBOT7529hCAP6FBOT6.1.4EV寄存器及地址EVB模块中的寄存器(起始地址是7500h~7531h)EVB中断寄存器地址(6个)地址寄存器名称752ChEVBIMRA中断屏蔽寄存器A752DhEVBIMRB中断屏蔽寄存器B752EhEVBIMRC中断屏蔽寄存器C752FhEVBIFRA中断标志寄存器A7530hEVBIFRB中断标志寄存器B7531hEVBIFRC中断标志寄存器C6.2通用定时器6.2.1通用定时器(GPT-GeneralPurposeTimer)概述定时器是EV的核心模块。2812芯片内含有4个16位通用定时器,计数范围是0~65535(216-1)个脉冲。主要功能----为以下应用提供时基(1)控制系统中的采样时钟(2)正交编码QEP电路和捕捉单元时钟(3)比较单元和相应的PWM电路操作时钟(4)其他定时功能计数时钟脉冲:内部时钟经分配产生,或由外部引脚来提供。计数方向:增计数,减计数。4种工作方式:停止/保持,连续增计数模式,定向增/减计数模式,连续增减模式4种中断模式:下溢,上溢,比较,周期中断6.2.1通用定时器概述4种中断模式:下溢,上溢,比较,周期中断
1)下溢中断:计数器TxCNT计数回零时,产生下溢中断.2)上溢中断:计数器TxCNT计数到FFFF时,产生上溢中断.3)比较中断:计数器TxCNT计数值等于比较值时,产生比较匹配中断.4)周期中断:计数器TxCNT计数值等于周期值时,产生周期匹配中断
回零时的转换时间需延迟1个时钟.
中断标志置位需延时2个时钟.
6.2.1通用定时器概述1)通用定时器结构(以T1为例)加/减计数寄存器双缓冲比较寄存器,用于存储与计数器进行比较的值双缓冲周期寄存器,当其值与计数器匹配时,根据计数模式定时器复位或开始递减计数。定时控制寄存器,决定定时器的模式全局通用定时器控制寄存器,控制定时器工作模式T1PRT2PRMUXTnCON[0]T1CMPR比较逻辑波形发生器输出逻辑GPTCONAT1CNT控制逻辑T1CON
ADC启动
CPU时钟预定标:1-1/128fcTDIRATCLKINA<1/4fc(外部时钟)中断标志T1PWMGP控制寄存器周期寄存器选择,GP2/GP4有效,用于同步方式0:选择自身的周期寄存器1:选择T1PR/T3PR忽略T2PR/T4PRT1PRT2PRMUXTnCON[0]T1CMPR比较逻辑波形发生器输出逻辑GPTCONAT1CNT控制逻辑T1CON
ADC启动
CPU时钟预定标:1-1/128fcTDIRATCLKINA<1/4fc(外部时钟)中断标志T1PWMGP控制寄存器6.2.1通用定时器概述通用定时器结构可选择的内部或外部输入时钟
预定标计数分频器,可设置为对内部时钟或外部时钟进行分频计数
控制和中断逻辑用于4个可屏蔽的中断:上溢、下溢、定时器比较和周期可选择方向的输入引脚TDIRxTPWM/T1CMP输出引脚6.2.1通用定时器概述通用定时器的输入内部CPU时钟
外部时钟TCLKINA/B,最大频率是CPU时钟频率1/4
方向输入TDIRA/B引脚复位信号RESET正交编码脉冲电路可产生定时器的时钟和计数方向通用定时器的输出
通用定时器比较输出TxCMP(x=1,2,3,4)
为ADC模块提供模数转换启动信号
比较逻辑和比较单元的下上溢、匹配和周期匹配信号计数方向指示位
6.2.1通用定时器概述通用定时器的控制寄存器
1)单个通用定时器控制寄存器TxCON(x=1,2,3,4)TxCON决定着定时器的操作模式15141312111098FreeSoft保留位TMODE1TMODE0TPS2TPS1TPS076543210T2SWT1/T4SWT3+TENABLETCLKS1TCLKS0TCLD1TCLD0TECMPRSELT1PR/SELT3PR+位12-11:用于选择计数模式。为00时,停止/保持模式;为01时,连续增/减计数模式;为10时,连续增计数模式;为11时,定向增/减模式。位10-8:确定输入时钟预定标系数。为000时,输入时钟为fCPU/1;为001,为fCPU/2;为010,为fCPU/4;为011,为fCPU/8;为100,为fCPU/16;为101,为fCPU/32;为110,为fCPU/64;为111,为fCPU/128。位7:为定时器2、4的使能选择位(仅在定时器2、4中有效)。为0时,定时器2、4使用自身的使能位;为1时,使用T1CON、T3CON中的使能位来使能或禁止定时器2、4的相应操作,从而忽略了自身的定时器使能位位6:为定时器使能位。为0时,禁止定时器操作,即定时器被置于保持状态且预定标器被复位;为1时,使能定时器的操作。位5-4用于时钟的选择。为00时,选择内部CPU时钟;为01时,选择外部时钟;为10时保留;为11时选择正交编码脉冲(仅适用于定时器2和4,在SELT1PR=0时有效)。
位3-2:决定比较寄存器的重装载条件。为00时,当计数值是0时重装载;为01时,当计数值是0或等于周期寄存器值时重装载;为10时,立即重装载;为11时保留。位1:为定时器的比较使能位。为0时禁止定时器的比较操作;为1时使能定时器的比较操作。位0:为周期寄存器的选择位(仅在定时器2和4中有效)。为0时,使用自身周期寄存器;为1时,使用T1PR或T3PR作为周期寄存器。可禁止、使能定时器,可选择4种计数模式之一,可选择时钟源,可使用定时器同步,可使能比较操作,可选择比较寄存器的重新加载条件。6.2.1通用定时器概述2)全局通用定时器控制寄存器GPTCONA/B
GPTCONA/B规定了通用定时器针对不同定时器事件所采取的操作,并指明了它们的计数方向。
GPTCONA15141312~1110~98~7-T2STATT1STAT-T2TOADCT1TOADC65~43~21~0TCOMPOE-T2PINT1PIN位14:是通用定时器2的只读状态位,用于仿真观察。当为0时作减计数;为1时作加计数。位13:是通用定时器1的只读状态位,用于仿真观察。当为0时作减计数;为1时作加计数。
位10-9:用于定时器2启动ADC事件。为00时,无事件启动ADC;为01时,设置由下溢中断启动ADC;为10时,设置由周期中断启动ADC;为11时,设置由比较中断启动ADC。位8-7:用于定时器1启动ADC事件。为00时,无事件启动ADC;为01时,设置由下溢中断启动ADC;为10时,设置由周期中断启动ADC;为11时,设置由比较中断启动ADC。位6:是比较输出使能位。为0时,禁止所有通用定时器的比较输出(高阻状态);为1时,使能(允许)所有通用定时器的比较输出。
位3-2:是通用定时器2的比较输出极性选择位。为00时,输出强制低电平;为01时,输出低电平有效;为10时,输出高电平有效;为11时,输出强制高电平。位1-0:是通用定时器1的比较输出极性选择位。为00时,输出强制低电平;为01时,输出低电平有效;为10时,输出高电平有效;为11时,输出强制高电平。GPTCONB15141312~1110~98~7-T4STATT3STAT-T4TOADCT3TOADC65~43~21~0TCOMPOE-T4PINT3PIN6.2.1通用定时器概述GPT的周期寄存器具有双缓冲结构(带有一个映像寄存器),用于存放定时周期值,在一个周期中的任何时刻新的周期值可以写进映像寄存器中,仅当计数寄存器中的值为0时,映像寄存器中的值才重新加载到工作的周期寄存器中,可以改变下一个周期的定时周期。GPT的比较寄存器具有双缓冲结构(带有一个映像寄存器),用于存放比较值,在一个周期中的任何时刻新的比较值可以写进映像寄存器中,用于改变下一个周期的PWM脉冲宽度。当TxCON中所指定的定时器事件发生时,映像寄存器中的值可以加载到工作的比较寄存器中。可能加载的情况有:1)数据写入到映像寄存器后立即加载;2)下溢时,即计数寄存器为0时;3)周期匹配时,即计数寄存器的值等于周期寄存器的值时。6.2.1通用定时器概述基于正交编码器脉冲(QEP)的时钟输入QEP电路可被选定为定向增/减计数模式下的通用T2和T4提供输入时钟和计数方向信号。
QEP电路被选作时钟源时,则选中的T2和T4的预定标因子总是1,不再取决于预定标分频比;而且QEP产生的时钟频率是每个正交编码脉冲输入频率的4倍。QEP输入频率必须低于或等于内部CPU当前工作时钟频率的1/4。通用定时器事件(中断)启动模数转换GPTCONA/B寄存器的位定义了ADC模块的启动信号。GPT的4个中断可以作为内部ADC模块的启动信号,使得没有CPU干涉也能在GPT和ADC的启动之间实现同步。6.2.1通用定时器概述通用定时器的同步通过正确配置T2CON和T4CON,T2可与与T1实现同步,T4可与T3实现同步。过程为:(1)置TnCON(n为2或4)的TnSWTm[.7](m为1或3)位为1,同时置TmCON中的TENABL[.6]位为1。这样2个定时器的计数器将同时启动。(2)在启动同步操作前,将Tn与Tm定时/计数器设置为不同初始值。(3)置Tn中的SELTmPR[.0]位为1,使Tn将Tm的周期寄存器作为自己的周期寄存器使用(忽略自己的周期寄存器)通过定时器同步,可使一个定时器在另一个定时器启动之后延时一段时间再启动。6.2.2通用定时器计数操作(1)停止/保持模式(TxCON[.12.11]=00)
在该种模式下,通用定时器停止操作并保持当前状态,计数寄存器、比较输出和分频系数都保持不变。(2)连续增计数模式(TxCON[.12.11]=10)
----可用于定时,边沿触发、异步PWM波形。全局控制寄存器中的计数方向指示位为1,TDIRA/B引脚不起作用。
定时计数器TxCNT按照预定标时钟进行计数,并与周期寄存器(TxPR)进行比较,直到计数值与周期寄存器中数值匹配(相等)为止,在匹配之后的下一个输入时钟的上升沿复位计数器的数值为0,并重新开始下一个计数周期的计数操作。4种计数模式:6.2.2通用定时器计数操作通用定时器连续增计数模式的工作过程:
在该计数模式下,若外设中断没有被屏蔽,则一旦发生匹配就对相应的周期中断标志进行置位,并产生外设中断请求。如果该中断已经设置为用来启动ADC,则在中断标志被置位的同时,将启动一次ADC。
定时器的初始值可在0000h-FFFFh范围内选。当初始值大于周期寄存器数值时,定时器将计数到FFFFh,上溢中断标志位置位,计数值复位为0后再进入正常的操作;当初始值等于周期寄存器数值时,定时器将置位周期中断标志,计数器复位为0,并产生下溢中断标志进入正常操作。如果定时计数器的初始数值为0,定时时间为TxPR+1个定标的时钟输入周期。6.2.2通用定时器计数操作(3)定向增/减计数模式(TxCON[.12.11]=11)
适用于正交脉冲电路及外部事件控制
根据TDIRA/B引脚的输入进行连续加或减计数操作。当引脚TDIRA/B为高电平时,定时器将加计数一直到等于周期寄存器的数值,然后计数器复位为0,并继续进行加计数;当引脚TDIRA/B为低电平时,定时器将进行减计数操作,一直到0,然后定时器重新装载周期寄存器的数值,并继续进行减计数操作。6.2.2通用定时器计数操作初始值可以为0000h-FFFFh之间的任何值。当计数初始值大于周期寄存器的值时,如果引脚TDIRA/B为高电平,定时器复位到0,并继续加计数到周期寄存器的值;如果引脚TDIRA/B为低电平,则计数器减计数到周期寄存器的值后,再减计数到0,然后重新装入周期寄存器的值,并开始新的减计数操作。从引脚TDIRA/B的变化到计数方向变化之间的延迟是当前计数结束后的两个CPU时钟周期,即当前预定标的计数周期结束后的两个CPU周期。在该种计数模式下,无论是通过TCLKINA/B输入的外部时钟信号,还是来自内部的CPU时钟,都可作为该模式下的计数输入。
周期、下溢、上溢中断的标志位及中断和相关的事件都由各自的匹配产生,其产生方式与连续增计数模式相同。通用定时器定向增/减计数模式可用于正交编码脉冲电路,在这种情况下,正交编码脉冲电路为定时器2和4提供计数时钟和计数方向。
6.2.2通用定时器计数操作(4)连续增减计数模式(TxCON[.12.11]=01---适用于PWM输出
方向引脚TDIRA/B不起作用。计数方向的改变取决于计数寄存器的值:当计数值等于周期值后开始减计数,当计数值为0后开始增计数。初始计数方向与初始值有关。
该种模式的定时时间为2×(TxPR)个输入时钟周期。6.2.2通用定时器计数操作(4)连续增/减计数模式
该计数模式的计数初始值不同,第一个周期的计数方向和周期也不同。
当计数初始值在0和周期寄存器的值之间时,计数器将加计数到周期寄存器的值,然后进入正常计数操作;
当计数初始值等于周期寄存器的值时,计数器将减计数到0,然后开始正常的计数操作;
当计数初始值大于周期寄存器的值时,定时器将加计数到FFFFh,然后复位为0,开始正常的连续增/减计数操作。周期、下溢、上溢中断的标志位、以及中断和相关的事件都由各自的匹配产生,其产生方式与连续增计数模式下相同。
6.2.3通用定时器比较操作
每个通用定时器都有一个相关的比较寄存器TxCMPR和一个PWM输出引脚TxPWM。
当计数值与比较寄存器的值相等时,就会发生比较匹配。如果比较操作被使能(TxCON.1位被置1),当产生比较匹配时将发生下列事件:1)在匹配发生一个CPU时钟周期后,比较中断寄存器标志位被置位。如果比较中断标志位已通过设置GPTCONA/B寄存器中的相应位去启动ADC,则当比较中断标志位被置位的同时也将产生ADC的启动信号;2)在匹配发生一个CPU时钟周期后,根据GPTCONA/B寄存器相应位的配置情况,相关的PWM输出发生跳变;
3)如果比较中断未被屏蔽,则将产生一个外设中断请求。6.2.3通用定时器比较操作通用定时器的比较操作1)PWM输出跳变由一个非对称和对称的波形发生器和相应的输出逻辑控制,并且依赖于以下条件。(1)GPTCONA/B寄存器中相应位的定义;
(2)定时器所处的计数模式;
(3)在连续增/减计数模式下的计数方向。
2)非对称和对称波形发生器
根据通用定时器所处的计数模式,产生一个非对称和对称的PWM波形输出。
6.2.3通用定时器比较操作3)非对称波形的发生如果计数操作开始前输出为0,则保持不变直到比较匹配的发生,匹配时产生触发,输出发生跳变。如果在下一周期的新比较值不是0,则发生周期匹配的那个周期结束后输出复位为0。如果在一个周期开始时比较值为0,则在整个周期输出将是1;如果下一个周期的新比较值也是0,则输出将不复位为0,这意味着可以产生0~100%的脉冲宽度调节。
如果比较值大于周期寄存器的值,则整个周期输出为0。如果比较值等于周期寄存器的值,则输出为1将保持一个定标的时钟输入周期。比较寄存器值的改变只影响PWM脉冲的单边,这是非对称PWM波形的特点。
工作于连续递增计数模式时,产生非对称波形。保持跳变复位新比较值非0周期开始比较值为0不复位跳变整个周期输出0跳变比周期更长的比较值6.2.3通用定时器比较操作4)对称波形发生
当通用定时器处于连续增/减计数模式时产生对称波形。
若计数开始前输出为0,则输出保持不变直到第一次比较匹配,输出发生跳变,然后输出保持不变直到第二次比较匹配,输出再次发生跳变直到周期结束。如果没有第二次匹配且下一个周期的新比较值不为0,则在周期结束后复位为0。
若比较值在周期开始时为0,则输出为1直到第二次比较匹配发生。如果比较值在周期的后半部为0,则输出将保持为1直到周期结束。在这种情况下,如果新比较值仍为0,输出将不会复位为0。
如果前半周期中的比较值大于或等于周期寄存器的值,则第一次跳变将不会发生,但是当后半周期发生匹配时,输出仍会跳变。这种输出错误的跳变经常是由于应用程序计算不正确引起的,它将在周期结束时被纠正。跳变跳变比较值为0保持保持跳变跳变保持保持跳变6.2.3通用定时器比较操作5)输出逻辑
输出逻辑可通过配置GPTCONA/B寄存器中的相应位来规定高有效、低有效、强制低或强制高。
当PWM的输出定义为高有效时,它的极性与相关的波形发生器的极性相同;当PWM的输出定义为低有效时,它的极性与相关波形发生器的极性相反;当通过GPTCONA/B寄存器中的控制位将PWM的输出定义为强制低或高时,PWM的输出立即变为0或1。
当出现下列任何一种情况时,所有的通用定时器PWM输出都置为高阻态:
(1)软件将GPTCONA/B[6]置为0;
(3)任何一个复位事件发生;
(4)软件将TxCON[1]置为0。
(2)PDPINTx引脚上的电平被拉低并且未被屏蔽;6.2.5通用定时器的PWM输出每个GPT有一路PWM输出。若GPT工作于连续增计数,输出非对称PWM波;若工作于连续增减计数方式,输出对称PWM波形。GPT输出PWM波形的初始化过程:(1)根据PWM波形的周期设置TxPR;(2)设置TxCON确定计数方式、时钟、使能比较操作;(3)根据PWM脉宽占空比设置TxCMPR.新的占空比需要新的比较值,比较寄存器的值根据脉宽的要求不断更新。
6.2.6通用定时器复位当任何复位事件发生时,产生以下复位操作。1)GPTCONA/B中,计数方向指示位置1,其余位都复位为0,禁止所有通用定时器的操作2)所有定时器中断标志位复位为0;3)所有定时器中断屏蔽位复位为0,屏蔽所有中断。4)所有通用定时器的比较器输出都置为高阻。通用定时器应用利用EVA的通用定时器1定时,初始化程序:编程步骤:初始化T1CON使能定时器操作设置EVAIMAR清EVAIFRA初值T1PR0T1CNTvoidtimer1_ini()//定时器1初始化子程序{
*IMR=0x0002;/*使能int2中断,*/
*EVAIMRA=0x0080;/*使能T1PINT中断,或EVAIMRA=EVAIMRA|0x0080;*/
*EVAIFRA=0xFFFF;/*清EVA中断标志*/
*T1PER=0x01CD;/*GPT1的周期寄存器,fCPU=4x10MHz,
约1ms产生一次中断*/
*T1CNT=0x0000;/*计数器清零*/
*T1CON=0x164C;/*连续增计数模式,预分频为64,定时器计时使能,内部时钟,定时器1比较使能*/
asm("clrcINTM");/*开总中断*/}6.3比较单元
EVA模块:比较单元1、2和3,定时器1提供时基。
EVB模块:比较单元4、5和6,定时器3提供时基。
每个比较单元都有两个相关的PWM输出引脚,每个EV共有6个。
(1)比较单元输入和输出
输入:1)控制寄存器的控制信号;2)通用定时器1和3(T1CNT和T3CNT)及它们的下溢和周期匹配信号;3)复位信号。输出:比较匹配信号。如果比较操作使能,该匹配信号将置中断标志位,并使和比较单元相关的两个输出引脚发生跳变。6.3比较单元(2)比较操作模式--由比较控制寄存器(COMCONx)相关位决定
EV的GPT1(或GPT3)的计数值不断与比较寄存器的值进行比较,当发生匹配时,比较单元的两个引脚的输出电平按照方式控制寄存器ACTRA(或ACTRB)控制的位进行跳变。
匹配时,若比较被使能,则比较匹配中断标志位被置位,这时若中断没有被屏蔽,则会产生外设中断请求,且输出跳变的时序。中断请求的产生与通用定时器的比较操作相同。输出逻辑、死区单元及空间矢量PWM逻辑可改变比较单元的输出。(3)比较操作(4)比较单元操作的寄存器配置
EVAEVB设置T1PR设置T3PR设置ACTRA设置ACTRB初始化CMPRx初始化CMPRx设置COMCONA设置COMCONB设置T1CON设置T3CON步骤见右表。
6.3.1比较单元寄存器
若比较使能,则当比较匹配事件发生时,6个比较输出引脚就按比较方式控制寄存器设定的方式跳变。任何复位事件使所有比较单元寄存器复位为0,并且比较输出引脚置为高阻。1)比较控制寄存器A(COMCONA)(7411h)或B(COMCONB)(7511h)
位15:是比较使能位。为0禁止比较操作;为1使能比较操作。
位14-13:确定比较寄存器CMPRx的重载条件。为00时为T1CNT=0(即下溢);为01时为T1CNT=0或T1CNT=T1PR(即下溢或周期匹配);为10时为立即重载;为11时为保留位。位12:为空间矢量PWM模式使能位。为0时禁止空间矢量PWM模式;为1时使能空间矢量PWM模式。
位11-10:确定方式控制寄存器ACTRA的重载条件。为00时条件为T1CNT=0(即下溢);为01时条件为T1CNT=0或T1CNT=T1PR(即下溢或周期匹配);为10时条件为立即重载;为11时为保留位。
位9:是比较输出使能位。为0时禁止PWM引脚输出,输出为高阻态;为1时PWM输出引脚处于使能状态。
位8:反映了当前引脚PDPINTA的状态。
-STATUSFCOMPOEACTRLD0ACTRLD1SVENABLECLD0CLD1CENABLE7~089101112131415PDPINTA-STATUSFCOMPOEACTRLD0ACTRLD1SVENABLECLD0CLD1CENABLE7~089101112131415PDPINTB3)比较动作(方式)控制寄存器A(ACTRA)(7413h)或B(ACTRA)(7413h)15141312111098SVRDIRD2D1D0CMP6ACT1CMP6ACT0CMP5ACT1CMP5ACT076543210CMP4ACT1CMP4ACT0CMP3ACT1CMP3ACT0CMP2ACT1CMP2ACT0CMP1ACT1CMP1ACT0位15:确定空间矢量PWM的旋转方向。为0时正向;为1时反向位14-12:为基本的空间矢量,仅用于空间矢量PWM输出的产生位11-10:用于选择引脚PWM6/IOPB3的比较输出方式。为00输出强制低;为01输出低电平有效;为10输出高电平有效;为11输出强制高。位9-8:用于选择引脚PWM5/IOPB2的比较输出方式。为00输出强制低;为01输出低电平有效;为10输出高电平有效;为11输出强制高。
位7-6:用于选择引脚PWM4/IOPB1的比较输出方式。为00输出强制低;为01输出低电平有效;为10输出高电平有效;为11输出强制高。位5-4:用于选择引脚PWM3/IOPB0的比较输出方式。为00输出强制低;为01输出低电平有效;为10输出高电平有效;为11输出强制高。
位3-2:用于选择引脚PWM2/IOPA7的比较输出方式。为00输出强制低;为01输出低电平有效;为10输出高电平有效;为11输出强制高。位1-0:用于选择引脚PWM1/IOPA6的比较输出方式。为00输出强制低;为01输出低电平有效;为10输出高电平有效;为11输出强制高。15141312111098SVRDIRD2D1D0CMP12ACT1CMP12ACT0CMP11ACT1CMP11ACT076543210CMP10ACT1CMP10ACT0CMP9ACT1CMP9ACT0CMP8ACT1CMP8ACT0CMP7ACT1CMP7ACT06.3.1比较单元寄存器6.3.2比较单元中断
若比较操作使能,在比较匹配发生后的1个CPU时钟EVxIFRA寄存器中的相应比较中断标志位置1;如果比较中断允许,则会产生一个比级中断请求。比较单元的复位复位时所有与比较单元相关的寄存器都复位为0;并且所有比较输出引脚都为高阻态。6.4PWM电路及PWM信号的产生
在电动机控制中,采用基于DSP硬件的PWM发生电路可大大减小用户编程的工作量和CPU时间的开销。
每个EV都有3对0-16μs的可编程死区控制PWM波形输出的功能。
脉宽调制(PWM)的核心就是产生周期不变但脉宽可变的信号,这个定长的周期被称为PWM载波周期,其倒数被称为PWM载波频率。
不变的PWM载波周期由通用定时器的周期匹配实现,根据调制频率来设置通用定时器周期寄存器的值;
可变的PWM脉宽由通用定时器的比较匹配实现,根据已知的脉宽变化规律在每个周期内修改通用定时器比较寄存器的值,用于得到不同的脉宽。
6.4.1PWM信号6.4.2用EV产生PWM信号6.4PWM电路及PWM信号的产生
PWM波形发生器的特性1)具有16位的死区控制寄存器;
2)有从0到16μs的可编程死区发生器控制PWM输出对;3)最小的死区宽度为1个CPU时钟周期;
4)可根据需要改变PWM的载波频率;5)在每个PWM周期内可根据需要改变PWM脉冲的宽度;
6)具有外部可屏蔽的功率驱动保护中断;7)脉冲形成发生器电路用于可编程的对称、非对称以及4个空间矢量PWM波形产生;8)具有自动重装载的比较和周期寄存器使CPU的负担最小。通过设置死区控制寄存器可选择死区时间。6.4PWM电路及PWM信号的产生6.4.3与比较单元相关的PWM电路
对于每个事件管理器,都具有6路带有可编程的死区和输出极性控制的PWM输出。
6.4.4可编程的死区单元和输出逻辑死区单元的组成输入:比较单元的非对称/对称波形发生器产生的PHx信号。输出:DTPHx、DTPHx_。输入时钟预分频器(x/1、x/2、x/4、x/8、x/16、x/32)3个4位减计数定时器1)死区单元的输入输出
当死区被禁止时,2个输出信号完全相同,且等于输入PHx;
EVA和EVB具有各自独立的可编程死区单元。6.4.4可编程的死区单元和输出逻辑带有死区的PWM波形图如DBTCONA[11-8]是m,则当预定标因子DBTCONA[4-2]对应为x/p时,死区数值为(m×p)个TCPU。2)死区的产生
当死区使能时,这两个信号的转换边沿就会被死区间隔分开。死区间隔的大小由DBTCONA/B决定。6.4.4可编程的死区单元和输出逻辑4)死区定时器控制寄存器(1)死区控制寄存器A(DBTCONA):地址7415h15~12111098保留位DBT3DBT2DBT1DBT07654~21~0EDBT3EDBT2EDBT1DBTPS2DBTPS1DBTPS0保留位位11-8:用于定义死区定时器周期。这些位规定了3个4位死区定时器的周期值位7:为死区定时器3的使能位(对应比较单元3的引脚PWM5、PWM6)。该位为0表示禁止;为1表示使能。
位6:为死区定时器2的使能位(对应比较单元2的引脚PWM3、PWM4)。该位为0表示禁止;为1表示使能。位5:为死区定时器1的使能位(对应比较单元1的引脚PWM1、PWM2)。该位为0表示禁止;为1表示使能。位4-2:确定死区定时器的预分频因子。为000时x/1;为001时x/2;为010时x/4;为011时x/8;为100时x/16;为101-111时x/32。(2)死区控制寄存器B(DBTCONB):地址为7515h
15~12111098保留位DBT3DBT2DBT1DBT07654~21~0EDBT3EDBT2EDBT1DBTPS2DBTPS1DBTPS0保留位6.4.4可编程的死区单元和输出逻辑5)输出逻辑
在比较发生匹配时,输出引脚PWM1-PWM12上的输出极性和方式是由输出逻辑电路决定的。
与每个比较单元相关的输出方式可分为低有效、高有效、强制低和强制高。
PWM输出极性和方式可通过ACTRA/B寄存器中相应的位来配置。当发生以下任一情况时,所有的PWM输出引脚都置成高阻态:(1)软件将COMCONA/B[9]清0;(2)当PDPINTA/B未被屏蔽时,由硬件将PDPINTA/B引脚上的电平拉低;(3)发生任何复位事件;6.4.5非对称和对称PWM的产生EV中的每个比较单元都能够产生非对称和对称的PWM波形,并且三个比较单元一起可以产生三相对称空间向量PWM输出。与通用定时器产生PWM波形相比,比较单元多了死区控制和空间向量PWM输出功能。
(1)PWM产生的寄存器设置1)设置和装载比较动作寄存器ACTRA/B,决定PWM输出的极性;2)若死区使能,则设置和装载死区控制寄存器DBTCONA/B,以决定死区的大小;3)设置和装载T1PR或T3PR寄存器,以决定PWM波形的周期;4)初始化比较周期寄存器CMPRx,设置和装载比较控制寄存器COMCONA/B;
5)设置和装载TlCON或T3CON寄存器,来启动比较操作;
6)更新CMPRx寄存器的值,使输出的PWM波形的占空比发生变化。6.4.5非对称和对称PWM的产生(2)非对称PWM波形的产生
产生条件:1)将T1或T3设置为连续增计数模式;2)装载周期寄存器=PWM载波周期的数;3)COMCONA/B配置成使能比较操作,使能PWM输出引脚。4)如果死区使能,设置死区时间值(DBTCONA/B的11-8位);5)适当地配置比较方式寄存器ACRTA/B。
6.4.5非对称和对称PWM的产生(3)对称PWM波形的产生
产生条件:1)将T1或T3的设置为连续增/减计数模式;2)装载周期寄存器=PWM载波周期的数;3)COMCONA/B配置成使能比较操作,使能PWM输出引脚。4)如果死区使能,设置死区时间值(DBTCONA/B的11-8位);5)适当地配置寄存器ACRTA/B。
对称PWM波形比非对称PWM波形的优越之处在于它存在有两个相同长度的非激活区(无效区),这两个区分别位于PWM波形的起始和结束处。6.4.5非对称和对称PWM的产生*PWM输出假设PWM的引脚输出为高电平有效,比较寄存器的值为TxCMPR,周期寄存器的值为TxPR,正常时有0<TxCMPR<TxPR,通用定时器的工作模式为连续增/减方式。波形的发生过程如下:1)计数器从0开始增计数,在未达到比较寄存器的值之前,引脚输出为无效的低电平。2)当计数值与比较寄存器的值相等时,产生第一次比较匹配事件,PWM引脚输出有效高电平。3)计数器继续增计数到周期值,发生周期匹配事件。计数器减计数操作,当再次与比较值相等时,发生第二次比较匹配事件,对应的PWM引脚输出低电平。之后,定时计数器继续减计数到0为止,产生一次下溢事件,完成一个周期。4)如果下一个周期比较寄存器的值仍然大于0且小于周期寄存器的值,则又重复以上步骤。6.4.5非对称和对称PWM的产生由于在一个周期内会发生两次比较匹配事件,如果两次比较值相同,则会产生对称的PWM波形。如果两次比较匹配值不同,则会产生非对称的PWM波形。
voidpwm_ini()//pwm初始化子程序{*MCRA|=0x0FC0;/*设置复用控制寄存器使能pwm1~6引脚*/*ACTRA=0x0666;
/*pwm6,4,2高有效,pwm5,3,1低有效*/*DBTCONA=0x0000;
/*禁用死区控制*/*CMPR1=0x0100;/*设定比较器周期寄存器CMPR1~3*/
*CMPR2=0x0300;
/*确定不同的占空比*/
*CMPR3=0x0500;
/*设置定时器1的周期寄存器,确定载波频率*/*T1PER=0x0600;*COMCONA=0x8200;/*使能比较器操作*/
*T1CON=0x1000;/*定时器1为连续增计数模式*/
}EVA/B的PWM波形应用软件设计头文件,链接命令文件,中断向量表文件,芯片初始化子程序,PWM初始化子程序,主程序。6.5空间向量PWM为三相功率变换器中六个功率晶体等设计的特殊开关电路三相功率反相换流器原理:aa_T1T2bb_VaVbVcT3T4T5T6c_cV0UT0101100111000011016.5空间向量PWMabcVa0Vb0Vc0VabVbcVacT2T4T6000000000111001-1/3-1/32/30-11110010-1/32/3-1/3-110101011-2/31/31/3-1011001002/3-1/3-1/310-10111011/3-2/31/31-100101101/31/3-2/301-1001111000000000开关模式:以T1,T3,T5的开关状态:6.6捕捉单元
捕获单元是一种输入设备,它不占用CPU的资源,可以与CPU并行地捕获引脚上的电平变化并记录发生的时刻。由于捕获单元具有两级FIFO堆栈缓冲器,对于微秒级电平波动的捕获能力是一般CPU所不具备的。
每个EV有三个捕获单元。
EVA对应捕获单元CAP1、2和3,EVB对应4、5和6。
EVA捕获单元可利用T1或T2作为时基,但CAP1和CAP2不能选择不同的时基。EVB捕获单元可利用T3或T4作为时基,但CAP4和CAP5不能选择不同的时基。当检测引脚CAPx(EVA:x=1、2、4;EVB:x=4、5、6)上的电平发生跳变时,所选的定时器的计数值就被捕获并存入到一个2级深的FIFO堆栈中。6.6捕捉单元捕获引脚捕获控制寄存器捕获FIFO状态寄存器可定义为上升沿、下降沿,或上升下降沿检测2级深的FIFO堆栈1)一个16位可读写的捕获控制寄存器(EVA:CAPCONA;EVB:CAPCONB);2)一个16位的捕获FIFO状态寄存器(EVA:CAPFIFOA;EVB:CAPFIFOB);3)可选择通用定时器1或2(EVA)和选择通用定时器3或4(EVB)作为时间基准;4)每个捕获单元都有一个16位、2级深的FIFO堆栈;
5)6个施密特捕获输入引脚CAP1-CAP6,每个引脚对应一个捕获单元;6)可定义的跳变检测方式(上升沿、下降沿,或上升下降沿);
7)每个捕获单元都对应一个可屏蔽的中断标志位。6.6.1捕捉单元的特点1)捕获功能使能时,当在相应的输入引脚上产生一个指定的电平跳变时,将引发计数器的计数值装载到2级深的FIFO堆栈中;2)假如已经有一个或多个有效的捕获值存储在堆栈中(CAPFIFOA/B相应位不为0),则相应的中断标志位被置位。如果这个中断没有被屏蔽,将会产生一个外设中断请求。3)每当一个新的计数值被捕获并装载到FIFO堆栈时,CAPFIFOA/B中相应的状态位被调整到适应新的堆栈状态。6.6.1捕捉单元的操作捕获单元的操作不影响任何通用定时器或与通用定时器相关的比较/PWM操作。从捕获引脚的电平跳变到计数值被存储所用的时间为2个时钟周期。6.6捕捉单元所有捕获单元的寄存器都可由RESET信号复位为0。1)捕捉单元时间基准选择对于EVA模块,捕获单元CAP3有自己独立的时基选择位,而CAP1和CAP2没有,这就使得可以同时使用2个通用定时器。
CAP1和CAP2共用一个,而CAP3独立使用一个。对于EVB模块,CAP6有自己独立的时基选择位。为进行正常捕获操作,必须进行如下寄存器的设置:(1)初始化FIFO状态寄存器(CAPFIFOA/B),并将相应的状态位清0;
(2)设置所选用定时器的操作模式;
(3)如果需要,设置相关通用定时器的比较寄存器和周期寄存器;(4)设置相应的捕获控制寄存器CAPCONA/B。2)捕捉单元的设置6.6.3捕捉单元寄存器捕获单元的操作是由4个16位的寄存器CAPCONA/B和CAPFIFOA/B控制的。由于使用了定时器1-4为捕获单元提供时基,因此也用到了寄存器TxCON。此外,寄存器CAPCONA/B也用来控制正交编码电路(QEP)的操作。(1)捕获控制寄存器A(CAPCONA):地址为7420h
1514-1312111098CAPRESCAPQEPNCAP3EN-CAP3TSELCAP12TSELCAP3TOADC7-65-43-21-0CAP1EDGECAP2EDGECAP3EDGE-位15:为捕获复位位。为0时将所有捕获单元及正交编码脉冲电路的寄存器清0;为1时不进行任何操作。
位14-13:是捕获单元1和2的控制位。为00时禁止捕获单元1和2操作,FIFO堆栈保持原内容不变;为01时使能捕获单元1和2操作。位12:是捕获单元3控制位。为0时禁止捕获单元3操作,FIFO内容不变;为1时使能捕获单元3操作。位10:是捕获单元3的通用定时器选择位。为0时选择定时器2;为1时选择定时器1。
位9:是捕获单元1和2的通用定时器选择位。为0时选择定时器2;为1时选择定时器1。
位8:是捕获单元3启动ADC转换控制位。为0时无意义;为1时,在CAP3INT标志置位时启动ADC。
位7-6:是捕获单元1的边沿检测控制位。为00时无检测;为01时检测上升沿;为10时检测下降沿;为11时检测上升和下降沿。位5-4:是捕获单元2的边沿检测控制位。为00时无检测;为01时检测上升沿;为10时检测下降沿;为11时检测上升和下降沿。位3-2:是捕获单元3的边沿检测控制位。为00时无检测;为01时检测上升沿;为10时检测下降沿;为11时检测上升和下降沿。
1514-1312111098CAPRESCAPQEPNCAP6EN-CAP6TSELCAP45TSELCAP6TOADC7-65-43-21-0CAP4EDGECAP5EDGECAP6EDGE-(2)捕获控制寄存器B(CAPCONB):地址为7520h
6.6.4捕捉单元FIFO堆栈每个捕获单元都有一个2级深的FIFO(先进先出)堆栈。EVA:顶部包括CAP1FIFO、CAP2FIFO、CAP3FIFO,底部包括CAP1FBOT、CAP2FBOT、CAP3FBOT;EVB:顶部包括CAP4FIFO、CAP5FIFO、CAP6FIFO,底部包括CAP4FBOT、CAP5FBOT、CAP6FBOT。顶部寄存器(存旧值)底部寄存器(存新值)出进只读如果底部寄存器的值压入顶部,某捕捉单元的FIFO状态寄存器的相应2位状态位将发生变化:若读取前为10,或11,则读取后变为01,表明堆栈中只有一个值;若读取前为01,则读取后变为00,即堆栈为空。读取后,底部的新值(如果有的话)就会压入到顶部。(2)第二次捕捉
如果在前次捕捉计数值被读出之前产生了另一次的捕获,则新捕获到的计数值被送到底部寄存器,同时相应的状态位设置成10。如果在下次捕获前读取了顶部计数值,底部中的新计数值将压入到顶部寄存器中,FIFO状态位被置成01。(3)第三次捕捉若在捕捉发生时栈中已有两个捕获到的计数值,此时又发生一个新的捕获事件,则位于顶部的旧值将弹出栈并丢失,而底部中的计数值将压入到顶部寄存器中,新捕获到的计数值被压入到底部寄存器,并将FIFO的状态位置成11。6.6.4捕捉单元FIFO堆栈(1)第一次捕捉当相应捕捉单元对应的引脚电平发生跳变并被捕捉到时,如果此时堆栈是空的,则相应定时器的计数值输入到顶部寄存器中,同时相应的状态位被设置为01。如果在下次捕获之前对FIFO栈进行了访问,状态位将被复位到00。堆栈的操作状态如果FIFO堆栈中已经存在至少一个有效的计数值,此时又发生了一次捕获事件,则相应的中断标志被置位。如果该中断没有被屏蔽,则会产生一个外设中断请求信号。
如果使用了捕获中断,则可从中断服务程序中读取捕获到的计数值。
如果没有使用中断,则也可以通过查询中断标志位和FIFO栈的状态位来确定是否发生了捕获事件,若已发生捕获事件,则可从相应捕获单元的FIFO栈中读取捕获到的计数值。6.6.5捕捉中断捕获单元的应用
脉冲计数:用捕获单元对输入脉冲边沿进行捕获、用EV的GPT对脉冲进行计数。
注意:在不知道捕获对象宽度时,应尽量使定时器能定最长时间,如不倍频,128预分频;如果超过了DSP的最大捕获时间,则用定时器溢出的方法再加软件计数;捕捉引脚输入电平<3.3V(2812/2407为3.3V供电)6.8EV事件管理器中断捕获单元3中断0035h3CAP3INT捕获单元2中断0034h2CAP2INT4捕获单元1中断0033h1CAP1INTC通用定时器2上溢中断002Eh4T2OFINT通用定时器2下溢中断002Dh3T2UFINT通用定时器2比较中断002Ch2T2CINT3通用定时器2周期中断002Bh1T2PINTB通用定时器1上溢中断002Ah8T1OFINT通用定时器1下溢中断0029h7T1UFINT通用定时器1比较中断0028h6T1CINT通用定时器1周期中断0027h5T1PINT比较单元3比较中断0023h4CMP3INT比较单元2比较中断0022h3CMP2INT2比较单元1比较中断0021h2CMP1INTA1功率驱动保护中断A0020h1INT中断源中断向量优先级中断名称中断组EVAEVA、EVB各有15个中断源,其中14个分成A、B、C3个组,产生INT2、INT3、INT4内核级中断,另一个产生INT1内核级中断。6.8EV事件管理器中断EVB捕获单元6中断0038h3CAP6INT捕获单元5中断0037h2CAP5INT4捕获单元4中断0036h1CAP4INTC通用定时器4上溢中断003Ch4T4OFINT通用定时器4下溢中断003Bh3T4UFINT通用定时器4比较中断003Ah2T4CINT3通用定时器4周期中断0039h1T4PINTB通用定时器3上溢中断0032h8T3OFINT通用定时器3下溢中断0031h7T3UFINT通用定时器3比较中断0030h6T3CINT通用定时器3周期中断002Fh5T3PINT比较单元6比较中断0026h4CMP6INT比较单元5比较中断0025h3CMP5INT2比较单元4比较中断0024h2CMP4INTA1功率驱动保护中断B0019h1INT中断源中断向量优先级中断名称中断组中断产生条件:下溢:计数值为0000h时,上溢:计数值为FFFFh比较:计数值与比较寄存器的值匹配时;周期:计数值与周期寄存器的值。6.8.1EV中断请求和服务1)产生外设中断请求
当事件管理器模块产生一个中断时,则其相应的中断标志位置1。如果此时相应的中断未被屏蔽(使能),则外设中断扩展控制器(PIE)就产生了一个外设中断请求。2)加载优先级别较高的中断向量到PIVR
当中断请求被CPU接受时,和最高优先级相对应的那个中断向量被装载到PIVR中,在主中断服务程序(ISR)中可读取该中断向量。
注意:一旦发生中断,在中断服务程序中应通过向中断标志寄存器的相应位写1的方法来清除中断标志,否则,该中断以后将不再产生中断请求。6.8.1EV中断请求和服务3)中断响应过程(EV中断响应过程)(1)中断源
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年广东水利电力职业技术学院单招综合素质笔试备考试题含详细答案解析
- 2026河南郑州新华医院招聘6人笔试备考题库及答案解析
- 2026年浙江警官职业学院高职单招职业适应性测试备考题库及答案详细解析
- 2026云南省人力资源和社会保障厅所属事业单位招聘12人笔试备考题库及答案解析
- 2026四川省九洲电器集团有限责任公司招聘工艺研发岗等岗位58人笔试备考题库及答案解析
- 2026天津职业技术师范大学劳务派遣工作人员招聘1人笔试备考题库及答案解析
- 2026中国能建中国电力工程顾问集团华北电力设计院有限公司应届高校毕业生(春季)招聘笔试备考试题及答案解析
- 2026渭源大地保险公司招聘8人笔试备考题库及答案解析
- 2026贵州六盘水盘州市道路交通安全工作联席会议办公室社会招聘工作人员招聘7名笔试备考题库及答案解析
- 2026湘电集团秋季校园招聘笔试备考题库及答案解析
- 2026湖南衡阳日报社招聘事业单位人员16人备考题库(含答案详解)
- 教案人教版三年级下册语文语文园地五教学(2025-2026学年)
- 室内工装设计方案汇报
- 老年人食品药品误食防护指南
- 蓝牙低功耗(BLE)信标创新创业项目商业计划书
- 血常规散点图解析
- 胸痛患者急救流程
- 中频治疗部位示意图
- 第2章一元一次不等式和一元一次不等式组 单元综合练习题 2023-2024学年北师大版八年级数学下册
- 六年级数学上册解决问题60道
- 2021年山东高考英语试卷-(及答案)
评论
0/150
提交评论