本帖最后由 ayb_ice 于 2011-11-1 08:34 编辑
程序本身没有问题,只要其它地方(中断)中不对pwm_base变量进行改写
可能只是调试的问题,只是假象
修改成下面这样再测试
unsigned char pwm_base = 0;
extern void _nop_(void);
while(1)
{
pwm_base++;
if(pwm_base<51) //当基值小于阈值时,pwm输出高电平,
{
pwm_out0=1;
}
if(pwm_base>=51)
{
pwm_out0=0; //否则,当基值大于或等于阈值时,输出pwm的低电平
}
_nop_(); // 此处设断点测试
}
|