新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > C51 模仿PWM,可調

        C51 模仿PWM,可調

        作者: 時間:2016-11-23 來源:網絡 收藏
        #include

        sbit LED_0 = P1^0;

        本文引用地址:http://www.104case.com/article/201611/320427.htm

        sbit LED_1 = P1^1;

        unsigned Pwm = 0; // 控制 LED_0 的有暗到亮 其中LED_1 作為對比

        unsigned Count=0;

        void Time_Init(void)
        {
        TMOD = 0x02; //定時器0 定時,方式2
        TH0 = 0x9c; //100us
        TL0 = 0x9c;
        EA = 1;
        ET0 = 1;
        TR0 = 1;
        }

        void Int0_Init(void)
        {
        IT0=1; //設置下降沿觸發
        EA=1; //開總中斷
        EX0=1; //開外部中斷
        }

        void Int1_Init(void)
        {
        IT1=1; //設置下降沿觸發
        EA=1; //開總中斷
        EX1=1; //開外部中斷
        }

        void main(void)
        {
        Time_Init();
        Int0_Init();
        Int1_Init();
        LED_0 = 0;
        LED_1 = 0;
        while(1);

        }

        void INT_Time0() interrupt 1 using 1
        {
        Count++;
        if(Count==100)
        {
        Count=0;
        }
        if(Count<=Pwm)
        {
        LED_0 = 0;
        }
        else
        {
        LED_0 = 1;
        }
        }

        void Int0() interrupt 0
        {
        if(Pwm<=94)
        {
        Pwm=Pwm+5; //此時占空比為Pwm/100
        }
        else
        {
        Pwm=99;
        }
        }

        void Int1() interrupt 2
        {
        if(Pwm>=5)
        {
        Pwm=Pwm-5;
        }
        else
        {
        Pwm=0;
        }
        }



        關鍵詞: C51模仿PWM可

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 安国市| 仪陇县| 长子县| 蛟河市| 珲春市| 石柱| 左云县| 那坡县| 米泉市| 内丘县| 通化市| 石柱| 页游| 兴和县| 景泰县| 定安县| 余干县| 德州市| 阜宁县| 西安市| 常德市| 唐山市| 从化市| 铁岭县| 万州区| 报价| 阳东县| 巴彦淖尔市| 黎平县| 阳曲县| 岳阳市| 梓潼县| 弥渡县| 威宁| 辽阳市| 靖安县| 福州市| 汝城县| 安陆市| 连江县| 葫芦岛市|