×
单片机 > 单片机程序设计 > 详情

按键PWM控制led亮度单片机源程序

发布时间:2020-05-27 发布时间:
|

单片机源程序如下:

//程序名:单片机实验仪配套程序--pwm控制led亮度

//电路简介:1、P0接J1的led共阳端;

//          2、P2.6接J14单键键盘的6,作为增加亮度按钮

//          3、P2.7接J14单键键盘的7,作为减小亮度按钮

//saxmcu  20080518  


#include


#define out P0

sbit INC=P2^6;     //SW1

sbit DEC=P2^7;     //sw2

//-----------------------------------------------------------------

void Init(void)

{        

        //定时器设置

        TMOD=0x22;  //T1=T0=定时方式2自动重装

        TH1=0;     //脉宽宽度

        TL1=80;

        TH0=55;      //频率调节=0频率最低

        TL0=0;   

      TR0=1;        //先启动T0定时

        ET1=1;

        ET0=1;   

        EA=1;       //总中断开

}

//定时器0中断

//频率********************************************

void Timer0(void) interrupt 1

{

        out=0xff;      //关led

        TL0=0;

        TR1=1;         //打开脉宽定时

}

//定时器1中断

//脉宽********************************************

void Timer1(void) interrupt 3

{

        out=~out;      //开led

        TR1=0;         //脉宽调节结束

}    

//消抖延时

delay()

{

  unsigned int i;

  for(i=0;i<2000;i++);

}

//**********************************

main()

{

    Init();

    while(1)

     {

       INC=1;DEC=1;

       if (INC==0)

          {delay();

           if (INC==0)  

               {

                if (TH1<200) TH1++;

               }

          }

       else if (DEC==0)

          {delay();

           if (DEC==0)  

               {

                if (TH1>0) TH1--;

               }

          }

     }

    


关键字:按键  PWM控制  led亮度  单片机 

『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
AVR熔丝位操作时的要点和需要注意的相关事项