在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,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首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 51單片機(jī)——定時/計(jì)數(shù)器

            51單片機(jī)——定時/計(jì)數(shù)器

            作者: 時間:2016-11-26 來源:網(wǎng)絡(luò) 收藏

            一.定時器操作步驟

            ?定時器操作步驟

            二.工作方式控制寄存器TMOD

            ?工作方式控制寄存器TMOD

            TMOD的低半字節(jié)(D0,D1,D2,D3)用來控制定時器/計(jì)數(shù)器0

            本文引用地址:http://www.biyoush.com/article/201611/321840.htm

            TMOD的高半字節(jié)(D4,D5,D6,D7)用來控制定時器/計(jì)數(shù)器1

            對TMOD中的內(nèi)容說明:

            GATE——門控制 

            GATE=1時,由外部中斷引腳INT0、INT1來啟動定時器T0、T1。   

            當(dāng)INT0引腳為高電平時TR0置位,啟動定時器T0;   

            當(dāng)INT1引腳為高電平時TR1置位,啟動定時器T1。   

            GATE=0時,僅由TR0,TR1置位分別啟動定時器T0、T1。

            C/T——功能選擇位   

            C/T=0時為定時功能,

            C/T=1時為計(jì)數(shù)功能。     ?

            M0、M1——方式選擇功能   

            由于有2位,因此有4種工作方式:

            ?定時/計(jì)數(shù)器工作方式

            三.根據(jù)單片機(jī)晶振,所選TMOD的的工作方式,所要定的時間,來確定THO和TLO所要賦予的初值:

            (以12M晶振,工作方式1即16位計(jì)數(shù)器為例,設(shè)所定時間為Xus(16為計(jì)數(shù)器最大數(shù)65536,即65536us,若所?定時間大于65535,則要用if語句控制,現(xiàn)假設(shè)X<65535))

            1.時鐘周期的時間t=1/12M=1/12 us

            2.機(jī)器周期的時間T=12*1/12=1 us

            3.因?yàn)槊拷?jīng)過一個機(jī)器周期計(jì)數(shù)器+1,所以,計(jì)數(shù)器+1,經(jīng)過的時間為 1 us。

            若所定時間為X,則要求經(jīng)過Xus,中斷響應(yīng),又因?yàn)?6位計(jì)數(shù)器要全部置1(即達(dá)到65535)+1后,中斷才會響應(yīng),所以,初值=(65536-X)

            4.將初值轉(zhuǎn)化為16進(jìn)制碼,分別付給TH0和TL0

            eg:所定時間5ms

            初值=(65536-5000)=60536=EC78

            TH0=0xEC;TL0=0x78;

            (當(dāng)工作方式不同時,TH0/TL0的賦值也不同,個人覺得有了16位計(jì)數(shù)器了,其余的沒什么用,不介紹了)

            5.寫程序時另一種THO/TLO賦值方法

            TH0=(65536-20000)/256;

            TL0=(65536-20000)%6;

            這樣設(shè)置,每經(jīng)過20ms,發(fā)生一次中斷,中斷時間一般以秒為單位,所以經(jīng)過n次中斷即可。

            四.中斷開啟

            注:在用到中斷時,必須要開總中斷EA,即EA=1。 //開總中斷

            1.中斷允許控制寄存器IE

            ?中斷允許寄存器

            EX0(EX1):外部中斷允許控制位

            EX0=1 外部中斷0開關(guān)閉合 //開外部中斷0

            EX0=0 外部中斷0開關(guān)斷開

            ET0(ET1):定時中斷允許控制位

            ET0=1 定時器中斷0開關(guān)閉合 //開內(nèi)部中斷0

            ET0=0 定時器中斷0開關(guān)斷開

            ES: 串口中斷允許控制位

            ES=1 串口中斷開關(guān)閉合 //開串口中斷

            ES=0 串口中斷開關(guān)斷開

            ?2.定時器控制寄存器 TCON //控制外部中斷和定時器中斷

            ?定時器/計(jì)數(shù)器控制寄存器

            外部中斷:

            IE0(IE1):外部中斷請求標(biāo)志位

            當(dāng)INT0(INT1)引腳出現(xiàn)有效的請求信號,此位由單片機(jī)自動置1,cpu開始響應(yīng),處理終端,而當(dāng)入中斷程序后由單片機(jī)自動置0.

            //外部中斷,即外部中斷相應(yīng)的引腳接入低電平或下降沿信號時,中斷開始響應(yīng)。

            IT0(IT1):外部中斷觸發(fā)方式控制位 //選擇有效信號

            IT0(IT1)=1:脈沖觸發(fā)方式,下降沿有效。

            IT0(IT1)=0:電平觸發(fā)方式,低電平有效。

            內(nèi)部中斷:

            TF0(TF1):內(nèi)部定時器/計(jì)數(shù)器溢出中斷標(biāo)志位

            當(dāng)定時器、計(jì)數(shù)器計(jì)數(shù)溢出的時候,此位由單片機(jī)自動置1,cup開始響應(yīng),處理中斷,而當(dāng)進(jìn)入中斷程序后由單片機(jī)自動置0.

            //內(nèi)部中斷實(shí)際上就是利用內(nèi)部的計(jì)數(shù)器,只不過提供計(jì)數(shù)的脈沖來自單片機(jī)自身。

            TR0(TR1):定時器/計(jì)數(shù)器啟動位 //啟動定時器

            TR0(TR1)=1;啟動定時器/計(jì)數(shù)器0

            TR0(TR1)=0; 關(guān)閉定時器/計(jì)數(shù)器0



            評論


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

            關(guān)閉