《單片機(jī)原理及應(yīng)用 》課件-第5章_第1頁(yè)
《單片機(jī)原理及應(yīng)用 》課件-第5章_第2頁(yè)
《單片機(jī)原理及應(yīng)用 》課件-第5章_第3頁(yè)
《單片機(jī)原理及應(yīng)用 》課件-第5章_第4頁(yè)
《單片機(jī)原理及應(yīng)用 》課件-第5章_第5頁(yè)
已閱讀5頁(yè),還剩45頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第5章單片機(jī)的定時(shí)器/計(jì)數(shù)器5.1定時(shí)器/計(jì)數(shù)器的基本概念5.2定時(shí)器/計(jì)數(shù)器的結(jié)構(gòu)及工作原理5.3定時(shí)器/計(jì)數(shù)器的控制

任務(wù)5-1用T0查詢方式控制P1口8位LED閃爍

任務(wù)5-2用T0查詢方式計(jì)數(shù),結(jié)果送P1口顯示本章小結(jié)習(xí)題

定時(shí)和計(jì)數(shù)是控制系統(tǒng)中的兩個(gè)重要功能,是時(shí)序電路的基礎(chǔ)。對(duì)于時(shí)序控制系統(tǒng),經(jīng)常需要定時(shí)輸出某些控制信號(hào),或者對(duì)某些待測(cè)量進(jìn)行定時(shí)掃描和監(jiān)測(cè),這便需要實(shí)現(xiàn)定時(shí)和計(jì)數(shù)的功能。

51系列單片機(jī)的硬件上集成了可編程的定時(shí)器/計(jì)數(shù)器。對(duì)于MCS-51子系列單片機(jī),其有兩個(gè)定時(shí)器/計(jì)數(shù)器,即定時(shí)器/計(jì)數(shù)器0和1,簡(jiǎn)稱T0和T1,有4種工作方式可供選擇。對(duì)于MCS-52子系列單片機(jī)(如AT89S52),其有3個(gè)定時(shí)器/計(jì)數(shù)器,T0和T1是通用定時(shí)器/計(jì)數(shù)器,定時(shí)器/計(jì)數(shù)器2(簡(jiǎn)稱T2)集定時(shí)、計(jì)數(shù)和捕獲三種功能于一體,功能更強(qiáng)。

5.1定時(shí)器/計(jì)數(shù)器的基本概念

1.計(jì)數(shù)計(jì)數(shù)一般是指對(duì)事件的統(tǒng)計(jì),通常以“1”為單位進(jìn)行累加。生活中常見(jiàn)的計(jì)數(shù)應(yīng)用有家用電度表、汽車(chē)和摩托車(chē)上的里程表等。

2.計(jì)數(shù)器的容量

MCS-51單片機(jī)的兩個(gè)計(jì)數(shù)器分別稱為T(mén)0和T1,這兩個(gè)計(jì)數(shù)器都是由兩個(gè)8位的RAM單元組成的,即每個(gè)計(jì)數(shù)器都是16位的計(jì)數(shù)器,最大的計(jì)數(shù)容量是216=65536(0~65535),因?yàn)樵谟?jì)算機(jī)中往往把0作為起始點(diǎn),比如P0、P1.0、T0等。

3.定時(shí)器

單片機(jī)中的計(jì)數(shù)器除了可以計(jì)數(shù)用,還可以用做定時(shí)器,定時(shí)器的用途當(dāng)然很大,如鬧鐘的定時(shí),手機(jī)的定時(shí)、開(kāi)關(guān)機(jī),等等,那么計(jì)數(shù)器是如何作為定時(shí)器來(lái)用的呢?一個(gè)鬧鐘,如果我們將它定時(shí)在1小時(shí)后響鈴,就相當(dāng)于秒針走了3600次,在這里時(shí)間就轉(zhuǎn)化成為了秒針走的次數(shù)。可見(jiàn),計(jì)數(shù)的次數(shù)和時(shí)間之間的確有關(guān),那么單片機(jī)的定時(shí)器/計(jì)數(shù)器是怎么回事呢?

