呵呵,我上面只是打了个比方,结果越说越糊涂,反把大侠们都给误导了.抱歉先!
首先:我上面有说过的,是一个类似于调光,但并不是调光,PWM是用来作其它用. 这么问吧: 现在外部晶振是3.6864MHz,我用了T2(现在也只有T2可用了),定时周期为1.5ms(667Hz),采用的是32级分频,TCNT2值为83,OCR2从255开始,每次T2溢出时减1,当OCR2值减到84时结束PWM输出,整个PWM输出时间为256ms,这个做法我们改了一路输出,用示波器也多次、多种工作状况下都观察测试了,效果不错。 因为硬件电路已经定型了,原来的输出方式是:一检测到输入就输出低电平(稳态时为高),但根据实际情况看,这样对后面的硬件电路可靠性有一定的影响,现在老板就是想在不动硬件的基础上,将每一路输出时都加一个256ms的PWM延时,关键是这些输入可能不是同时,也可能是同时,还可能是其中一路输出一定时间后再输入,这样,我想保证每一路输入动作时,对应的输出就是256ms的PWM波。 T0、T1的捕捉、匹配中断都早用作其它的了,又不好动。所以犯难啊!
|