在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 直流電動(dòng)機(jī)的調(diào)速 用單片機(jī)產(chǎn)生PWM控制

            直流電動(dòng)機(jī)的調(diào)速 用單片機(jī)產(chǎn)生PWM控制

            作者: 時(shí)間:2016-11-25 來(lái)源:網(wǎng)絡(luò) 收藏

            C語(yǔ)言代碼:


            #include
            #define uchar unsigned char
            #define uint unsigned int

            sbit K5=P1^4;
            sbit K6=P1^5;
            sbit PWM1=P1^0;
            sbit PWM2=P1^1;
            sbit FMQ=P3^6;


            uchar ZKB1,ZKB2;

            void delaynms(uint aa)
            {
            uchar bb;
            while(aa--)
            {
            for(bb=0;bb<115;bb++) //1ms基準(zhǔn)延時(shí)程序
            {
            ;
            }
            }

            }

            void delay500us(void)
            {
            int j;
            for(j=0;j<57;j++)
            {
            ;
            }
            }

            void beep(void)
            {
            uchar t;
            for(t=0;t<100;t++)
            {
            delay500us();
            FMQ=!FMQ; //產(chǎn)生脈沖
            }
            FMQ=1; //關(guān)閉蜂鳴器
            delaynms(300);
            }


            void main(void)
            {
            TR0=0; //關(guān)閉定時(shí)器0
            TMOD=0x01; //定時(shí)器0,工作方式1
            TH0=(65526-100)/256;
            TL0=(65526-100)%256; //100us即0.01ms中斷一次
            EA=1; //開總中斷
            ET0=1; //開定時(shí)器0中斷
            TR0=1; //啟動(dòng)定時(shí)器T0
            ZKB1=50; //占空比初值設(shè)定
            ZKB2=50; //占空比初值設(shè)定
            while(1)
            {
            if(!K5)
            {
            delaynms(15); //消抖
            if(!K5) //確定按鍵按下
            {
            beep();
            ZKB1++; //增加ZKB1
            ZKB2=100-ZKB1; //相應(yīng)的ZKB2就減少
            }
            }
            if(!K6)
            {
            delaynms(15); //消抖
            if(!K6) //確定按鍵按下
            {
            beep();
            ZKB1--; //減少ZKB1
            ZKB2=100-ZKB1; //相應(yīng)的ZKB2增加
            }
            }
            if(ZKB1>99)
            ZKB1=1;
            if(ZKB1<1)
            ZKB1=99;

            }
            }


            void time0(void) interrupt 1
            {
            static uchar N=0;
            TH0=(65526-100)/256;
            TL0=(65526-100)%256;
            N++;
            if(N>100)
            N=0;
            if(N<=ZKB1)
            PWM1=0;
            else
            PWM1=1;
            if(N<=ZKB2)
            PWM2=0;
            else
            PWM2=1;

            }


            //顯現(xiàn):電機(jī)轉(zhuǎn)速到最高后,也就是N為1或99時(shí),再按一下,就變到99或1,
            //電機(jī)反方向旋轉(zhuǎn)以最高速度


            上一頁(yè) 1 2 下一頁(yè)

            評(píng)論


            技術(shù)專區(qū)

            關(guān)閉