定時(shí)原理示意圖如圖5-1所示。從圖中我們可以得出這樣的結(jié)論:只要計(jì)數(shù)脈沖的間隔相等,那么計(jì)數(shù)值就代表了時(shí)間的流逝。其實(shí)單片機(jī)中的定時(shí)器和計(jì)數(shù)器是一個(gè)東西,只不過(guò)計(jì)數(shù)器記錄的是外界發(fā)生的事情,而定時(shí)器則是由單片機(jī)提供一個(gè)非常穩(wěn)定的計(jì)數(shù)源,然后把計(jì)數(shù)源的計(jì)數(shù)次數(shù)轉(zhuǎn)化為定時(shí)器的時(shí)間,圖中的C/T開(kāi)關(guān)就是起這個(gè)作用的。那么提供給定時(shí)器的計(jì)數(shù)源又是從哪里來(lái)的呢?它是由單片機(jī)的晶振經(jīng)過(guò)12分頻后獲得的一個(gè)脈沖源。我們知道晶振的頻率是很準(zhǔn)確的,所以這個(gè)計(jì)數(shù)脈沖的時(shí)間間隔當(dāng)然也很準(zhǔn)確。圖5-1定時(shí)原理示意圖

假定單片機(jī)的時(shí)鐘振蕩器可以產(chǎn)生12MHz的時(shí)鐘脈沖信號(hào),經(jīng)12分頻后得到1MHz的脈沖信號(hào),1MHz的信號(hào)每個(gè)脈沖的持續(xù)時(shí)間(1個(gè)周期)為1μs。如果定時(shí)器0對(duì)1MHz的信號(hào)進(jìn)行計(jì)數(shù),計(jì)到65536,將需要65536μs,即65.536ms,此時(shí),定時(shí)器計(jì)數(shù)達(dá)到最大值,計(jì)數(shù)溢出使TFn位置1。如果將定時(shí)器的初值設(shè)置為65536-1000=64536,那么單片機(jī)將在計(jì)數(shù)1000個(gè)1μs脈沖,即1ms時(shí)產(chǎn)生溢出。

5.2定時(shí)器/計(jì)數(shù)器的結(jié)構(gòu)及工作原理

5.2.1定時(shí)器/計(jì)數(shù)器的結(jié)構(gòu)MCS-51單片機(jī)中的定時(shí)器或計(jì)數(shù)器是對(duì)同一種結(jié)構(gòu)進(jìn)行不同的設(shè)置而形成的,基本結(jié)構(gòu)如圖5-2所示。T0和T1分別是由TH0、TL0和TH1、TL1兩個(gè)8位計(jì)數(shù)器構(gòu)成的16位計(jì)數(shù)器,兩者均為加1計(jì)數(shù)器,用于對(duì)定時(shí)或計(jì)數(shù)脈沖進(jìn)行加法計(jì)數(shù)。每個(gè)定時(shí)器/計(jì)數(shù)器都可以實(shí)現(xiàn)定時(shí)和計(jì)數(shù)功能。圖5-2MCS-51定時(shí)器/計(jì)數(shù)器的基本結(jié)構(gòu)

從圖5-2中可以看出,單片機(jī)內(nèi)部與定時(shí)器/計(jì)數(shù)器有關(guān)的部件如下:

?兩個(gè)定時(shí)器/計(jì)數(shù)器(T0和T1):均為16位計(jì)數(shù)器。

?寄存器TCON:控制兩個(gè)定時(shí)器/計(jì)數(shù)器的啟動(dòng)和停止。

?寄存器TMOD:用來(lái)設(shè)置定時(shí)器/計(jì)數(shù)器的工作方式。

