51单片机脉冲宽度调制(PWM)控制LED灯亮度.docVIP

  • 55
  • 0
  • 约1.08千字
  • 约 2页
  • 2019-07-02 发布于河北
  • 举报

51单片机脉冲宽度调制(PWM)控制LED灯亮度.doc

51单片机脉冲宽度调制(PWM)控制LED灯亮度

51单片机脉冲宽度调制(PWM)控制LED灯亮度 作者:????来源:本站原创????点击数: 576???更新时间:2009年06月28日???   /*介绍一个51系列单片机采用脉冲宽度调制(PWM)方式控制LED灯亮度的一个程序,大家都知道,51单片机本身是没有pwm接口的,这个程序是通过软件模拟pwm.在一定的频率的方波中,调整高电平和低电平的占空比,即可实现LED灯亮度控制。程序出自:单片机网 HYPERLINK ,如有问题可在论坛提出,程序中使用定时器0产生2.5ms周期脉冲,使用占空比控制变量scale控制占空比,在低电平期间使LED灯亮,在高电平期间使LED灯灭,改变scale就改变了高电平与低电平的时间,因此也就控制了LED灯的亮度。*/ #include AT89X51.H //模拟PWM输出控制灯的10个亮度级 unsigned int scale; //占空比控制变量 void main(void) // 主程序 { unsigned int n; //延时循环变量 TMOD=0x02; //定时器0,工作模式2(0000,0010),8位定时模式 TH0=0x06; //写入预置初值6到定时器0,使250微秒溢出一次(12MHz) TL0=0x06; //写入预置值 TR0=1; //启动定时器 ET0=1; //允许定时器0中断 EA

文档评论(0)

1亿VIP精品文档

相关文档