51单片机如何同时输出多个占空比可调的pwm信号?

比如说,同时控制2个风扇,转速不同(按一定规律变化)
实际上我们需要9路pwm

启用一个定时器,(CTC0或CTC1)用来脉冲的频率
用一个按键动态调整定时器的时间常数,(TH0,TL0),就可以输出不同的占空比.
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-03-10
每个通道的占空比都是可调的.
第2个回答  2013-03-10
正好两个定时器呢么 将其重装值 不断变化就好了啊

不是就两个风扇么

51单片机一个io口输出不同的4个不同的pwm
1、首先要明白PWM的含义,PWM就是输出不同占空比的脉冲,2、普通51单片机IO口输出PWM的话,可以用定时器去计时,比如要输出100HZ的占空比50%的PWM。可以配置1ms的定时器中断,在中断中计数,一个中断就是1ms,100HZ的脉冲,周期是10ms,50%的占空比,可以计数到5的时候把Io口取反;程序如下 void mai...

51单片机怎样输出频率F=0.2-50HZ,占空比D=1-100%可调的PWM波形
利用定时器。uint PwmCnt = 0;sbit PWN_OUT = P1^1;\/\/可改动uint PwmD = 50;\/\/占空比 可调uint PwmF = 500;\/\/频率 可调 10 = 1HZ 500 =50HZuint PwmCnt = 0;\/\/占空比计数值uint FreCnt = 0;\/\/频率分频值void T0 interrupt 1{ ...\/\/赋值TO计数值 50us if(++...

51单片机咋样产生占空比,频率可变的PWM波
51的话 直接修改定时中断的定时时间就可以改变频率,修改高电平的定时时间,就能改变 占空比。- ARM的话--直接修改匹配0的值 就能改变PWM频率(MR0),修改其他匹配就能改变占空比,毕竟在ARM单边极性匹配中断时候,第一次复位时候,总是以高电平起始,会自动拉高!希望回答能给你点帮助,不过你问的问题...

51单片机如何用一个定时器产生20KHZ占空比可调的PWM波
20kHz周期是50us,可以把某个端口赋高电平延时Xus,然后赋低(50-X)us,占空比就是(x\/50)

89C51怎样产生两个可调占空比的矩形波
如果单片机的基本电路编程语法不懂的话,就从一本有关单片机的教程开始学习。但如果是不知道PWM如何产生的话,就简单了:1.7KHZ,占空比0.5,也即是588.2us一个周期,则294.1us产生一个高低电平状态变化。如果这个输出频率不是要求特别严格的话,以12MHz晶振为例,一个指令周期为1us,通过设计定时...

怎样产生12路占空比和频率可调的PWM信号
求他们的最大公约数,然后每次查询各个有没有到时间,例如,你要输入占空比分别是1,2,3,4,5,6,7,8,9,10,11,12ms 的波,那么你设置12个存储空间,就是第隔一毫秒,向每个存储空间加一,第一个每加到1,转,第二个每加到2.转,第十二个,判断是否到十二,到了转,就实现了12路了...

用51单片机同时实现四路PWM波,(C语言)
然后按照时间去匹配修改。当然,51单片机那精度就不说了,不太确信可以达标,一个定时器进中断了,另一个就要停一下。。BTW,个人感觉51的单片机没有很好的pwm模块,这样写了Pwm程序,别的就干不了了。建议用用带epwm模块的mcu,直接调用epwm和epwm中断,节省cpu资源,可以多写很多程序。

用51单片机怎么产生占空比可调的pwm波 我在网上搜的有不少但频率不高...
如果你要的话我可以晚上给你写一个。你调节是通过按键增加减少还是通过旋钮改变,如果是旋钮改变的我有现成的,只要改下平率即可。如果是按键的,给我一个晚上的时间。

51单片机输出PWM的最高频率和占空比
51所能输出的PWM的最大频率 是由单片机的时钟周期决定的,25Hz以上肉眼就基本看不出来了 占空比是可以0%~100%调整的,这个是由程序决定 include <REGX52.H> define uchar unsigned char define uint unsigned int sbit PWM_OUT=P3^0; \/\/PWM输出 void DelayMS(uint ms){ uchar i,j;for(j=ms;...

怎么用51单片机来实现pwm调节占空比
可以用两级中断来实现,该方法可实现精确占空比与频率的调整。。。大致思想是:1.在定时器T0中开定时器T1,并使pwm=1,2.在定时器T1中关掉T1,即TR1=0;并使pwm=0;注:t0控制频率(周期),t1控制占空比(高电平时间),你只要装载相应的定时器初值即可。很实用的哦 ...

相似回答