最近在参考HVMotorCtrl+PfcKit中的电机控制,在查看保护时有一处问题想不明白。通常有这样的保护配置
// CPU Halt Trip EPwm1Regs.TZSEL.bit.CBC6=0x1;
EPwm2Regs.TZSEL.bit.CBC6=0x1;
EPwm3Regs.TZSEL.bit.CBC6=0x1;
EPwm1Regs.TZSEL.bit.OSHT1 = 1; //enable TZ1 for OSHT
EPwm2Regs.TZSEL.bit.OSHT1 = 1; //enable TZ1 for OSHT EPwm3Regs.TZSEL.bit.OSHT1 = 1; //enable TZ1 for OSHT
其中TZ1用来作过流保护我可以理解,配置为One shot halt类型,可是TZ6是在做什么啊?我看配置里根本就没有设置TZ6使能,这里为什么都要配置为Cycle by Cycle的trip呢?
user4314463:
没有人知道吗?controlsuite中电机控制DMC的HVPM_Sensorless_2833x等等算法里都有这个初始化,而我看HVMotorCtrl+PFCKit的原理图并没有看出来对TZ6的物理连接和使用。
最近在参考HVMotorCtrl+PfcKit中的电机控制,在查看保护时有一处问题想不明白。通常有这样的保护配置
// CPU Halt Trip EPwm1Regs.TZSEL.bit.CBC6=0x1;
EPwm2Regs.TZSEL.bit.CBC6=0x1;
EPwm3Regs.TZSEL.bit.CBC6=0x1;
EPwm1Regs.TZSEL.bit.OSHT1 = 1; //enable TZ1 for OSHT
EPwm2Regs.TZSEL.bit.OSHT1 = 1; //enable TZ1 for OSHT EPwm3Regs.TZSEL.bit.OSHT1 = 1; //enable TZ1 for OSHT
其中TZ1用来作过流保护我可以理解,配置为One shot halt类型,可是TZ6是在做什么啊?我看配置里根本就没有设置TZ6使能,这里为什么都要配置为Cycle by Cycle的trip呢?
Eric Ma:
回复 user4314463:
TZ6 is sourced from the EMUSTOP output from the CPU.
是芯片内部的信号,当有EMUSTOP指令时产生。
Eric
最近在参考HVMotorCtrl+PfcKit中的电机控制,在查看保护时有一处问题想不明白。通常有这样的保护配置
// CPU Halt Trip EPwm1Regs.TZSEL.bit.CBC6=0x1;
EPwm2Regs.TZSEL.bit.CBC6=0x1;
EPwm3Regs.TZSEL.bit.CBC6=0x1;
EPwm1Regs.TZSEL.bit.OSHT1 = 1; //enable TZ1 for OSHT
EPwm2Regs.TZSEL.bit.OSHT1 = 1; //enable TZ1 for OSHT EPwm3Regs.TZSEL.bit.OSHT1 = 1; //enable TZ1 for OSHT
其中TZ1用来作过流保护我可以理解,配置为One shot halt类型,可是TZ6是在做什么啊?我看配置里根本就没有设置TZ6使能,这里为什么都要配置为Cycle by Cycle的trip呢?
HeiHei:
这个在数据手册寄存器的描述中有。具体大致是这个意思,当你用仿真器在线实时仿真运行时,TZ6可以将pwm封住。这样可以防止一些意外情况下烧坏你的板子
最近在参考HVMotorCtrl+PfcKit中的电机控制,在查看保护时有一处问题想不明白。通常有这样的保护配置
// CPU Halt Trip EPwm1Regs.TZSEL.bit.CBC6=0x1;
EPwm2Regs.TZSEL.bit.CBC6=0x1;
EPwm3Regs.TZSEL.bit.CBC6=0x1;
EPwm1Regs.TZSEL.bit.OSHT1 = 1; //enable TZ1 for OSHT
EPwm2Regs.TZSEL.bit.OSHT1 = 1; //enable TZ1 for OSHT EPwm3Regs.TZSEL.bit.OSHT1 = 1; //enable TZ1 for OSHT
其中TZ1用来作过流保护我可以理解,配置为One shot halt类型,可是TZ6是在做什么啊?我看配置里根本就没有设置TZ6使能,这里为什么都要配置为Cycle by Cycle的trip呢?
user4314463:
回复 Eric Ma:
那EMUSTOP指令会由于JTAG口断开产生吗?
最近在参考HVMotorCtrl+PfcKit中的电机控制,在查看保护时有一处问题想不明白。通常有这样的保护配置
// CPU Halt Trip EPwm1Regs.TZSEL.bit.CBC6=0x1;
EPwm2Regs.TZSEL.bit.CBC6=0x1;
EPwm3Regs.TZSEL.bit.CBC6=0x1;
EPwm1Regs.TZSEL.bit.OSHT1 = 1; //enable TZ1 for OSHT
EPwm2Regs.TZSEL.bit.OSHT1 = 1; //enable TZ1 for OSHT EPwm3Regs.TZSEL.bit.OSHT1 = 1; //enable TZ1 for OSHT
其中TZ1用来作过流保护我可以理解,配置为One shot halt类型,可是TZ6是在做什么啊?我看配置里根本就没有设置TZ6使能,这里为什么都要配置为Cycle by Cycle的trip呢?
Eric Ma:
回复 user4314463:
仿真器断开的话,不会产生这个EMUSTOP。
ERIC
最近在参考HVMotorCtrl+PfcKit中的电机控制,在查看保护时有一处问题想不明白。通常有这样的保护配置
// CPU Halt Trip EPwm1Regs.TZSEL.bit.CBC6=0x1;
EPwm2Regs.TZSEL.bit.CBC6=0x1;
EPwm3Regs.TZSEL.bit.CBC6=0x1;
EPwm1Regs.TZSEL.bit.OSHT1 = 1; //enable TZ1 for OSHT
EPwm2Regs.TZSEL.bit.OSHT1 = 1; //enable TZ1 for OSHT EPwm3Regs.TZSEL.bit.OSHT1 = 1; //enable TZ1 for OSHT
其中TZ1用来作过流保护我可以理解,配置为One shot halt类型,可是TZ6是在做什么啊?我看配置里根本就没有设置TZ6使能,这里为什么都要配置为Cycle by Cycle的trip呢?
user4314463:
回复 Eric Ma:
所以,那对于一般的,只使用JTAG口的仿真器做调试的DSP板,这个就没有用处了?这是专门设计给HVMotorCtrl+PfcKit_v2.1+controlCARDs这一套套件使用的?
最近在参考HVMotorCtrl+PfcKit中的电机控制,在查看保护时有一处问题想不明白。通常有这样的保护配置
// CPU Halt Trip EPwm1Regs.TZSEL.bit.CBC6=0x1;
EPwm2Regs.TZSEL.bit.CBC6=0x1;
EPwm3Regs.TZSEL.bit.CBC6=0x1;
EPwm1Regs.TZSEL.bit.OSHT1 = 1; //enable TZ1 for OSHT
EPwm2Regs.TZSEL.bit.OSHT1 = 1; //enable TZ1 for OSHT EPwm3Regs.TZSEL.bit.OSHT1 = 1; //enable TZ1 for OSHT
其中TZ1用来作过流保护我可以理解,配置为One shot halt类型,可是TZ6是在做什么啊?我看配置里根本就没有设置TZ6使能,这里为什么都要配置为Cycle by Cycle的trip呢?
Eric Ma:
回复 user4314463:
有用啊,只要用仿真器和CCS调试就有用。
ERIC
最近在参考HVMotorCtrl+PfcKit中的电机控制,在查看保护时有一处问题想不明白。通常有这样的保护配置
// CPU Halt Trip EPwm1Regs.TZSEL.bit.CBC6=0x1;
EPwm2Regs.TZSEL.bit.CBC6=0x1;
EPwm3Regs.TZSEL.bit.CBC6=0x1;
EPwm1Regs.TZSEL.bit.OSHT1 = 1; //enable TZ1 for OSHT
EPwm2Regs.TZSEL.bit.OSHT1 = 1; //enable TZ1 for OSHT EPwm3Regs.TZSEL.bit.OSHT1 = 1; //enable TZ1 for OSHT
其中TZ1用来作过流保护我可以理解,配置为One shot halt类型,可是TZ6是在做什么啊?我看配置里根本就没有设置TZ6使能,这里为什么都要配置为Cycle by Cycle的trip呢?
user4314463:
回复 Eric Ma:
从哪里可以查到这个EMUSTOP信号产生的条件呢?
最近在参考HVMotorCtrl+PfcKit中的电机控制,在查看保护时有一处问题想不明白。通常有这样的保护配置
// CPU Halt Trip EPwm1Regs.TZSEL.bit.CBC6=0x1;
EPwm2Regs.TZSEL.bit.CBC6=0x1;
EPwm3Regs.TZSEL.bit.CBC6=0x1;
EPwm1Regs.TZSEL.bit.OSHT1 = 1; //enable TZ1 for OSHT
EPwm2Regs.TZSEL.bit.OSHT1 = 1; //enable TZ1 for OSHT EPwm3Regs.TZSEL.bit.OSHT1 = 1; //enable TZ1 for OSHT
其中TZ1用来作过流保护我可以理解,配置为One shot halt类型,可是TZ6是在做什么啊?我看配置里根本就没有设置TZ6使能,这里为什么都要配置为Cycle by Cycle的trip呢?
Eric Ma:
回复 user4314463:
ESTOP就是仿真器设置暂停或是断点的时候产生。
ERIC
TI中文支持网