问题是可控硅导通时,和实际交流过零时一样,都会产生一个低电平中断信号。上电时,可控硅没有任何输出,会产生100Hz的中断信号。当可控硅没有输出时,当软件检测到过零信号,这个过零信号是准确的。此时,比如你要输出50%,则延时5ms后开启可控硅,一旦开启可控硅,则只要可控硅导通,会一直产生低电平的中断信号,而这个信号并非实际的过零信号。所以,你的软件要重新设计,触发可控硅,要脉冲触发,不需要很宽的脉冲,触发可控硅后,要一直等到中断信号变高,才表明进入了下一个交流半波的开始。你只有理解了可控硅导通、交流过零和中断电平的关系,才可以处理好软件。不知道你的中断信号极性是什么,也许要上升沿中断才更好的满足这个电路的要求。
|