兩個(gè)定時(shí)器/計(jì)數(shù)器在內(nèi)部通過(guò)總線與CPU連接,從而可以受CPU的控制并傳送給CPU信號(hào),進(jìn)而申請(qǐng)CPU去執(zhí)行規(guī)定的任務(wù)。

當(dāng)計(jì)數(shù)脈沖來(lái)自內(nèi)部時(shí)鐘脈沖時(shí),定時(shí)器/計(jì)數(shù)器作定時(shí)器使用。

當(dāng)計(jì)數(shù)脈沖來(lái)自于外部引腳T0/T1上的輸入脈沖時(shí),定時(shí)器/計(jì)數(shù)脈沖作計(jì)數(shù)器使用。如果在第一個(gè)機(jī)器周期檢測(cè)到T0/T1引腳的脈沖信號(hào)為1,第二個(gè)機(jī)器周期檢測(cè)到T0/T1引腳的脈沖信號(hào)為0,即出現(xiàn)從高電平到低電平的跳變時(shí),計(jì)數(shù)器加1。由于檢測(cè)到一次負(fù)跳變需要兩個(gè)機(jī)器周期,所以最高的外部計(jì)數(shù)脈沖的頻率不能超過(guò)時(shí)鐘頻率的1/24,并且要求外部計(jì)數(shù)脈沖的高電平和低電平的持續(xù)時(shí)間不能小于一個(gè)機(jī)器周期。

方式控制寄存器TMOD用于設(shè)置定時(shí)器/計(jì)數(shù)器的工作方式,控制寄存器TCON用于控制定時(shí)器/計(jì)數(shù)器的啟動(dòng)和停止。

5.2.2定時(shí)器/計(jì)數(shù)器的工作原理

定時(shí)器/計(jì)數(shù)器作計(jì)數(shù)器使用時(shí),通過(guò)單片機(jī)外部引腳T0或T1對(duì)外部脈沖信號(hào)計(jì)數(shù),當(dāng)加在T0或T1引腳上的外部脈沖信號(hào)出現(xiàn)一個(gè)由“1”到“0”的負(fù)跳變時(shí),計(jì)數(shù)器加

1,直至計(jì)數(shù)器產(chǎn)生溢出。

定時(shí)器/計(jì)數(shù)器(T0或T1)作定時(shí)器使用時(shí),對(duì)外接晶振產(chǎn)生的振蕩信號(hào)經(jīng)12分頻后,提供給定時(shí)器,作為計(jì)數(shù)的脈沖輸入,定時(shí)器以12分頻后的脈沖周期為基本計(jì)數(shù)單位,對(duì)輸入的脈沖進(jìn)行計(jì)數(shù),直至產(chǎn)生溢出。

5.3定時(shí)器/計(jì)數(shù)器的控制

由于定時(shí)器/計(jì)數(shù)器必須在寄存器TCON和TMOD的控制下才能準(zhǔn)確工作,因此必須掌握寄存器TCON和TMOD的控制方法。所謂的“控制”,也就是對(duì)兩個(gè)寄存器TCON和TMOD的位進(jìn)行設(shè)置。

5.3.1定時(shí)器/計(jì)數(shù)器的方式控制寄存器TMOD

寄存器TMOD是單片機(jī)的一個(gè)特殊功能寄存器,功能是控制定時(shí)器/計(jì)數(shù)器,即T0、T1的工作方式。它的字節(jié)地址為89H,不可以對(duì)它進(jìn)行位操作,只能進(jìn)行字節(jié)操作,即以給寄存器整體賦值的方法設(shè)置初始值,如TMOD=0x01。在上電和復(fù)位時(shí),寄存器TMOD的初始值為00H。表5-1列出了寄存器TMOD的格式。

TMOD寄存器中的高4位用來(lái)控制T1,低4位用來(lái)控制T0。下面以低4位控制T0為例來(lái)說(shuō)明各位的具體控制功能。

