单片机pwm控制led亮度程序

通过调节一个频率的占空比就可以控制一个输出电流中的大小了,一般用于对LED电机转速的调节,灯光暗淡的调节等。

#include<reg52.h>

#define uint unsigned int

#define uchar unsigned char

sbit LED=P0^0;

uchar num,MCE;

uchar flag=1;  //控制灯由暗到亮!

void delayms(uint z)  //延时1ms

{

uint x,y;

for(x=z;x>0;x--)

  for(y=110;y>0;y--);

}

void main()

{

TMOD=0x02;

TH0=0x47;

TL0=0x47;

ET0=1;

TR0=1;

EA=1;

while(1)

{

  delayms(100);

  if(flag==1)

  {

   MCE++;

  }

  if(flag==0)

  {

   MCE--;

  }  

  if(MCE>=10)

  flag=0;

  if(MCE==0)

  flag=1;

}

}

void Timer0() interrupt 1

{

num++;

if(num==10)

{

  num=0;

  LED=0;

}

if(num==MCE)

{

  LED=1;

}

}

  • UC3846控制芯片工作原理控制图 逆变焊机原理与用途
  • 数字万用表电阻档测试二极管正反向没有阻值(使用万用表测量二极管的正向电阻,为什么各档)
  • 学单片机需要学数电模电吗(学单片机要先学数电模电吗)
  • 电工怎么选择适合自己用的万用表(电工初学者买什么样的万用表好)
  • 单片机需要同时运行多个任务怎么办(单片机怎么同时执行多个任务)
  • 电机保护的方案取决于负载的机械特性
  • 绝缘电阻表正负搭接不复零位是怎么回事
  • 短路怎么用万用表查