版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第8章事件管理器8.1事件管理器模块概述8.2通用定时器8.3比较单元8.4脉宽调试电路PWM8.5捕捉单元8.5正交编码器脉冲电路作业:20)事件管理器的基本组成21)EV中断响应过程22)GPT的基本功能23)TxCON的作用24)GPTCONA/B的作用25)GPT有几种中断方式26)GPT有几种计数方式,怎样设置27)怎样利用GPT产生非对称PWM波形28)怎样利用GPT产生对称PWM波形29)怎样利用比较单元产生非对称PWM波形28)怎样利用比较单元产生对称PWM波形30)捕捉单元的基本功能31)QEP电路的应用
240x芯片内含有两个事件管理器模块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)8.1事件管理器模块概述EVAEVB各13个引脚26328.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的功能相同,只是单元的名称有所区别。8.1事件管理器模块概述8.1.1事件管理器结构
定时器(GP):具有基本计数/定时功能,可以为各种应用提供时基,还可以与其他三个单元合作,进行电机控制,产生比较输出/PWM信号。多个定时器可配置行使不同功能。
3个比较单元:可以输出三组比较输出/PWM信号,且具有死区控制等功能。
3个捕捉单元:可以记录输入引脚跳变的时刻。
正交编码脉冲电路(QEP):可以直接连接光电编码器,可获得旋转机械的速度和方向等信息。
事件管理器模块中的大多数引脚与I/O口共用。当不用作事件管理器时,作为I/O引脚。
8.1.1事件管理器结构比较/PWM输出引脚:每个事件管理器都有8个比较/PWM输出引脚。其中,2个为通用定时器的比较/PWM输出,6个全比较器的比较/PWM输出。片外时钟输入引脚:定时器可以通过软件编程决定使用片内时钟还是片外时钟。当使用片外时钟时,TCLKINA、TCLKINB作为片外时钟输入引脚。计数方向引脚:当通用定时器处于定向增/减计数方式时,通过引脚TDIRA、TDIRB设置计数方向。
事件管理器常用于运动控制和电机控制,一般其PWM输出信号要经过功率驱动才能控制电机等设备。为了保证系统操作的安全,设计了功率驱动保护中断功能。
功率驱动保护中断引脚:
中断引脚一般用于向电机监视程序提供过电压、过电流等异常信息。
中断引脚低电平有效,当发生由高到低的电平跳变时,相应的中断标志位置1,但是必须维持至少2个时钟周以使中断引脚的跳变能被识别并且与内部时钟同步。如果相应的中断使能,硬件立即将所有事件管理器输出引脚置为高阻,起到保护作用,同时向CPU发出中断请求。信号的鉴别与同步需要2个CPU时钟周期,因此中断引脚的低电平至少要保持2个时钟周期。8.1.2EV寄存器及地址EVA模块中的寄存器(起始地址是7400h~7431h)地
址寄
存
器名
称7400hGPTCONA定时器控制寄存器7401hT1CNT定时器1的计数寄存器定时器17402hT1CMPR定时器1的比较寄存器7403hT1PR定时器1的周期寄存器7404hT1CON定时器1的控制寄存器7405hT2CNT定时器2的计数寄存器定时器27406hT2CMPR定时器2的比较寄存器7407hT2PR定时器2的周期寄存器7408hT2CON定时器2的控制寄存器EVA定时寄存器(9个)
每个EV各有29个寄存器。8.1.2EV寄存器及地址EVA模块中的寄存器(起始地址是7400h~7431h)EVA比较控制寄存器(6个)
地
址寄
存
器名
称7411hCOMCONA比较控制寄存器7413hACTRA比较方式控制寄存器7415hDBTCONA死区时间控制寄存器7417hCMPR1比较寄存器17418hCMPR2比较寄存器27419hCMPR3比较寄存器38.1.2EV寄存器及地址EVA模块中的寄存器(起始地址是7400h~7431h)EVA捕获控制寄存器(8个)地
址寄
存
器名
称7420hCAPCONA捕获控制寄存器7422hCAPFIFOA捕获FIFO状态寄存器A7423hCAP1FIFO两级深度的捕获FIFO栈17424hCAP2FIFO两级深度的捕获FIFO栈27425hCAP3FIFO两级深度的捕获FIFO栈37427hCAP1FBOTFIFO栈的栈底寄存器,允许读最近捕获的值7428hCAP2FBOT7429hCAP3FBOT8.1.2EV寄存器及地址EVA模块中的寄存器(起始地址是7400h~7431h)EVA中断寄存器(6个)
地
址寄
存
器名
称742ChEVAIMRA中断屏蔽寄存器A742DhEVAIMRB中断屏蔽寄存器B742EhEVAIMRC中断屏蔽寄存器C742FhEVAIFRA中断标志寄存器A7430hEVAIFRB中断标志寄存器B7431hEVAIFRC中断标志寄存器C8.1.2EV寄存器及地址EVB模块中的寄存器(起始地址是7500h~7531h)EVB定时寄存器(9个)地
址寄
存
器名
称7500hGPTCONB定时器控制寄存器7501hT3CNT定时器3的计数寄存器定时器37502hT3CMPR定时器3的比较寄存器7503hT3PR定时器3的周期寄存器7504hT3CON定时器3的控制寄存器7505hT4CNT定时器4的计数寄存器定时器47506hT4CMPR定时器4的比较寄存器7507hT4PR定时器4的周期寄存器7508hT4CON定时器4的控制寄存器8.1.2EV寄存器及地址EVB模块中的寄存器(起始地址是7500h~7531h)EVB比较控制寄存器(6个)
地
址寄
存
器名
称7511hCOMCONB比较控制寄存器7513hACTRB比较方式控制寄存器7515hDBTCONB死区时间控制寄存器7517hCMPR4比较寄存器47518hCMPR5比较寄存器57519hCMPR6比较寄存器68.1.2EV寄存器及地址EVB模块中的寄存器(起始地址是7500h~7531h)EVB捕获控制寄存器(8个)
地
址寄
存
器名
称7520hCAPCONB捕获控制寄存器7522hCAPFIFOB捕获FIFO状态寄存器B7523hCAP4FIFO两级深度的捕获FIFO栈47524hCAP5FIFO两级深度的捕获FIFO栈57525hCAP6FIFO两级深度的捕获FIFO栈67527hCAP4FBOTFIFO栈的栈底寄存器,允许读最近捕获的值7528hCAP5FBOT7529hCAP6FBOT8.1.2EV寄存器及地址EVB模块中的寄存器(起始地址是7500h~7531h)EVB中断寄存器地址(6个)地
址寄
存
器名
称752ChEVBIMRA中断屏蔽寄存器A752DhEVBIMRB中断屏蔽寄存器B752EhEVBIMRC中断屏蔽寄存器C752FhEVBIFRA中断标志寄存器A7530hEVBIFRB中断标志寄存器B7531hEVBIFRC中断标志寄存器C8.1.3EV事件管理器中断捕获单元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内核级中断。8.1.3EV事件管理器中断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比较:计数值与比较寄存器的值匹配时;周期:计数值与周期寄存器的值。8.1.3EV中断请求和服务1)产生外设中断请求
当事件管理器模块产生一个中断时,则其相应的中断标志位置1。如果此时相应的中断未被屏蔽(使能),则外设中断扩展控制器(PIE)就产生了一个外设中断请求。2)加载优先级别较高的中断向量到PIVR
当中断请求被CPU接受时,和最高优先级相对应的那个中断向量被装载到PIVR中,在主中断服务程序(ISR)中可读取该中断向量。
注意:一旦发生中断,在中断服务程序中应通过向中断标志寄存器的相应位写1的方法来清除中断标志,否则,该中断以后将不再产生中断请求。8.1.3EV中断请求和服务3)中断响应过程(8.1.5EV中断响应过程)
(1)中断源产生中断条件当EV某些中断源产生中断条件,EVA、EVB的3的组中断标志寄存器EVxIFRA、EVxIFRB、EVxIFRC中相应位置1,并一直保持到中断服务程序中软件清0。(2)外设级中断使能通过对EV相应中断屏蔽寄存器EVxIMRA、EVxIMRB、EVxIMRC的相应位写1使能相应中断源,反之写0则禁止中断。(3)PIE产生内核级中断请求(INT2、3、4)当中断标志位和使能位都置1,PIE接收并记录所有中断请求,并根据优先级别产生内核级中断请求INTx。(4)CPU响应CPU接收中断请求,置IFR相应标志位为1,若相应中断使能且全局中断使能,则CPU识别中断并向PIE返回中断应答,同时控制PC跳转到相应的内核级中断向量,进入中断服务程序。8.1.3EV中断请求和服务3)中断响应过程(8.1.5EV中断响应过程)
(5)PIE响应
PIE管理器通过CPU返回的中断应答信号,清除外设中断请求寄存器PIRQRx中的相应位,并加载外设级中断向量到PIVR。然后PIE与当前中断软件并行工作,以便产生新的中断。(6)执行中断服务程序①主中断服务程序(GISR)保护处理,读取PIVR,控制PC跳转到相应外设中断向量,进入外设级中断服务子程序。②外设级中断服务子程序(SISR)完成特定任务,并在返回前通过向EVxIFRA、EVxIFRB、EVxIFRC中相应位写1,清除中断标志位,同时还要清0全局中断屏蔽位INTM。8.1.3EV中断寄存器1)EVA中断标志寄存器和屏蔽寄存器
(1)中断标志寄存器A(EVAIFRA)(742Fh)及屏蔽寄存器A(EVAIMRA)
(742Ch)15141312111098保留(只读,读为0)T1上溢T1下溢T1比较76543210T1周期保留(只读,读为0)比较单元3比较单元2比较单元1功率驱动保护
相应标志寄存器与屏蔽寄存器对应中断源相同,复位时,除功率驱动屏蔽位为1,其余都为0。标志寄存器:读操作:1,表示对应的中断发出申请;0,表示对应的中断没有申请。
写操作:写0无效,写1清除相应中断标志。屏蔽寄存器:写操作:1,使能相应中断;0,禁止相应中断。8.1.3EV中断寄存器1)EVA中断标志寄存器和屏蔽寄存器
(2)中断标志寄存器B(EVAIFRB)(7430h)及屏蔽寄存器B(EVAIMRB)
(742Dh)15~43210保留(只读,读为0)T2上溢T2下溢T2比较T2周期
相应标志寄存器与屏蔽寄存器对应中断源相同,复位时都为0。标志寄存器:读操作:1,表示对应的中断发出申请;0,表示对应的中断没有申请。
写操作:写0无效,写1清除相应中断标志。屏蔽寄存器:写操作:1,使能相应中断;0,禁止相应中断。8.1.3EV中断寄存器1)EVA中断标志寄存器和屏蔽寄存器
(2)中断标志寄存器C(EVAIFRC)(7431h)及屏蔽寄存器C(EVAIMRC)
(742Eh)15~3210保留(只读,读为0)捕获单元3捕获单元2捕获单元1
相应标志寄存器与屏蔽寄存器对应中断源相同,复位时都为0。标志寄存器:读操作:1,表示对应的中断发出申请;0,表示对应的中断没有申请。
写操作:写0无效,写1清除相应中断标志。屏蔽寄存器:写操作:1,使能相应中断;0,禁止相应中断。8.1.3EV中断寄存器1)EVB中断标志寄存器和屏蔽寄存器
(1)中断标志寄存器A(EVBIFRA)(752Fh)及屏蔽寄存器A(EVBIMRA)
(752Ch)15141312111098保留(只读,读为0)T3上溢T3下溢T3比较76543210T3周期保留(只读,读为0)比较单元6比较单元5比较单元4功率驱动保护
相应标志寄存器与屏蔽寄存器对应中断源相同,复位时,除功率驱动屏蔽位为1,其余都为0。标志寄存器:读操作:1,表示对应的中断发出申请;0,表示对应的中断没有申请。
写操作:写0无效,写1清除相应中断标志。屏蔽寄存器:写操作:1,使能相应中断;0,禁止相应中断。8.1.3EV中断寄存器1)EVB中断标志寄存器和屏蔽寄存器
(2)中断标志寄存器B(EVBIFRB)(7530h)及屏蔽寄存器B(EVBIMRB)
(752Dh)15~43210保留(只读,读为0)T4上溢T4下溢T4比较T4周期
相应标志寄存器与屏蔽寄存器对应中断源相同,复位时都为0。标志寄存器:读操作:1,表示对应的中断发出申请;0,表示对应的中断没有申请。
写操作:写0无效,写1清除相应中断标志。屏蔽寄存器:写操作:1,使能相应中断;0,禁止相应中断。8.1.3EV中断寄存器1)EVA中断标志寄存器和屏蔽寄存器
(2)中断标志寄存器C(EVBIFRC)(7531h)及屏蔽寄存器C(EVBIMRC)
(752Eh)15~3210保留(只读,读为0)捕获单元6捕获单元5捕获单元4
相应标志寄存器与屏蔽寄存器对应中断源相同,复位时都为0。标志寄存器:读操作:1,表示对应的中断发出申请;0,表示对应的中断没有申请。
写操作:写0无效,写1清除相应中断标志。屏蔽寄存器:写操作:1,使能相应中断;0,禁止相应中断。8.2通用定时器8.2.1计数器定时器的基本工作原理定时器是EV的核心模块。2407芯片内含有4个16位通用定时器,计数范围是0~65535(216-1)个脉冲。主要功能----为以下应用提供时基(1)控制系统中的采样时钟(2)正交编码QEP电路和捕捉单元时钟(3)比较单元和相应的PWM电路操作时钟(4)其他定时功能计数时钟脉冲:内部时钟经分配产生,或由外部引脚来提供。计数方向:增计数,减计数。4种工作方式:停止/保持,连续增计数模式,定向增/减计数模式,连续增减模式4种中断模式:下溢,上溢,比较,周期中断8.2.1通用定时器概述
4种中断模式:下溢,上溢,比较,周期中断1)下溢中断:计数器TxCNT计数回零时,产生下溢中断.2)上溢中断:计数器TxCNT计数到FFFF时,产生上溢中断.3)比较中断:计数器TxCNT计数值等于比较值时,产生比较匹配中断.4)周期中断:计数器TxCNT计数值等于周期值时,产生周期匹配中断
回零时的转换时间需延迟1个时钟.中断标志置位需延时2个时钟.
8.2.1通用定时器概述1)通用定时器结构(以T1为例)加/减计数寄存器双缓冲比较寄存器,用于存储与计数器进行比较的值双缓冲周期寄存器,当其值与计数器匹配时,根据计数模式定时器复位或开始递减计数。定时控制寄存器,决定定时器的模式全局通用定时器控制寄存器,控制定时器工作模式注意:T2可选T1周期寄存器,T4可选T3周期寄存器。T1PRT2PRMUXTnCON[0]T1CMPR比较逻辑波形发生器输出逻辑GPTCONAT1CNT控制逻辑T1CONADC启动CPU时钟预定标:1-1/128fcTDIRATCLKINA<1/4fc(外部时钟)中断标志T1PWMGP控制寄存器周期寄存器选择,GP2/GP4有效,用于同步方式0:选择自身的周期寄存器1:选择T1PR/T3PR忽略T2PR/T4PRT1PRT2PRMUXTnCON[0]T1CMPR比较逻辑波形发生器输出逻辑GPTCONAT1CNT控制逻辑T1CONADC启动CPU时钟预定标:1-1/128fcTDIRATCLKINA<1/4fc(外部时钟)中断标志T1PWMGP控制寄存器8.2.1通用定时器概述通用定时器结构可选择的内部或外部输入时钟
预定标计数分频器,可设置为对内部时钟或外部时钟进行分频计数
控制和中断逻辑用于4个可屏蔽的中断:上溢、下溢、定时器比较和周期可选择方向的输入引脚TDIRxTPWM/T1CMP输出引脚8.2.1通用定时器概述通用定时器的输入内部CPU时钟
外部时钟TCLKINA/B,最大频率是CPU时钟频率1/4
方向输入TDIRA/B引脚复位信号RESET正交编码脉冲电路可产生定时器的时钟和计数方向通用定时器的输出
通用定时器比较输出TxCMP(x=1,2,3,4)
到ADC模块的模数转换启动信号
比较逻辑和比较单元的下上溢、匹配和周期匹配信号计数方向指示位
8.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种计数模式之一,可选择时钟源,可使用定时器同步,可使能比较操作,可选择比较寄存器的重新加载条件。8.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时,输出强制高电平。GPTCONB
15141312~1110~98~7-T4STATT3STAT-T4TOADCT3TOADC65~43~21~0TCOMPOE-T4PINT3PIN8.2.1通用定时器概述GPT的周期寄存器具有双缓冲结构(带有一个映像寄存器),用于存放定时周期值,在一个周期中的任何时刻新的周期值可以写进映像寄存器中,仅当计数寄存器中的值为0时,映像寄存器中的值才重新加载到工作的周期寄存器中,可以改变下一个周期的定时周期。GPT的比较寄存器具有双缓冲结构(带有一个映像寄存器),用于存放比较值,在一个周期中的任何时刻新的比较值可以写进映像寄存器中,用于改变下一个周期的PWM脉冲宽度。当TxCON中所指定的定时器事件发生时,映像寄存器中的值可以加载到工作的比较寄存器中。可能加载的情况有:1)数据写入到映像寄存器后立即加载;2)下溢时,即计数寄存器为0时;3)周期匹配时,即计数寄存器的值等于周期寄存器的值时。8.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的启动之间实现同步。8.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的周期寄存器作为自己的周期寄存器使用(忽略自己的周期寄存器)通过定时器同步,可使一个定时器在另一个定时器启动之后延时一段时间再启动。8.2.4通用定时器计数操作(1)停止/保持模式(TxCON[.12.11]=00)
在该种模式下,通用定时器停止操作并保持当前状态,计数寄存器、比较输出和分频系数都保持不变。(2)连续增计数模式(TxCON[.12.11]=10)
----可用于定时,边沿触发、异步PWM波形。全局控制寄存器中的计数方向指示位为1,TDIRA/B引脚不起作用。
定时计数器TxCNT按照预定标时钟进行计数,并与周期寄存器(TxPR)进行比较,直到计数值与周期寄存器中数值匹配(相等)为止,在匹配之后的下一个输入时钟的上升沿复位计数器的数值为0,并重新开始下一个计数周期的计数操作。4种计数模式:8.2.4通用定时器计数操作通用定时器连续增计数模式的工作过程:
在该计数模式下,若外设中断没有被屏蔽,则一旦发生匹配就对相应的周期中断标志进行置位,并产生外设中断请求。如果该中断已经设置为用来启动ADC,则在中断标志被置位的同时,将启动一次ADC。
定时器的初始值可在0000h-FFFFh范围内选。当初始值大于周期寄存器数值时,定时器将计数到FFFFh,上溢中断标志位置位,计数值复位为0后再进入正常的操作;当初始值等于周期寄存器数值时,定时器将置位周期中断标志,计数器复位为0,并产生下溢中断标志进入正常操作。如果定时计数器的初始数值为0,定时时间为TxPR+1个定标的时钟输入周期。8.2.4通用定时器计数操作(3)定向增/减计数模式(TxCON[.12.11]=11)
适用于正交脉冲电路及外部事件控制
根据TDIRA/B引脚的输入进行连续加或减计数操作。当引脚TDIRA/B为高电平时,定时器将加计数一直到等于周期寄存器的数值,然后计数器复位为0,并继续进行加计数;当引脚TDIRA/B为低电平时,定时器将进行减计数操作,一直到0,然后定时器重新装载周期寄存器的数值,并继续进行减计数操作。8.2.4通用定时器计数操作初始值可以为0000h-FFFFh之间的任何值。当计数初始值大于周期寄存器的值时,如果引脚TDIRA/B为高电平,定时器复位到0,并继续加计数到周期寄存器的值;如果引脚TDIRA/B为低电平,则计数器减计数到周期寄存器的值后,再减计数到0,然后重新装入周期寄存器的值,并开始新的减计数操作。从引脚TDIRA/B的变化到计数方向变化之间的延迟是当前计数结束后的两个CPU时钟周期,即当前预定标的计数周期结束后的两个CPU周期。在该种计数模式下,无论是通过TCLKINA/B输入的外部时钟信号,还是来自内部的CPU时钟,都可作为该模式下的计数输入。
周期、下溢、上溢中断的标志位及中断和相关的事件都由各自的匹配产生,其产生方式与连续增计数模式相同。通用定时器定向增/减计数模式可用于正交编码脉冲电路,在这种情况下,正交编码脉冲电路为定时器2和4提供计数时钟和计数方向。
8.2.4通用定时器计数操作(4)连续增减计数模式(TxCON[.12.11]=01---适用于PWM输出
方向引脚TDIRA/B不起作用。计数方向的改变取决于计数寄存器的值:当计数值等于周期值后开始减计数,当计数值为0后开始增计数。初始计数方向与初始值有关。
该种模式的定时时间为2×(TxPR)个输入时钟周期。8.2.4通用定时器计数操作(4)连续增/减计数模式
该计数模式的计数初始值不同,第一个周期的计数方向和周期也不同。
当计数初始值在0和周期寄存器的值之间时,计数器将加计数到周期寄存器的值,然后进入正常计数操作;
当计数初始值等于周期寄存器的值时,计数器将减计数到0,然后开始正常的计数操作;
当计数初始值大于周期寄存器的值时,定时器将加计数到FFFFh,然后复位为0,开始正常的连续增/减计数操作。周期、下溢、上溢中断的标志位、以及中断和相关的事件都由各自的匹配产生,其产生方式与连续增计数模式下相同。
8.2.5通用定时器比较操作
每个通用定时器都有一个相关的比较寄存器TxCMPR和一个PWM输出引脚TxPWM。
当计数值与比较寄存器的值相等时,就会发生比较匹配。如果比较操作被使能(TxCON.1位被置1),当产生比较匹配时将发生下列事件:1)在匹配发生一个CPU时钟周期后,比较中断寄存器标志位被置位。如果比较中断标志位已通过设置GPTCONA/B寄存器中的相应位去启动ADC,则当比较中断标志位被置位的同时也将产生ADC的启动信号;2)在匹配发生一个CPU时钟周期后,根据GPTCONA/B寄存器相应位的配置情况,相关的PWM输出发生跳变;
3)如果比较中断未被屏蔽,则将产生一个外设中断请求。8.2.5通用定时器比较操作通用定时器的比较操作1)PWM输出跳变由一个非对称和对称的波形发生器和相应的输出逻辑控制,并且依赖于以下条件。(1)GPTCONA/B寄存器中相应位的定义;
(2)定时器所处的计数模式;
(3)在连续增/减计数模式下的计数方向。
2)非对称和对称波形发生器
根据通用定时器所处的计数模式,产生一个非对称和对称的PWM波形输出。
8.2.5通用定时器比较操作3)非对称波形的发生如果计数操作开始前输出为0,则保持不变直到比较匹配的发生,匹配时产生触发,输出发生跳变。如果在下一周期的新比较值不是0,则发生周期匹配的那个周期结束后输出复位为0。如果在一个周期开始时比较值为0,则在整个周期输出将是1;如果下一个周期的新比较值也是0,则输出将不复位为0,这意味着可以产生0~100%的脉冲宽度调节。
如果比较值大于周期寄存器的值,则整个周期输出为0。如果比较值等于周期寄存器的值,则输出为1将保持一个定标后的时钟输入周期。比较寄存器值的改变只影响PWM脉冲的单边,这是非对称PWM波形的特点。
工作于连续递增计数模式时,产生非对称波形。保持跳变复位新比较值非0周期开始比较值为0不复位跳变整个周期输出0跳变比周期更长的比较值8.2.5通用定时器比较操作4)对称波形发生
当通用定时器处于连续增/减计数模式时产生对称波形。
若计数开始前输出为0,则输出保持不变直到第一次比较匹配,输出发生跳变,然后输出保持不变直到第二次比较匹配,输出再次发生跳变直到周期结束。如果没有第二次匹配且下一个周期的新比较值不为0,则在周期结束后复位为0。
若比较值在周期开始时为0,则输出为1直到第二次比较匹配发生。如果比较值在周期的后半部为0,则输出将保持为1直到周期结束。在这种情况下,如果新比较值仍为0,输出将不会复位为0。
如果前半周期中的比较值大于或等于周期寄存器的值,则第一次跳变将不会发生,但是当后半周期发生匹配时,输出仍会跳变。这种输出错误的跳变经常是由于应用程序计算不正确引起的,它将在周期结束时被纠正。跳变跳变比较值为0保持保持跳变跳变保持保持跳变8.2.5通用定时器比较操作5)输出逻辑
输出逻辑可通过配置GPTCONA/B寄存器中的相应位来规定高有效、低有效、强制低或强制高。
当PWM的输出定义为高有效时,它的极性与相关的波形发生器的极性相同;当PWM的输出定义为低有效时,它的极性与相关波形发生器的极性相反;当通过GPTCONA/B寄存器中的控制位将PWM的输出定义为强制低或高时,PWM的输出立即变为0或1。
当出现下列任何一种情况时,所有的通用定时器PWM输出都置为高阻态:
(1)软件将GPTCONA/B[6]置为0;
(3)任何一个复位事件发生;
(4)软件将TxCON[1]置为0。
(2)PDPINTx引脚上的电平被拉低并且未被屏蔽;8.2.6通用定时器的PWM输出每个GPT有一路PWM输出。若GPT工作于连续增计数,输出非对称PWM波;若工作于连续增减计数方式,输出对称PWM波形。GPT输出PWM波形的初始化过程:(1)根据PWM波形的周期设置TxPR;(2)设置TxCON确定计数方式、时钟、使能比较操作;(3)根据PWM脉宽占空比设置TxCMPR.新的占空比需要新的比较值,比较寄存器的值根据脉宽的要求不断更新。
8.2.7通用定时器复位当任何复位事件发生时,产生以下复位操作。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=0x0177;/*GPT1的周期寄存器,fCPU=24MHz,
约1ms产生一次中断*/
*T1CNT=0x0000;/*计数器清零*/
*T1CON=0x164C;/*连续增计数模式,
预分频为64,定时器计时使能,
内部时钟,定时器1比较使能*/
asm("clrcINTM");/*开总中断*/}通用定时器应用假中断服务子程序:interruptvoidnothing()//哑中断子程序{return;}//定时器1中断子程序interruptvoidtimer1(){if(num==1000)
/*记中断次数1000次,产生1秒延时*/
{
num=0;show=~show;/*显示值取反*/
}elsenum++;
*T1CNT=0x0000;/*计数器清零*/*EVAIFRA=0xFFFF;/*清EVA中断标志*/return;}通用定时器应用主程序:voidmain(void){sys_ini();timer1_ini();for(;;){/*将欲显示值赋予io空间的0004地址*/port0004=show;}}通用定时器应用中断向量表程序:.global_c_int0,_nothing,_timer1.sect".vecs"reset:b_c_int0;复位向量int1:b_nothing;ADC,SPI,CAN,SCI,EVA,EVBint2:btimer1;EVA,EVBint3:b_nothing;EVA,EVBint4:b_nothing;EVA,EVBint5:b
_nothing;SPI,SCI,CANint6:b_nothing;ADC,EXINT。。。8.3比较单元
EVA模块:比较单元1、2和3,定时器1提供时基。
EVB模块:比较单元4、5和6,定时器3提供时基。
每个比较单元都有两个相关的PWM输出引脚,每个EV共有6个。
(1)比较单元输入和输出
输入:1)控制寄存器的控制信号;2)通用定时器1和3(T1CNT和T3CNT)及它们的下溢和周期匹配信号;3)复位信号。输出:比较匹配信号。如果比较操作使能,该匹配信号将置中断标志位,并使和比较单元相关的两个输出引脚发生跳变。8.3比较单元(2)比较操作模式--由比较控制寄存器(COMCONx)相关位决定
EV的GPT1(或GPT3)的计数值不断与比较寄存器的值进行比较,当发生匹配时,比较单元的两个引脚的输出电平按照方式控制寄存器ACTRA(或ACTRB)控制的位进行跳变。
匹配时,若比较被使能,则比较匹配中断标志位被置位,这时若中断没有被屏蔽,则会产生外设中断请求,且输出跳变的时序。中断请求的产生与通用定时器的比较操作相同。输出逻辑、死区单元及空间矢量PWM逻辑可改变比较单元的输出。(3)比较操作(4)比较单元操作的寄存器配置
EVAEVB设置T1PR设置T3PR设置ACTRA设置ACTRB初始化CMPRx初始化CMPRx设置COMCONA设置COMCONB设置T1CON设置T3CON步骤见右表。
8.3.3比较单元寄存器
若比较使能,则当比较匹配事件发生时,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输出强制高。15141312111098SVRDIRD2D1D0CMP12ACT1CMP12ACT0CMP11ACT1CMP11ACT076543210CMP10ACT1CMP10ACT0CMP9ACT1CMP9ACT0CMP8ACT1CMP8ACT0CMP7ACT1CMP7ACT08.3.3比较单元寄存器
若比较操作使能,在比较匹配发生后的1个CPU时钟EVxIFRA寄存器中的相应比较中断标志位置1;如果比较中断允许,则会产生一个比级中断请求。比较单元的复位复位时所有与比较单元相关的寄存器都复位为0;并且所有比较输出引脚都为高阻态。8.4脉宽调试PWM电路
在电动机控制中,采用基于DSP硬件的PWM发生电路可大大减小用户编程的工作量和CPU时间的开销。
每个EV都有3对0-16μs的可编程死区控制PWM波形输出的功能。
脉宽调制(PWM)的核心就是产生周期不变但脉宽可变的信号,这个定长的周期被称为PWM载波周期,其倒数被称为PWM载波频率。
不变的PWM载波周期由通用定时器的周期匹配实现,根据调制频率来设置通用定时器周期寄存器的值;
可变的PWM脉宽由通用定时器的比较匹配实现,根据已知的脉宽变化规律在每个周期内修改通用定时器比较寄存器的值,用于得到不同的脉宽。
8.4.1PWM信号8.4.2用EV产生PWM信号8.4PWM电路及PWM信号的产生
PWM波形发生器的特性1)具有16位的死区控制寄存器;
2)有从0到16μs的可编程死区发生器控制PWM输出对;3)最小的死区宽度为1个CPU时钟周期;
4)可根据需要改变PWM的载波频率;5)在每个PWM周期内可根据需要改变PWM脉冲的宽度;
6)具有外部可屏蔽的功率驱动保护中断;7)脉冲形成发生器电路用于可编程的对称、非对称以及4个空间矢量PWM波形产生;8)具有自动重装载的比较和周期寄存器使CPU的负担最小。通过设置死区控制寄存器可选择死区时间。8.4PWM电路及PWM信号的产生8.4.3与比较单元相关的PWM电路(空间矢量PWM波形产生)
对于每个事件管理器,都具有6路带有可编程的死区和输出极性控制的PWM输出。
可编程的死区单元和输出逻辑死区单元的组成输入:比较单元的非对称/对称波形发生器产生的PHx信号。输出:DTPHx、DTPHx_。输入时钟预分频器(x/1、x/2、x/4、x/8、x/16、x/32)3个4位减计数定时器1)死区单元的输入输出
当死区被禁止时,2个输出信号完全相同,且等于输入PHx;
EVA和EVB具有各自独立的可编程死区单元。可编程的死区单元和输出逻辑带有死区的PWM波形图如DBTCONA[11-8]是m,则当预定标因子DBTCONA[4-2]对应为x/p时,死区数值为(m×p)个TCPU。2)死区的产生
当死区使能时,这两个信号的转换边沿就会被死区间隔分开。死区间隔的大小由DBTCONA/B决定。可编程的死区单元和输出逻辑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保留位可编程的死区单元和输出逻辑5)输出逻辑
在比较发生匹配时,输出引脚PWM1-PWM12上的输出极性和方式是由输出逻辑电路决定的。
与每个比较单元相关的输出方式可分为低有效、高有效、强制低和强制高。
PWM输出极性和方式可通过ACTRA/B寄存器中相应的位来配置。当发生以下任一情况时,所有的PWM输出引脚都置成高阻态:(1)软件将COMCONA/B[9]清0;(2)当PDPINTA/B未被屏蔽时,由硬件将PDPINTA/B引脚上的电平拉低;(3)发生任何复位事件;8.4.4PWM波形产生举例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波形的占空比发生变化。非对称和对称PWM的产生(2)非对称PWM波形的产生
产生条件:1)将T1或T3设置为连续增计数模式;2)装载周期寄存器=PWM载波周期的数;3)COMCONA/B配置成使能比较操作,使能PWM输出引脚。4)如果死区使能,设置死区时间值(DBTCONA/B的11-8位);5)适当地配置比较方式寄存器ACRTA/B。
非对称和对称PWM的产生(3)对称PWM波形的产生
产生条件:1)将T1或T3的设置为连续增/减计数模式;2)装载周期寄存器=PWM载波周期的数;3)COMCONA/B配置成使能比较操作,使能PWM输出引脚。4)如果死区使能,设置死区时间值(DBTCONA/B的11-8位);5)适当地配置寄存器ACRTA/B。
对称PWM波形比非对称PWM波形的优越之处在于它存在有两个相同长度的非激活区(无效区),这两个区分别位于PWM波形的起始和结束处。非对称和对称PWM的产生*PWM输出的占空比计算
假设PWM的引脚输出为高电平有效,比较寄存器的值为TxCMPR,周期寄存器的值为TxPR,正常时有0<TxCMPR<TxPR,通用定时器的工作模式为连续增/减方式。波形的发生过程如下:1)计数器从0开始增计数,在未达到比较寄存器的值之前,引脚输出为无效的低电平。2)当计数值与比较寄存器的值相等时,产生第一次比较匹配事件,PWM引脚输出有效高电平。3)计数器继续增计数到周期值,发生周期匹配事件。计数器减计数操作,当再次与比较值相等时,发生第二次比较匹配事件,对应的PWM引脚输出低电平。之后,定时计数器继续减计数到0为止,产生一次下溢事件,完成一个周期。4)如果下一个周期比较寄存器的值仍然大于0且小于周期寄存器的值,则又重复以上步骤。非对称和对称PWM的产生由于在一个周期内会发生两次比较匹配事件,如果两次比较值相同,则会产生对称的PWM波形。如果两次比较匹配值不同,则会产生非对称的PWM波形。
由于连续增/减计数模式的脉冲周期为T=2×TxPR,而有效电平时间为t1=(TxPR-TxCMPRup)+(TxPR-TxCMPRdown)个计数脉冲,其中,TxCMPRup为第一次比较匹配值,TxCMPRdown为第二次比较匹配值,故PWM输出波形的占空比为
q=t1/T=(2×TxPR-TxCMPRup-TxCMPRdown)/(2×TxPR)在两次比较匹配值相等时(即TxCMPRup=TxCMPRdown时),PWM输出的占空比为
q=t1/T=(TxPR-TxCMPR)/TxPR当比较寄存器的值为0时,PWM输出波形的占空比为
q=t1/T=100%
当比较寄存器的值等于周期寄存器的值时(即TxPR=TxCMPR时),PWM输出波形的占空比为
q=t1/T=0%
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初始化子程序,主程序。EVA/B的PWM波形应用软件设计
.global_c_int0,_nothing.sect".vecs"reset:b_int0;复位向量int1:b_nothing
;ADC,SPI,CAN,SCI,EVA,EVBint2:b_nothing;EVA,EVBint3:b_nothing;EVA,EVBint4:b_nothing;EVA,EVBint5:b_nothing;SPI,SCI,CANint6:b_nothing;ADC,EXINT
中断向量表文件:此应用仅仅只是在引脚输出PWM波形,没有用到比较中断。EVA/B的PWM波形应用软件设计/****************文件预处理****************/#include"exp3_2408.h"/******************************************/
voidmain(){sys_ini();
//调用芯片初始化子程序pwm_ini();
//调用EVA比较单元产生PWM波形初始化子程序
/*启动定时器1*/*T1CON|=0x0040;for(;;){}}
主程序:系统初始化,启动功能模块工作,具体应用操作。空间向量PWM为三相功率变换器中六个功率晶体等设计的特殊开关电路三相功率反相换流器原理:aa_T1T2bb_VaVbVcT3T4T5T6c_cV0UT010110011100001101空间向量PWMabcVa0Vb0Vc0VabVbcVacT2T4T6000000000111001-1/3-1/32/30-11110010-1/32/3-1/3-110101011-2/31/31/3-1011001002/3-1/3-1/310-10
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度医院电梯安装及改造合同
- 2024年度成都美容院租赁合同
- 运马用拖车市场发展现状调查及供需格局分析预测报告
- 2024年度物流运输与定制合同
- 煤气火锅市场需求与消费特点分析
- 2024年度物业服务合同标的为写字楼管理
- 空气清洁装置市场发展现状调查及供需格局分析预测报告
- 活页夹市场需求与消费特点分析
- 装饰风铃市场发展现状调查及供需格局分析预测报告
- 炉用金属框架市场发展预测和趋势分析
- 2024年湖南广电国家广电集团招聘笔试冲刺题(带答案解析)
- 期货交易授权书
- 邮储高级练习卷三(第12章-第17章)附有答案
- 重庆市江北区2023-2024学年六年级下学期期末考试数学试题
- DB32-T 4757-2024 连栋塑料薄膜温室建造技术规范
- 2023年职业病监测评估培训考试卷(A卷)附有答案
- 地漏剖面节点构造讲解
- 古代戏剧与现代话剧的对比
- 2024-2029年中国儿童牙冠行业市场现状分析及竞争格局与投资发展研究报告
- 上海市徐汇、金山、虹口区2024届高三语文一模作文解析
- (高清版)JGT 486-2015 混凝土用复合掺合料
评论
0/150
提交评论