(1)GATE:門(mén)控制位,用來(lái)控制定時(shí)器/計(jì)數(shù)器的啟動(dòng)模式。GATE=0時(shí),只要使TCON中的TR0或TR1置1”(高電平),就可以啟動(dòng)定時(shí)器/計(jì)數(shù)器工作;GATE=1時(shí),除了需將TR0或TR1置“1”外,還需要外部中斷引腳INT0(與TR0對(duì)應(yīng))或INT1(與TR1對(duì)應(yīng))也為高電平,才能啟動(dòng)定時(shí)器/計(jì)數(shù)器工作。

(2)C/T:定時(shí)器/計(jì)數(shù)器模式選擇位。C/T為0時(shí),定時(shí)器/計(jì)數(shù)器設(shè)置為定時(shí)工作模式;C/T為1時(shí),定時(shí)器/計(jì)數(shù)器設(shè)置為計(jì)數(shù)工作模式。

(3)M1、M0位:定時(shí)器/計(jì)數(shù)器工作方式設(shè)置位。定時(shí)器/計(jì)數(shù)器有4種工作方式,由M1、M2進(jìn)行設(shè)置,M1、M0與4種工作方式的對(duì)應(yīng)關(guān)系如表5-2所示。

5.3.2定時(shí)器/計(jì)數(shù)器的控制寄存器TCON

TCON是一個(gè)特殊功能寄存器,它的功能是在定時(shí)器溢出時(shí)設(shè)定標(biāo)志位,并控制定時(shí)器的運(yùn)行、停止和中斷請(qǐng)求。TCON的字節(jié)地址是88H,它有8位,每位均可進(jìn)行位尋址

(如可使用“TR0=1;”將該位置“1”),各位的地址和位符號(hào)見(jiàn)表5-3。

TCON的高4位用于控制定時(shí)器/計(jì)數(shù)器的啟動(dòng)和中斷申請(qǐng),低4位與外部中斷有關(guān),其含義在后面介紹。下面僅介紹其高4位的功能:

(1)TF1和TF0:分別是T1和T0的溢出標(biāo)志位。當(dāng)定時(shí)器/計(jì)數(shù)器工作產(chǎn)生溢出時(shí),硬件自動(dòng)將TF1或TF0位置“1”,并申請(qǐng)中斷。當(dāng)進(jìn)入中斷服務(wù)程序時(shí),硬件又將自

動(dòng)清零TF1或TF0。

(2)TR1或TR0:分別是T1和T0的啟動(dòng)/停止位。在編寫(xiě)程序時(shí),若將TR1或TR0設(shè)置為“1”,那么相應(yīng)的定時(shí)器/計(jì)數(shù)器就開(kāi)始工作:若設(shè)置為“0”,相應(yīng)的定時(shí)器/計(jì)數(shù)器

就停止工作。

5.3.3定時(shí)器/計(jì)數(shù)器的4種工作方式

T0、T1的定時(shí)/計(jì)數(shù)功能由TMOD的C/T位選擇,而工作方式則由TMOD的M1、M0位共同控制。在M1、M0位的控制下,定時(shí)器/計(jì)數(shù)器可以在4種不同的方式下工作。

T0和T1有4種工作方式,即方式0、方式1、方式2和方式3。T0和T1在方式0、方式1、方式2下工作時(shí),用法完全一致,僅在方式3下工作時(shí)有所區(qū)別。各種方式的選擇是通過(guò)對(duì)TMOD的M1、M2位進(jìn)行編碼來(lái)實(shí)現(xiàn)的。

1.方式0

當(dāng)M1M0=00時(shí),定時(shí)器/計(jì)數(shù)器被選定為工作方式0,其邏輯結(jié)構(gòu)(以T1為例)如圖5-3所示。圖5-3T1在方式0下的邏輯結(jié)構(gòu)

