TI中文支持网
TI专业的中文技术问题搜集分享网站

关于28035中 TZ保护功能

我做了一个AC-DC模块,移相全桥拓扑,频率10KHZ,输入电压AC-380V,输出DC 300 – 750V,变压器10:10:10,一个初级两路次级,两路次级串联;

当输出电压超过730V时,总会触发TZ1中断; (我将TZ1(GPIO12)作为过流保护输入脚,当电流超过一定值时TZ1会被拉低,锁定PWM输出为低电平,

功能可以实现),  我将TZ1的输入信号断开(将电流环开路,电压闭环),仍然会有TZ1中断;

请教:

1.    TZ1的触发源都已经断开了,为什么还会触发中断呢?

2.    TZ1是否还有其它的触发源?

配置如下:

/*TZ1 GPIO12 config*/

EALLOW;

GpioCtrlRegs.GPAPUD.bit.GPIO12 = 0; // Enable pull-up on GPIO12 (TZ1)

GpioCtrlRegs.GPAQSEL1.bit.GPIO12 = 3; // Asynch input GPIO12 (TZ1)

GpioCtrlRegs.GPAMUX1.bit.GPIO12 = 1; // Configure GPIO12 as TZ1

EDIS;

/*TZ1 function config*/

EALLOW;
PieVectTable.EPWM1_TZINT = &epwm1_tzint_isr;
EDIS;
EALLOW;
EPwm1Regs.TZSEL.bit.OSHT1 = 1;
EPwm1Regs.TZCTL.bit.TZA = 2;
EPwm1Regs.TZCTL.bit.TZB = 2;

EPwm2Regs.TZSEL.bit.OSHT1 = 1;
EPwm2Regs.TZCTL.bit.TZA = 2;
EPwm2Regs.TZCTL.bit.TZB = 2;

EPwm1Regs.TZEINT.bit.OST = 1;
EDIS;
IER |= M_INT2;
PieCtrlRegs.PIEIER2.bit.INTx1 = 1;
PieCtrlRegs.PIEIER2.bit.INTx2 = 1;

__interrupt void epwm1_tzint_isr(void)
{

// Acknowledge this interrupt to receive more interrupts from group 2
if(State == _DC_DC_run_)
{
GpioDataRegs.GPADAT.bit.GPIO13 = 0;
EPwm2Regs.TBPHS.half.TBPHS = 0;
Err.bit.Current_hardware_err = 1;
}
PieCtrlRegs.PIEACK.all = PIEACK_GROUP2;
}

Brian Wang0:

您选择的是单次触发模式,标志位是不会自动清零的

我做了一个AC-DC模块,移相全桥拓扑,频率10KHZ,输入电压AC-380V,输出DC 300 – 750V,变压器10:10:10,一个初级两路次级,两路次级串联;

当输出电压超过730V时,总会触发TZ1中断; (我将TZ1(GPIO12)作为过流保护输入脚,当电流超过一定值时TZ1会被拉低,锁定PWM输出为低电平,

功能可以实现),  我将TZ1的输入信号断开(将电流环开路,电压闭环),仍然会有TZ1中断;

请教:

1.    TZ1的触发源都已经断开了,为什么还会触发中断呢?

2.    TZ1是否还有其它的触发源?

配置如下:

/*TZ1 GPIO12 config*/

EALLOW;

GpioCtrlRegs.GPAPUD.bit.GPIO12 = 0; // Enable pull-up on GPIO12 (TZ1)

GpioCtrlRegs.GPAQSEL1.bit.GPIO12 = 3; // Asynch input GPIO12 (TZ1)

GpioCtrlRegs.GPAMUX1.bit.GPIO12 = 1; // Configure GPIO12 as TZ1

EDIS;

/*TZ1 function config*/

EALLOW;
PieVectTable.EPWM1_TZINT = &epwm1_tzint_isr;
EDIS;
EALLOW;
EPwm1Regs.TZSEL.bit.OSHT1 = 1;
EPwm1Regs.TZCTL.bit.TZA = 2;
EPwm1Regs.TZCTL.bit.TZB = 2;

EPwm2Regs.TZSEL.bit.OSHT1 = 1;
EPwm2Regs.TZCTL.bit.TZA = 2;
EPwm2Regs.TZCTL.bit.TZB = 2;

EPwm1Regs.TZEINT.bit.OST = 1;
EDIS;
IER |= M_INT2;
PieCtrlRegs.PIEIER2.bit.INTx1 = 1;
PieCtrlRegs.PIEIER2.bit.INTx2 = 1;

__interrupt void epwm1_tzint_isr(void)
{

// Acknowledge this interrupt to receive more interrupts from group 2
if(State == _DC_DC_run_)
{
GpioDataRegs.GPADAT.bit.GPIO13 = 0;
EPwm2Regs.TBPHS.half.TBPHS = 0;
Err.bit.Current_hardware_err = 1;
}
PieCtrlRegs.PIEACK.all = PIEACK_GROUP2;
}

Seven Han:

The trip-zone signals TZ1 to TZ6 (also collectively referred to as TZn) are active low input signals. Whenone of these signals goes low, or when a DCAEVT1/2 or DCBEVT1/2 force happens based on theTZDCSEL register event selection, it indicates that a trip event has occurred.

 ePWM 用户手册2.7.3   http://focus.ti.com/general/docs/lit/getliterature.tsp?literatureNumber=spruge9e&fileType=pdf

赞(0)
未经允许不得转载:TI中文支持网 » 关于28035中 TZ保护功能
分享到: 更多 (0)