• 赞助网站
  • 您的位置:  首页 >> 技术交流区 >> MCU技术 >> 单灯PWM调光,自编测试程序
    单灯PWM调光,自编测试程序
    2015年10月04日 点击: 编辑: xiaodai6868
    /************定义声明区*****************/
    /*使用芯片:STC89C52
    晶振:12MHZ
    单按键每按一次调整一点,到达最亮后再按一下恢复初始最低亮度
    */
    #include "reg52.h"
    void delay10ms(void);
    sbit led=P1^0;
    sbit key=P3^3;
    unsigned char zk=1;
    unsigned char count;//计数
    /***************主函数*************/
    void main()
    {
        led=1;
        //P0=0;
        EA=1;
        /****定时器配置***/
        TMOD=0x01;
        TL0=(65535-100)%256;
        TH0=(65535-100)/256;
        ET0=1;
        TR0=1;
        /***死循环***/
        while(1)
        {
        if(key==0)
            {
            delay10ms();
            if(key==0)
            {
                zk=zk+10;
                if(zk>=100)
                {
                    zk=1;
                }
            }
            while(!key);
            }
         }
    }
    void timer() interrupt 1
    {
        TL0=(65535-100)%256;
        TH0=(65535-100)/256;
        
        count++;
        if(count>=100) count=0;
        if(count<zk)
            {
            led=0;
            }
        else
            {
            led=1;
            }
    }

    void delay10ms(void)   //误差 0us
    {
        unsigned char a,b,c;
        for(c=5;c>0;c--)
        for(b=4;b>0;b--)
        for(a=248;a>0;a--);
    }
    赞助网站 | 关于我们 | 版权声明 | 站点导航 | 收藏本站 | 设为首页
    LCDHOME - LCD之家
    LCDHOME - LCD之家
    html/201510/293730.html
    欢迎来访LCDHOME论坛网