求详细解释这个51单片机PWM波原理
初学者,求逐步详解.
#include
sbit LED = P1^0;
unsigned char CYCLE;
unsigned char PWM_ON ;
void delay(unsigned int cnt)
{
while(--cnt);
}
main()
{
bit Flag;
TMOD |=0x01;
TH0=(65536-100)/256;
TL0=(65536-100)%256;
IE= 0x82;
TR0=1;
CYCLE = 10;
while(!Flag)
{
delay(200000);
PWM_ON++;
if(PWM_ON == CYCLE)
{
Flag=1;
}
}
while(Flag)
{
delay(200000);
PWM_ON--;
if(PWM_ON == 0)
{
Flag=0;
}
}
}
void tim(void) interrupt 1 using 1
{
static unsigned char count;
TH0=(65536-100)/256;
TL0=(65536-100)%256;
if (count==PWM_ON)
{
LED = 1;
}
count++;
if(count == CYCLE)
{
count=0;
if(PWM_ON!=0)
LED = 0;
}
}
人气:149 ℃ 时间:2020-04-08 23:00:06
解答
这个程序每一条语句你肯定能看懂,给你加注释没有必要,给你讲讲PWM的原理,你再对照程序看就明白了你要用51产生PWM去控制LED,首先你要确定PWM的周期T和占空比D,确定了这些以后,你可以用定时器产生一个时间基准t,比如定...
推荐
- 李白描写大自然的诗
- 【要算术法不要方程``
- ln(1+e^x)/x,当x趋于正无穷大时的极限
- 若/a+3/+/2a-4/=0则a=___,b=____
- 已知函数f(x)=(4x+3)/(x^2+1),其定义域为R,求值域.
- 一个直角梯形,上底5厘米,下底8厘米,高10厘米,如果以它的下底为轴旋转一周得到一个立体图形,求这个立体
- 容积是10L的瓶子装满了煤油,已知煤油的密度是0.8×10^3/m^3,则瓶内煤油的质量是多少千克?
- 总面积400平方米,每平方米种白菜8棵,求每棵白菜占地多少平方米?
猜你喜欢