方式0實(shí)質(zhì)上是對(duì)T0或T1的兩個(gè)8位計(jì)數(shù)器TH1、TL1(TH0、TL0)進(jìn)行計(jì)數(shù)操作。其中高位計(jì)數(shù)器TH1的8位全部使用,而低位計(jì)數(shù)器TL1只用其低5位,從而構(gòu)成

了一個(gè)13位的定時(shí)器/計(jì)數(shù)器。計(jì)數(shù)時(shí)TL1低5位計(jì)數(shù)滿后向TH1進(jìn)位,TH1計(jì)數(shù)滿后向TCON中的中斷標(biāo)志位TF1進(jìn)位,由硬件置位TF1,申請(qǐng)中斷。

TMOD中的標(biāo)志位C/T控制的電子開(kāi)關(guān)決定了定時(shí)器/計(jì)數(shù)器的工作模式。

當(dāng)C/T為0時(shí),T1為定時(shí)器工作模式,此時(shí)計(jì)數(shù)器的計(jì)數(shù)脈沖是單片機(jī)內(nèi)部振蕩器12分頻后的信號(hào),T1對(duì)機(jī)器周期計(jì)數(shù)。其定時(shí)時(shí)間由下式進(jìn)行計(jì)算:

定時(shí)時(shí)間=(213-X)×振蕩周期×12

式中,X為T(mén)1的初值。

當(dāng)C/T為1時(shí),T1為計(jì)數(shù)器工作模式。此時(shí)計(jì)數(shù)器的計(jì)數(shù)脈沖為P3.5引腳上的外部輸入脈沖,當(dāng)P3.5引腳上的輸入脈沖發(fā)生負(fù)跳變時(shí),計(jì)數(shù)器加1。

T1或T0能否啟動(dòng)工作,取決于TR1、TR0、GATE和引腳INT1、INT0的狀態(tài)。

當(dāng)GATE為0時(shí),只要TR1、TR0為1就可以啟動(dòng)T1、T0工作。

當(dāng)GATE為1時(shí),只有當(dāng)INT1或INT0引腳為高電平,且TR1或TR0置1時(shí),才能啟動(dòng)T1或T0工作。

2.方式1

在工作方式1中,T1和T0的組成結(jié)構(gòu)與功能完全相同,這里以T1為例進(jìn)行講解。

當(dāng)M1M0=01時(shí),定時(shí)器/計(jì)數(shù)器被選定為工作方式1,邏輯結(jié)構(gòu)如圖5-4所示。在這種工作方式下,其為16位定時(shí)器/計(jì)數(shù)器,由TL1的8位和TH1的8位構(gòu)成。當(dāng)計(jì)數(shù)溢出

時(shí),置位TCON中的溢出標(biāo)志位TF1,表示有中斷請(qǐng)求,同時(shí)16位定時(shí)器/計(jì)數(shù)器復(fù)位為0。圖5-4T1在方式1下的邏輯結(jié)構(gòu)

3.方式2

在工作方式2中,T1和T0的組成結(jié)構(gòu)與功能也完全相同,這里同樣以T1為例進(jìn)行講解。

當(dāng)M1M0=10時(shí),定時(shí)器/計(jì)數(shù)器被選定為工作方式2,邏輯結(jié)構(gòu)如圖5-5所示。T1由TL1構(gòu)成的8位計(jì)數(shù)器和作為計(jì)數(shù)器初值的常數(shù)緩沖器的TH1構(gòu)成。當(dāng)TL1計(jì)數(shù)溢出時(shí),置溢出標(biāo)志位TFI為1的同時(shí),還自動(dòng)將TH1的初值送入TL1,使TL1從初值重新開(kāi)始計(jì)數(shù)。這樣既提高了定時(shí)精度,同時(shí)應(yīng)用時(shí)只需在開(kāi)始時(shí)賦初值1次,簡(jiǎn)化了程序的編寫(xiě)。圖5-5T1在方式2下的邏輯結(jié)構(gòu)

