新人求助!
当TZ事件触发时 将三路pwm都锁死
但是现在的情况是 : 初始化完成后 epwm1开始输出 epwm2和3没有输出了 如果不初始化 则会有输出….
Green Deng:请问你的初始化是上电初始化吗?
有没有看过初始化之后对应标志位的状态?
可以参考一下TI例程:C:\ti\c2000\C2000Ware_2_00_00_02\device_support\f2803x\examples\c28\epwm_trip_zone
新人求助!
当TZ事件触发时 将三路pwm都锁死
但是现在的情况是 : 初始化完成后 epwm1开始输出 epwm2和3没有输出了 如果不初始化 则会有输出….
user5888699:
回复 Green Deng:
您好 !
感谢您的指导!我是上电初始化我的初始化函数如下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;}
请问其中有什么问题吗???
新人求助!
当TZ事件触发时 将三路pwm都锁死
但是现在的情况是 : 初始化完成后 epwm1开始输出 epwm2和3没有输出了 如果不初始化 则会有输出….
Green Deng:
回复 user5888699:
不好意思我再问一下,问题里面你说的是“初始化完成后 epwm1开始输出 epwm2和3没有输出了 如果不初始化 则会有输出”?
理论上你使用的是TZ模块one shot模式,就是一旦触发,必须通过TZCLR寄存器的OST位才可以清除,但是前提是TZ管脚的触发事件消失。
你看一下你对应的寄存器位有没有清除,另外你的触发事件是不是还存在?
新人求助!
当TZ事件触发时 将三路pwm都锁死
但是现在的情况是 : 初始化完成后 epwm1开始输出 epwm2和3没有输出了 如果不初始化 则会有输出….
user5888699:
回复 Green Deng:
您好! 问题已经找到了! 您说的没错,是使用的one shot模式, 在epwm1输出时触发了一次TZ事件 ,之前没用示波器仔细看都没发现 ,今天才找到问题。。。非常感谢您的帮助!!