大家好!
我尝试用AQCSFRC和AQSFRC在开启中断前将ePWMA和ePWMB同时置低。但是好像并没有起作用,只能一个高一个低。请问下除了下面那些,还需要进行别的配置吗?谢谢
AQCSFRC:
EPwm1Regs.AQCSFRC.bit.CSFA = 0x01;
EPwm1Regs.AQCSFRC.bit.CSFB = 0x01;
EPwm2Regs.AQCSFRC.bit.CSFA = 0x01;
EPwm2Regs.AQCSFRC.bit.CSFB = 0x01;
EPwm3Regs.AQCSFRC.bit.CSFA = 0x01;
EPwm3Regs.AQCSFRC.bit.CSFB = 0x01;
AQSFRC:
EPwm1Regs.AQSFRC.all = 0xED;
EPwm2Regs.AQSFRC.all = 0xED;
EPwm3Regs.AQSFRC.all = 0xED;
Susan Yang:“我尝试用AQCSFRC和AQSFRC在开启中断前将ePWMA和ePWMB同时置低”
请问具体是哪个中断?
能否给出相关的详细代码?
AQSFRC (软件强制控制寄存器)设置AQCSFRC重载方式(RLDCSF),通过(OTSFB、ACTSFB)设置EPWMB、(OTSFA、ACTSFA)设置EPWMA启动一次强制置位无效、置零、置高、反向,当OTSFB、OTSFA被写1时,动作一次,写0无效,无影子寄存器
AQCSFRC (软件连续强制控制寄存器)可以强制EPWMA、EPWMB的输出为low或high或AQCSFRC不起作用,有影子寄存器,当寄存期被加载后的第二个时钟开始作用,如TBCLK=0时加载,TBCLK=1时开始起作用
大家好!
我尝试用AQCSFRC和AQSFRC在开启中断前将ePWMA和ePWMB同时置低。但是好像并没有起作用,只能一个高一个低。请问下除了下面那些,还需要进行别的配置吗?谢谢
AQCSFRC:
EPwm1Regs.AQCSFRC.bit.CSFA = 0x01;
EPwm1Regs.AQCSFRC.bit.CSFB = 0x01;
EPwm2Regs.AQCSFRC.bit.CSFA = 0x01;
EPwm2Regs.AQCSFRC.bit.CSFB = 0x01;
EPwm3Regs.AQCSFRC.bit.CSFA = 0x01;
EPwm3Regs.AQCSFRC.bit.CSFB = 0x01;
AQSFRC:
EPwm1Regs.AQSFRC.all = 0xED;
EPwm2Regs.AQSFRC.all = 0xED;
EPwm3Regs.AQSFRC.all = 0xED;
Keting:
回复 Susan Yang:
找到原因了,因为死区设置,B是A反向得到的,所以必然是一高一低的结果,修改死区输出之后就解决了
大家好!
我尝试用AQCSFRC和AQSFRC在开启中断前将ePWMA和ePWMB同时置低。但是好像并没有起作用,只能一个高一个低。请问下除了下面那些,还需要进行别的配置吗?谢谢
AQCSFRC:
EPwm1Regs.AQCSFRC.bit.CSFA = 0x01;
EPwm1Regs.AQCSFRC.bit.CSFB = 0x01;
EPwm2Regs.AQCSFRC.bit.CSFA = 0x01;
EPwm2Regs.AQCSFRC.bit.CSFB = 0x01;
EPwm3Regs.AQCSFRC.bit.CSFA = 0x01;
EPwm3Regs.AQCSFRC.bit.CSFB = 0x01;
AQSFRC:
EPwm1Regs.AQSFRC.all = 0xED;
EPwm2Regs.AQSFRC.all = 0xED;
EPwm3Regs.AQSFRC.all = 0xED;
Susan Yang:
回复 Keting:
很高兴您能解决问题!