中文字幕 另类精品,亚洲欧美一区二区蜜桃,日本在线精品视频免费,孩交精品乱子片免费

<sup id="3hn2b"></sup>

    1. <sub id="3hn2b"><ol id="3hn2b"></ol></sub><legend id="3hn2b"></legend>

      1. <xmp id="3hn2b"></xmp>

      2. 新聞中心

        EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 關(guān)于MCS-51單片機(jī)實(shí)現(xiàn)PWM的方法

        關(guān)于MCS-51單片機(jī)實(shí)現(xiàn)PWM的方法

        作者: 時(shí)間:2016-11-23 來(lái)源:網(wǎng)絡(luò) 收藏
        關(guān)于MCS-51單片機(jī)實(shí)現(xiàn)PWM的方法
        PWM是“脈沖寬度調(diào)制”的意思。
        PWM實(shí)際上是在單片機(jī)的某個(gè)引腳輸出一系列的矩形波,其周期一般是固定的;而其高電平、低電平所占用的時(shí)間,是可以受控調(diào)整的。高電平、低電平所占用的時(shí)間之比,稱為占空比,其值為0~1之間。PWM的應(yīng)用很廣,簡(jiǎn)單的說(shuō),它可以控制燈光的亮度、可以控制直流電機(jī)的轉(zhuǎn)速,甚至還可以輸出語(yǔ)音信號(hào)。
        新型的單片機(jī),往往都含有硬件的PWM模塊,編寫程序就很簡(jiǎn)單;而老式的MCS-51系列,就不具備這個(gè)條件。
        其實(shí),在沒有PWM硬件的單片機(jī)上實(shí)現(xiàn)PWM,也并不難,只需一個(gè)定時(shí)器,令其工作在中斷方式即可。下面以網(wǎng)上的一個(gè)題目為例,說(shuō)明實(shí)現(xiàn)PWM方法。
        題目鏈接:http://zhidao.baidu.com/question/170790790.html?push=core
        題目:AT89C52單片機(jī)輸出可調(diào)PWM波。
        要求:
        1。單片機(jī)的晶振是12MHz,輸出周期為1s。
        2。用兩個(gè)開關(guān)控制占空比的增加和減少,分20等級(jí)。針對(duì)這個(gè)題目,做而論道設(shè)計(jì)了一個(gè)簡(jiǎn)單的實(shí)驗(yàn)電路:
         在P2口的8條線輸出PWM波形;
         在/INT1、/INT0外接了兩個(gè)按鍵,用來(lái)調(diào)整占空比;
         在P0口外接了兩個(gè)BCD數(shù)碼顯示器,用來(lái)顯示當(dāng)前的占空比的等級(jí)。
         實(shí)驗(yàn)的時(shí)候,可以使用示波器來(lái)觀察P2口輸出的波形。
         如果把PWM波形的頻率提高,也可以用LED觀察到漸亮漸暗的效果,目前看,只是閃爍的時(shí)間發(fā)生變化。

        //程序如下:
        //==========================================
        #include
        unsignedinta,b;
        //------------------------------------------
        voidmain()
        {
        TMOD=0x01;//T0定時(shí)方式1
        TH0=(65536-50000)/256;//50ms@12MHz
        TL0=(65536-50000)%256;
        TR0=1;ET0=1;
        EX0=1;EX1=1;
        IT0=1;IT1=1;
        EA=1;a=0;
        b=10;
        while(1);
        }
        //------------------------------------------
        voidtime0()interrupt1
        {
        TL0=(65536-50000)%256;
        TH0=(65536-50000)/256;//50ms@12MHz
        a++;
        if(a==20)a=0;//在這里調(diào)整周期.
        if(a<b)P2=0xff;//在這里調(diào)整占空比.
        elseP2=0x00;
        P0=((b/10)<<4)+b%10;//顯示占空比等級(jí)
        }
        //------------------------------------------
        voidX0_INT()interrupt0
        {
        b++;
        if(b>19)b=19;//占空比等級(jí)最大為19
        }
        //------------------------------------------
        voidX1_INT()interrupt2
        {
        b--;
        if(b<1)b=1;//占空比等級(jí)最小為1.
        }
        //==========================================


        關(guān)鍵詞: MCS-51單片機(jī)PW

        評(píng)論


        相關(guān)推薦

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

        關(guān)閉