STC12C5A60S2单片机如何产生方波,并能通过电位计改变方波...
本人新手,求教STC12C5A60S2单片机如何产生方波,并能通过电位计改变方波频率,在网上好了好久也没有找到方法,都是PWM产生波形,可是PWM改变的是脉宽,我要改变的是频率,求教一段程序举例,和解释 谢谢各位大侠!!!!! 你改变定时器的周期不就行啦 改变PWM的周期就好。周期改变了,频率自然就变了。举一个简单的历程,这是一个产生PWM波的中断,系统晶振是11.0592M,定时器方式一。作用是产生周期为20ms,占空比为PWM/18349的PWM.void timer0() interrupt 1
{
switch(order1)
{
case 1:p0=1;
TH0=(65536-pwm)/256; //PWM可决定波形的脉宽
TL0=(65536-pwm)%256;
break;
case 2:p0=0;
TH0=(65536-18349+pwm)/256; //这个18349是根据所需的周期计算出来的。20000*(1/11.0592M)
TL0=(65536-18349+pwm)%256;
order1=0;
break;
default:order1=0;
break;
}
order1++;
}
改变上面的那个18349即可改变周期。至于电位器,可用AD采集电位器的数值,数学处理下,替换上面的那个18349就好。不同的值会产生不同的周期。 好 、改天试一下 、据说可以产生100HZ-100KHZ的PWM 不知道是怎么实现的 、俺新人
页:
[1]