您好!
我对中断生成有疑问。 我正在配置 ePWM 的数字比较子模块。 这里、TRIP 11被配置为 DCAEVT1来导致 ePWM6上的跳闸。
我的问题是、这个 DCAEVT1生成哪个中断?
我查看了 TZENT 寄存器、它说使用一次性(OST)会导致 ePWMx_TZINT PIE 中断。 同样、跳闸事件 DCAEVT1上发生的中断也是如此。
我编写了我的配置以及用户手册中有关 TZENT 的少量信息。
/********* 来自 TZENT 寄存器:******* /
BIT3 DCAEVT1 R/W 0h
数字比较输出 A 事件1中断使能
0:禁用
1:启用
复位类型:SYSRSn
Bit2 OST R/W 0h
触发区单次触发中断使能
0:禁用单次触发中断生成
1:启用中断生成
单次触发事件将导致 ePWMx_TZINT PIE 中断。
复位类型:SYSRSn
/********* 我的配置*** /
//将 ePWM 输出 A & B 配置为跳闸时变为低电平。 EPwm6Regs.TZCTL.bit.TZA= TZ_FORCE_LO; EPwm6Regs.TZCTL.bit.TSB= TZ_FORCE_LO; //将 DCA 配置为 TRIP11 EPwm6Regs.TZDCSEL.bit.DCAEVT1= TZ_DCBH_HI; EPwm6Regs.DCTRIPSEL.bit.DCAHCOMPSEL= 0xA;// Trip11 EPwm6Regs.DCAHTRIPSEL.bit.TRIPINPUT11= 0;//单次触发输入;非 ORed //将 DCA 配置为 DCAEVT1 EPwm6Regs.TZSEL.bit.DCAEVT1= 1;//启用 //将 DCA 路径配置为未过滤和异步 EPwm6Regs.DCACTL.bit.EVT1SRCSEL = DC_EVT1; EPwm6Regs.DCACTL.bit.EVT1FRCSYNCSEL = DC_EVT_异 步; //清除跳闸标志 EPwm6Regs.TZCLR.bit.DCAEVT1= 1;//写入1清除跳闸标志。 EPwm6Regs.TZCLR.bit.INT= 1; //启用 DCB 中断 EPwm6Regs.TZEINT.BIT.DCAEVT1 = 1;
感谢你的帮助。
谢谢
Sagar