4.方式3

工作方式3的作用比較特殊,只適用于T0。如果把T1置為工作方式3,它會(huì)自動(dòng)處于停止?fàn)顟B(tài)。當(dāng)T0工作在方式3時(shí),被拆成兩個(gè)獨(dú)立的8位計(jì)數(shù)器TL0和TH0,其邏輯結(jié)構(gòu)如圖5-6所示。圖5-6T0在方式3下的邏輯結(jié)構(gòu)

T0工作在方式3時(shí),TL0構(gòu)成8位計(jì)數(shù)器,可工作于定時(shí)器/計(jì)數(shù)器模式,并使用T0的控制位與TF0的中斷源。TH0則只能工作于定時(shí)器模式,使用T1中的TR1和TF1的

中斷源。

一般情況下,使用方式0~2即可滿足需要。但在特殊場(chǎng)合,必須要求T0工作于方式3,而T1工作于方式2(需要T1作為串行口波特率發(fā)生器,將在后文介紹)。所以,方式3適合

于單片機(jī)需要1個(gè)獨(dú)立的定時(shí)器/計(jì)數(shù)器、1個(gè)定時(shí)器和1個(gè)串行口波特率發(fā)生器的情況。

5.3.4定時(shí)器/計(jì)數(shù)器中定時(shí)/計(jì)數(shù)初值的計(jì)算

在MCS51內(nèi)核單片機(jī)中,T1和T0都是增量計(jì)數(shù)器,因此不能直接將要計(jì)數(shù)的值作為初值放入寄存器中,而是將計(jì)數(shù)的最大值減去實(shí)際要計(jì)數(shù)的值的差存入寄存器中。

若作定時(shí)器使用,設(shè)定時(shí)間為Δt,時(shí)鐘頻率為fosc,定時(shí)器/計(jì)數(shù)器內(nèi)部的計(jì)數(shù)器位數(shù)為n,則

若作計(jì)數(shù)器使用,設(shè)計(jì)數(shù)值為C,定時(shí)器/計(jì)數(shù)器內(nèi)部的計(jì)數(shù)器位數(shù)為n,則

計(jì)數(shù)初值=2n-C

當(dāng)定時(shí)器/計(jì)數(shù)器工作在除方式2以外的其他方式下,且采用中斷編程方式時(shí),在中斷服務(wù)程序中必須重置內(nèi)部計(jì)數(shù)器初值,以保證定時(shí)/計(jì)數(shù)值不變。

任務(wù)5-1用T0查詢方式控制P1口8位LED閃爍

任務(wù)目的要求T0工作在方式1,LED的閃爍周期為100ms,即亮50ms,熄滅50ms。電路原理圖如圖5-7所示。任務(wù)準(zhǔn)備設(shè)備及軟件:萬(wàn)用表、計(jì)算機(jī)、KeilμVision4軟件、Proteus軟件。圖5-7T0查詢方式控制8位LED閃爍的電路原理圖

任務(wù)實(shí)施

1.實(shí)現(xiàn)方法

1)T0工作方式的設(shè)置

用如下指令對(duì)T0的工作方式進(jìn)行設(shè)置:

2)T0初值的設(shè)定

因?yàn)閱纹瑱C(jī)的晶振頻率為12MHz,經(jīng)12分頻后送到T0的脈沖頻率為1MHz,周期T=1μs。即每個(gè)脈沖計(jì)時(shí)1μs。計(jì)時(shí)50ms(即50000μs),則需要計(jì)的脈沖數(shù)為50000/1=

50000(次)。定時(shí)器的初值應(yīng)設(shè)置為65536-50000=15536。這個(gè)數(shù)需要用T0的高8位寄存器(TH0)和低8位寄存器(

TL0)分別存儲(chǔ),設(shè)置方法如下:

3)查詢方式的實(shí)現(xiàn)

