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

单步运行不能调出PWM波为什么,

InitSysCtrl();
InitGpio();
DINT;
IER=0x0000;
IFR=0X0000;
InitPieVectTable();
InitPieCtrl();
ERTM;
EPwmSetup();
//DELAY_US(1000);
for(;;);

占空比给的是0.5,当我直接运行的时候会出现PWM波形,但是当我单步运行的时候确出不来PWM波形,以为是时间原因,后面加入延时函数之后也没有用。

user4599811:已经知道了,PWM会计数,当单步的时候计数寄存器停掉了。

InitSysCtrl();
InitGpio();
DINT;
IER=0x0000;
IFR=0X0000;
InitPieVectTable();
InitPieCtrl();
ERTM;
EPwmSetup();
//DELAY_US(1000);
for(;;);

占空比给的是0.5,当我直接运行的时候会出现PWM波形,但是当我单步运行的时候确出不来PWM波形,以为是时间原因,后面加入延时函数之后也没有用。

user450161651:PWM是计时器不听的计数发出的信号,单步的时间就是计数-关掉-计数-关掉…….的循环

InitSysCtrl();
InitGpio();
DINT;
IER=0x0000;
IFR=0X0000;
InitPieVectTable();
InitPieCtrl();
ERTM;
EPwmSetup();
//DELAY_US(1000);
for(;;);

占空比给的是0.5,当我直接运行的时候会出现PWM波形,但是当我单步运行的时候确出不来PWM波形,以为是时间原因,后面加入延时函数之后也没有用。

mangui zhang:

回复 user4599811:

嗯。可能受程序里面的其他寄存器了。不然PWM可以不依靠CPU直接运行

InitSysCtrl();
InitGpio();
DINT;
IER=0x0000;
IFR=0X0000;
InitPieVectTable();
InitPieCtrl();
ERTM;
EPwmSetup();
//DELAY_US(1000);
for(;;);

占空比给的是0.5,当我直接运行的时候会出现PWM波形,但是当我单步运行的时候确出不来PWM波形,以为是时间原因,后面加入延时函数之后也没有用。

Susan Yang:

回复 user4599811:

谢谢分享答案!您可以看一下单步调试执行完后PWM的counter是否在增加

赞(0)
未经允许不得转载:TI中文支持网 » 单步运行不能调出PWM波为什么,
分享到: 更多 (0)