新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > MCS-51單片機定時器/c見習題解答

        MCS-51單片機定時器/c見習題解答

        作者: 時間:2013-04-07 來源:網絡 收藏

        1、根據/計數器0方式1邏輯結構圖,分析門控位GATE取不同值時,啟動的工作過程。

        答:當GATE=0:軟件啟動,即用指令使TCON中的TR0置1即可啟動定時器0。

        GATE=1:軟件和硬件共同啟動定時器,即用指令使TCON中的TR0置1時,只有外部中斷INT0引腳輸入高電平時才能啟動定時器0。

        2、當定時器/計數器的加1計數器計滿溢出時, 溢出標志位TF1由硬件自動置1,簡述對該標志位的兩種處理方法。

        答:一種是以中斷方式工作,即TF1置1并申請中斷,響應中斷后,執行中斷服務程序,并由硬件自動使TF1清0;另一種以查詢方式工作,即通過查詢該位是否為1來判斷是否溢出,TF1置1后必須用軟件使TF1清0。

        3、設fosc=12MHz,要求T0定時150μs,分別計算采用定時方式0、方式1和方式2時的定時初值。

        答:方式0的定時初值:IF6AH

        方式1的定時初值:FF6AH

        方式2的定時初值:6AH

        4、 設fosc=6MHz,問處于不同的工作方式時,最大定時范圍是多少?

        答:方式0的最大定時范圍:131,072μs

        方式1的最大定時范圍:16,384μs

        方式2的最大定時范圍:512μs

        5、設的單片機晶振為6MHZ,使用T1對外部事件進行計數,每計數200次后,T1轉為定時工作方式,定時5ms后,又轉為計數方式,如此反復的工作,試編程實現。

        答:

        #include reg52.h>

        bit F0=0;

        void main()

        {

        TMOD=0x60;

        TL1=56;

        TH1=56;

        TR1=1;

        ET1=1;

        EA =1;

        While(1);

        }

        void serve() interrupt 3

        {

        if (!F0)

        { TMOD=0x10;

        TL1=63036%16;

        TH1=63036/16;

        F0=~F0;

        }

        else

        {

        TMOD=0x60;

        TL1=56;

        TH1=56;

        F0=~F0;

        }

        }

        51單片機相關文章:51單片機教程


        塵埃粒子計數器相關文章:塵埃粒子計數器原理

        上一頁 1 2 3 4 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 昔阳县| 乡宁县| 金乡县| 丹寨县| 刚察县| 布拖县| 南昌市| 裕民县| 宜兴市| 宁陵县| 炉霍县| 珲春市| 绍兴县| 海伦市| 安达市| 垣曲县| 天津市| 于田县| 岳普湖县| 宝清县| 清水河县| 盐山县| 石屏县| 桑植县| 乌审旗| 巴林左旗| 巍山| 深水埗区| 长沙县| 临西县| 涟水县| 积石山| 响水县| 留坝县| 苏尼特左旗| 吉木乃县| 上犹县| 德昌县| 景宁| 满洲里市| 宁波市|