T0開(kāi)始工作后,可通過(guò)編程讓單片機(jī)不斷查詢溢出標(biāo)志位TF0是否為“1”,若為“1”,則表示計(jì)時(shí)時(shí)間到;否則等待。

2.程序設(shè)計(jì)

先建立一個(gè)文件夾,然后建立“TIMER”工程項(xiàng)目,最后建立源程序文件“TIMER.C”。

輸入如下源程序:

3.用Proteus軟件仿真

經(jīng)Keil軟件編譯通過(guò)后,可利用Proteus軟件進(jìn)行仿真。在ProteusISIS編輯環(huán)境中繪制仿真電路圖,將編譯好的“TIMER.hex”文件載入AT89C51。啟動(dòng)仿真,即可看到P1口外接的8位LED開(kāi)始閃爍。

任務(wù)5-2用T0查詢方式計(jì)數(shù),結(jié)果送P1口顯示

任務(wù)目的要求使用T0的查詢方法統(tǒng)計(jì)按鍵次數(shù),并將結(jié)果送P1口8位LED顯示。要求計(jì)數(shù)從0開(kāi)始,計(jì)滿100后清0。電路原理圖如圖5-8所示。任務(wù)準(zhǔn)備設(shè)備及軟件:萬(wàn)用表、計(jì)算機(jī)、KeilμVision4軟件、Proteus軟件。

任務(wù)實(shí)施

1.實(shí)現(xiàn)方法

用如下指令對(duì)T0的工作方式進(jìn)行設(shè)置:

TMOD=0x06;//TMOD=00000110B,使用T0的方式2

因?yàn)門(mén)0在方式2工作時(shí),TH0和TL0僅需賦值一次初值。在TL0計(jì)滿后,即置位TF0,同時(shí)TH0中的初值自動(dòng)再裝入TL0,然后重新開(kāi)始計(jì)數(shù)。所以T0工作在方式2且

計(jì)數(shù)最大值為100時(shí)的初值設(shè)置如下:

TH0=256100;//T0的高8位賦初值

TL0=256100;//T0的高8位賦初值

2.程序設(shè)計(jì)

先建立一個(gè)文件夾,然后建立“COUNTER”工程項(xiàng)目,最后建立源程序文件“COUNTER.C”。

3.用Proteus軟件仿真

經(jīng)Keil軟件編譯通過(guò)后,可利用Proteus軟件進(jìn)行仿真。在ProteusISIS編輯環(huán)境中繪制仿真電路圖,將編譯好的“

COUNTER.hex”文件載入AT89C51。啟動(dòng)仿真,即可看到

P1口外接的8位LED顯示按鍵按下的次數(shù)。

本章小結(jié)

在單片機(jī)項(xiàng)目開(kāi)發(fā)中經(jīng)常用到定時(shí)器/計(jì)數(shù)器,因此,掌握定時(shí)器/計(jì)數(shù)器的使用方法非常必要。本章介紹了定時(shí)器/計(jì)數(shù)器的簡(jiǎn)單應(yīng)用技術(shù)。在實(shí)際項(xiàng)目開(kāi)發(fā)中通常需要根據(jù)具體的項(xiàng)目要求靈活使用定時(shí)器/計(jì)數(shù)器,更詳細(xì)的資料可查閱芯片的數(shù)據(jù)手冊(cè)。

習(xí)題

一、填空題1.單片機(jī)AT89C51片內(nèi)有兩個(gè)()位的定時(shí)器/計(jì)數(shù)器,即T0和T1。2.T0或T1用做作定時(shí)器時(shí),對(duì)外接晶振產(chǎn)生的振蕩信號(hào)經(jīng)()分頻后,提供給計(jì)數(shù)器,作為計(jì)數(shù)的脈沖輸入。3.單片機(jī)AT89C51外接12MHz晶振,定時(shí)器的最大溢出時(shí)間是

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論