This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

关于28034的trip zone 的配置问题

Other Parts Discussed in Thread: C2000WARE

新人求助!

当TZ事件触发时   将三路pwm都锁死

但是现在的情况是 :   初始化完成后 epwm1开始输出 epwm2和3没有输出了 如果不初始化 则会有输出....

  • 请问你的初始化是上电初始化吗?
    有没有看过初始化之后对应标志位的状态?
    可以参考一下TI例程:C:\ti\c2000\C2000Ware_2_00_00_02\device_support\f2803x\examples\c28\epwm_trip_zone
  • 您好 !
    感谢您的指导!我是上电初始化 我的初始化函数如下
    EPwm1Regs.TZSEL.bit.OSHT2 = 1;
    EPwm1Regs.TZSEL.bit.OSHT3 = 1;
    EPwm1Regs.TZCTL.bit.TZA = 0x02;
    EPwm1Regs.TZCTL.bit.TZB = 0x02;
    一共有三组,epwm1、 2 、3
    当我Epwm1开始打驱动时 Epwm2和3就没驱动打出来了 并且Epwm1打驱动时都会把TZ的那些标志位清除
    {EALLOW; \
    EPwm1Regs.TZSEL.all = 0x0; \
    EPwm1Regs.TZCLR.all = 0x0007;\
    EPwm1Regs.TZFRC.all = 0x0;\
    GpioCtrlRegs.GPAMUX1.bit.GPIO0 = 0x01;\
    GpioCtrlRegs.GPAMUX1.bit.GPIO1 = 0x01;\
    EDIS;}
    请问其中有什么问题吗???
  • 不好意思我再问一下,问题里面你说的是“初始化完成后 epwm1开始输出 epwm2和3没有输出了 如果不初始化 则会有输出”?
    理论上你使用的是TZ模块one shot模式,就是一旦触发,必须通过TZCLR寄存器的OST位才可以清除,但是前提是TZ管脚的触发事件消失。
    你看一下你对应的寄存器位有没有清除,另外你的触发事件是不是还存在?
  • 您好! 问题已经找到了! 您说的没错,是使用的one shot模式, 在epwm1输出时触发了一次TZ事件 ,之前没用示波器仔细看都没发现 ,今天才找到问题。。。非常感谢您的帮助!!