讀取的計數(shù)值頁_第1頁
讀取的計數(shù)值頁_第2頁
讀取的計數(shù)值頁_第3頁
讀取的計數(shù)值頁_第4頁
讀取的計數(shù)值頁_第5頁
已閱讀5頁,還剩15頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第八章第八章 可編程定時可編程定時/ /計數(shù)器計數(shù)器82538253實現(xiàn)定時或延時控制有三種方法:實現(xiàn)定時或延時控制有三種方法:n軟件定時:軟件定時:即讓即讓CPUCPU執(zhí)行一段不完成任何其他功能的程序段,執(zhí)行一段不完成任何其他功能的程序段,由于執(zhí)行每條指令都需要時間,則執(zhí)行一個程序段就需要一定由于執(zhí)行每條指令都需要時間,則執(zhí)行一個程序段就需要一定的時間,通過改變指令執(zhí)行的循環(huán)次數(shù)來控制定時時間的時間,通過改變指令執(zhí)行的循環(huán)次數(shù)來控制定時時間 n不可編程硬件定時器:不可編程硬件定時器:采用中小規(guī)模器件,外接定時元件采用中小規(guī)模器件,外接定時元件電阻和電容構(gòu)成。電阻和電容構(gòu)成。n可編程硬件定時器

2、:可編程硬件定時器:就是其工作方式、定時值和定時范圍可就是其工作方式、定時值和定時范圍可以很容易由軟件來確定和改變。計數(shù)器一旦開始工作后,以很容易由軟件來確定和改變。計數(shù)器一旦開始工作后,CPUCPU就可以去做別的工作了,等計數(shù)器計到預(yù)定時間,便自動形成就可以去做別的工作了,等計數(shù)器計到預(yù)定時間,便自動形成一個輸出信號,用來向一個輸出信號,用來向CPUCPU提出中斷請求。這種方法不但顯著提出中斷請求。這種方法不但顯著提高了提高了CPUCPU的利用率,而且定時時間由軟件設(shè)置,使用十分靈的利用率,而且定時時間由軟件設(shè)置,使用十分靈活,加上定時時間精確,使用十分廣泛。活,加上定時時間精確,使用十分廣

3、泛??删幊潭〞r器/計數(shù)器8253n一、一、82538253的內(nèi)部結(jié)構(gòu)和功能的內(nèi)部結(jié)構(gòu)和功能n二、二、82538253的引腳功能的引腳功能n三、三、82538253的工作方式的工作方式n四、四、82538253應(yīng)用舉例應(yīng)用舉例8253可編程定時器可編程定時器/計數(shù)器的主要性能:計數(shù)器的主要性能:有有3個獨立的個獨立的16位計數(shù)器位計數(shù)器工作方式可編程控制工作方式可編程控制計數(shù)脈沖頻率計數(shù)脈沖頻率02MHz可以按二進制或可以按二進制或BCD碼計數(shù)碼計數(shù)使用單一使用單一+5V電源電源012一、8253的內(nèi)部結(jié)構(gòu)和功能在初始化編程時用于在初始化編程時用于寄存在寄存在CPU寫入的寫入的控制字以決定各通道

4、控制字以決定各通道的工作方式。此寄存的工作方式。此寄存器只能寫入不能讀出。器只能寫入不能讀出。當(dāng)用當(dāng)用8253作外部事件計作外部事件計數(shù)器時,在數(shù)器時,在CLK腳上腳上所加的計數(shù)脈沖是由外所加的計數(shù)脈沖是由外部事件產(chǎn)生的,這些脈部事件產(chǎn)生的,這些脈沖的間隔可以是不相等沖的間隔可以是不相等的。如果用它作定時器,的。如果用它作定時器,則則CLK引腳上應(yīng)數(shù)入引腳上應(yīng)數(shù)入精確的時鐘脈沖,這時精確的時鐘脈沖,這時8253所能實現(xiàn)的定時時所能實現(xiàn)的定時時間間=計數(shù)脈沖周期計數(shù)脈沖周期預(yù)預(yù)置的計數(shù)初值置的計數(shù)初值讀寫邏輯接收來自系讀寫邏輯接收來自系統(tǒng)總線的控制信號,統(tǒng)總線的控制信號,以產(chǎn)生控制整個器件以產(chǎn)生

5、控制整個器件工作的控制信號。工作的控制信號。這個八位的三態(tài)、雙這個八位的三態(tài)、雙向緩沖器用于將向緩沖器用于將8253與系統(tǒng)總線相與系統(tǒng)總線相連,接收連,接收CPU輸出的輸出的方式控制字或計數(shù)初方式控制字或計數(shù)初值,發(fā)送值,發(fā)送CPU從計數(shù)從計數(shù)器讀出的計數(shù)值。器讀出的計數(shù)值。二、8253的引腳功能D7D0:雙向三態(tài)數(shù)據(jù)線,CPU用輸入、輸出指令對8253進行讀/寫操作的信息都經(jīng)8位數(shù)據(jù)總線傳送。CLK0CLK2:計數(shù)輸入,要求加在CLK引腳的時鐘脈沖頻率不大于2MHz。GATE0GATE2:門控輸入,當(dāng)GATE引腳為低時,禁止計數(shù)器工作;只有GATE引腳為高時,才允許計數(shù)器工作OUT0OUT2

6、:計數(shù)器02的輸出,其輸出波形取決于工作方式A1、A0:尋址3個計數(shù)器和控制寄存器(三個計數(shù)器的控制寄存器共用一個端口地址)RD、WR和CS:分別為讀、寫和片選信號,均為低電平有效A1A0寄存器選擇及其操作01000對計數(shù)器0置計數(shù)初值01001對計數(shù)器1置計數(shù)初值01010對計數(shù)器2置計數(shù)初值01011對控制寄存器設(shè)置控制字00100從計數(shù)器0讀出計數(shù)值00101從計數(shù)器1讀出計數(shù)值00110從計數(shù)器2讀出計數(shù)值00111無操作(D7D0三態(tài))1禁止(D7D0三態(tài))011無操作(D7D0三態(tài))RD WRCS8253的端口選擇三、8253的工作方式1 1、控制字寄存器、控制字寄存器 2 2、工

7、作方式、工作方式v方式方式0計數(shù)結(jié)束中斷方式計數(shù)結(jié)束中斷方式v方式方式1可重復(fù)觸發(fā)的單穩(wěn)態(tài)觸發(fā)器可重復(fù)觸發(fā)的單穩(wěn)態(tài)觸發(fā)器v方式方式2頻率發(fā)生器(頻率發(fā)生器(n分頻器)分頻器)v方式方式3方波發(fā)生器方波發(fā)生器v方式方式4軟件觸發(fā)的選通信號發(fā)生器軟件觸發(fā)的選通信號發(fā)生器v方式方式5硬件觸發(fā)的選通信號發(fā)生器硬件觸發(fā)的選通信號發(fā)生器1. 8253控制字寄存器D7D6D5D4D3D2D1D0SC1SC0RL1RL0M2M1M0BCD:無效:選通道:選通道:選通道11210101000寫計數(shù)器高字節(jié)后讀寫計數(shù)器低字節(jié),:先讀寫計數(shù)器高字節(jié):只讀寫計數(shù)器低字節(jié):只讀:計數(shù)器鎖存/11/10/01005101

8、410031121010010000:方式:方式:方式:方式:方式:方式:二進制計數(shù)碼計數(shù):0BCD1BCD=1時,采用時,采用BCD碼計數(shù),寫入計數(shù)器的初值用碼計數(shù),寫入計數(shù)器的初值用BCD碼表示,初值范圍為碼表示,初值范圍為00009999H,其中,其中0000表示最大值表示最大值10000,即,即104。如預(yù)制初值。如預(yù)制初值n=1200H時,時,表示一個十進制數(shù)表示一個十進制數(shù)1200。BCD=0時,采用時,采用BCD碼計數(shù),寫入計數(shù)器的初值用二碼計數(shù),寫入計數(shù)器的初值用二進制數(shù)表示,初值范圍為進制數(shù)表示,初值范圍為0000FFFFH,其中,其中0000表表示最大值示最大值65536,

9、即,即216。如預(yù)制初值。如預(yù)制初值n=1200H時,時,表示一個十進制數(shù)表示一個十進制數(shù)4608。方式0:計數(shù)結(jié)束中斷43210nCLKOUTGATERW(n=4)INTR方式0的工作特點: 計數(shù)到零后,不能自動恢復(fù)計數(shù)初值,OUT輸出端保持高電平。 計數(shù)過程中,如果GATE=0,則暫停計數(shù),直到GATE變高后再接著計數(shù)。 在計數(shù)過程中可改變計數(shù)值。若是8位計數(shù),寫入新的計數(shù)值后,計數(shù)器按新值開始計數(shù);若是16位計數(shù),寫入第一個字節(jié)后,計數(shù)器停止計數(shù),在寫入第二個字節(jié)后,按新的初值計數(shù)。(m=5)321045INTRAB方式方式1:1:可重復(fù)觸發(fā)的單穩(wěn)態(tài)觸發(fā)器可重復(fù)觸發(fā)的單穩(wěn)態(tài)觸發(fā)器4 32

10、10CLKOUTGATERW(n=4)(m=5)5432453210單脈沖寬度單脈沖寬度方式1的工作特點: 可重復(fù)觸發(fā)。計數(shù)到零后,不用再次送計數(shù)值,只要給它觸發(fā)脈沖,即可產(chǎn)生一個同樣寬度的單穩(wěn)脈沖。 計數(shù)過程中,若裝入新的計數(shù)初值,則當(dāng)前輸出不受影響。只有再次觸發(fā)后,計數(shù)才開始按新值輸出脈沖寬度。 計數(shù)過程中,外部的GATE觸發(fā)沿提前到來,則下一個CLK脈沖下降沿,計數(shù)器開始重新計數(shù),這將使輸出單穩(wěn)脈沖比原先設(shè)定的計數(shù)值加寬了。例例方式2:頻率發(fā)生器(n分頻器)方式2的工作特點:計數(shù)器寫入控制字和計數(shù)初值后,如GATE一直處于高電平,那么,在下一個脈沖開始計數(shù)器計數(shù)。不用重復(fù)置數(shù)。計數(shù)器能夠

11、連續(xù)工作,輸出OUT是輸入CLK的n(初值)分頻。 計數(shù)過程可由GATE信號控制。GATE變低將使計數(shù)暫停且OUT立即為高;在GATE變高后的下一個CLK下降沿計數(shù)器重新從初值開始計數(shù)。計數(shù)過程中可改變初值。如果GATE一直處于高電平,則重裝計數(shù)初值不影響現(xiàn)行計數(shù)過程;下一個過程,才按新值計數(shù)。CLKRWOUTGATE43210 n=4 n=33213432110404320重復(fù)周期方式3:方波發(fā)生器44CLKRWOUTGATE4 2024 n=4 n=54245200045420重復(fù)周期20重復(fù)周期54特點:當(dāng)計數(shù)初值n為偶數(shù)時,每個CLK脈沖使計數(shù)值減2,當(dāng)計到零時,一方面使輸出改變狀態(tài),

12、另一方面,又重新裝入計數(shù)值、開始新的計數(shù)。當(dāng)n為奇數(shù)時,且OUT為高時,第一個脈沖使計數(shù)減1,然后依次減2;當(dāng)OUT為低時,先使計數(shù)減3,然后依次減2。GATE=1,允許計數(shù);GATE=0,禁止計數(shù)。如果在輸出為低期間, GATE=0,輸出將立即變高,停止計數(shù);當(dāng)GATE變高后,計數(shù)器將重新裝入初值并開始計數(shù)。例例方式4:軟件觸發(fā)的選通信號發(fā)生器CLKRWOUTRWGATEOUTn=4n=443210432104特點:只計數(shù)一次GATE=1,允許計數(shù);GATE=0,禁止計數(shù)。在計數(shù)過程中改變計數(shù)初值,則按新計數(shù)值重新開始計數(shù)。如果是二字節(jié)數(shù),則在寫入第一個字節(jié)時停止計數(shù);寫入第二個字節(jié)后,按新

13、的計數(shù)初值開始計數(shù)。方式5:硬件觸發(fā)的選通信號發(fā)生器CLKGATEGATEOUT(n=4)OUT(n=4)432104343210寫入控制字后,輸出為高。寫入計數(shù)初值后并不立即開始計數(shù),而是由GATE信號的脈沖上升沿觸發(fā)啟動。當(dāng)計數(shù)到零后時,輸出一個CLK周期寬度的負脈沖,然后輸出變高,停止計數(shù)。直至下次GATE脈沖的觸發(fā)才能計數(shù)。在計數(shù)過程中,外部的GATE觸發(fā)沿提前到來,則下一個CLK脈沖下降沿,計數(shù)器開始重新計數(shù)。例例82538253工作方式特點:工作方式特點:方式方式0 0,在寫入控制字后,輸出端即變低,計數(shù)結(jié)束后,輸在寫入控制字后,輸出端即變低,計數(shù)結(jié)束后,輸 出端由低變高,常用該輸

14、出信號作為中斷源。出端由低變高,常用該輸出信號作為中斷源。方式方式1 1,用來產(chǎn)生單脈沖。用來產(chǎn)生單脈沖。方式方式2 2,用來產(chǎn)生序列負脈沖,每個負脈沖的寬度與用來產(chǎn)生序列負脈沖,每個負脈沖的寬度與CLKCLK脈沖脈沖 的周期相同。的周期相同。方式方式3 3,用來產(chǎn)生連續(xù)的方波。方式用來產(chǎn)生連續(xù)的方波。方式2 2和方式和方式3 3都實現(xiàn)對時鐘都實現(xiàn)對時鐘 脈沖進行脈沖進行n n分頻。分頻。方式方式4 4和方式和方式5 5的的波形相同,都在計數(shù)器回波形相同,都在計數(shù)器回0 0后,從后,從OUTOUT端輸出端輸出 一個負脈沖,其寬度等于一個時鐘周期。一個負脈沖,其寬度等于一個時鐘周期。方式方式0

15、0、1 1和和4 4,計數(shù)初值裝進計數(shù)器后,僅一次有效。方式,計數(shù)初值裝進計數(shù)器后,僅一次有效。方式2 2,3 3和和5 5,在減,在減1 1計數(shù)到計數(shù)到0 0值后,值后,82538253會自動將計數(shù)值重裝進計數(shù)器。會自動將計數(shù)值重裝進計數(shù)器。啟動計數(shù)器的觸發(fā)方式啟動計數(shù)器的觸發(fā)方式軟件觸發(fā)方式軟件觸發(fā)方式:只要GATE信號為高電平,在寫入計數(shù)初值后的下一個CLK脈沖的下降沿到來時,計數(shù)初值從計數(shù)初值寄存器送到減1計數(shù)器中,啟動計數(shù)。硬件觸發(fā)方式:硬件觸發(fā)方式:即寫入計數(shù)初值后,計數(shù)器并不開始計數(shù)。而是在GATE信號上升沿到來后的第一個CLK下降沿到來時,才將計數(shù)初值從計數(shù)初值寄存器送到減1計

16、數(shù)器中,啟動計數(shù)。在六種工作方式中屬于軟件觸發(fā)方式的有方式0和方式4,屬于硬件觸發(fā)方式的有方式1和方式5。注意:注意:方式方式2和方式和方式3既可用于軟件觸發(fā),也可用于硬件觸發(fā)。具既可用于軟件觸發(fā),也可用于硬件觸發(fā)。具體地講,在計數(shù)過程中,若體地講,在計數(shù)過程中,若GATE變?yōu)榈碗娖剑嫈?shù)器停止計數(shù)變?yōu)榈碗娖?,計?shù)器停止計數(shù)。在。在GATE正跳變后,重新啟動計數(shù)并從計數(shù)初值開始,因此當(dāng)正跳變后,重新啟動計數(shù)并從計數(shù)初值開始,因此當(dāng)計數(shù)通道用作對外部事件計數(shù)時,計數(shù)通道用作對外部事件計數(shù)時,GATE正跳變可用作對外部事正跳變可用作對外部事件的同步控制信號件的同步控制信號四、8253應(yīng)用舉例1.

17、1. 初始化編程初始化編程2. 2. 讀取讀取82538253的計數(shù)值的計數(shù)值3. 3. 應(yīng)用舉例應(yīng)用舉例1. 初始化編程初始化編程:初始化編程:剛接通電源時,諸如剛接通電源時,諸如8253之類的可編程外圍接口之類的可編程外圍接口芯片通常都處于未定義狀態(tài),在使用之前,必須用程序把他們芯片通常都處于未定義狀態(tài),在使用之前,必須用程序把他們初始化為所需的特定模式,這個過程稱為初始化編程。初始化為所需的特定模式,這個過程稱為初始化編程。初始化步驟:初始化步驟:(1)寫入控制字)寫入控制字用輸出指令向控制字寄存器寫入一個控制字,以選定計數(shù)器通道,規(guī)定該計用輸出指令向控制字寄存器寫入一個控制字,以選定計

18、數(shù)器通道,規(guī)定該計數(shù)器的工作方式和計數(shù)格式。寫入控制字還起到復(fù)位作用,使輸出端數(shù)器的工作方式和計數(shù)格式。寫入控制字還起到復(fù)位作用,使輸出端out變變?yōu)橐?guī)定的初始狀態(tài),并使計數(shù)器清為規(guī)定的初始狀態(tài),并使計數(shù)器清0(2)寫入計數(shù)初值)寫入計數(shù)初值用輸出指令向選中的計數(shù)器端口地址中寫入一個計數(shù)初值,初值設(shè)置時要符用輸出指令向選中的計數(shù)器端口地址中寫入一個計數(shù)初值,初值設(shè)置時要符合控制字中有關(guān)格式的規(guī)定。初值可以是合控制字中有關(guān)格式的規(guī)定。初值可以是8位數(shù)據(jù),也可以是位數(shù)據(jù),也可以是16位數(shù)據(jù)。位數(shù)據(jù)。01001100D7 D6 D5 D4 D3 D2 D1 D0計數(shù)器0先寫低8位再寫高8位方式1二進制計數(shù)例:對計數(shù)器例:對計數(shù)器0初始化。工作與方式初始化。工作與方式1,按二進制計數(shù),計數(shù)值為,按二進制計數(shù),計數(shù)值為5080H。確定控制字:確定控制字:計數(shù)值低計數(shù)值低8位為位為80H,高高8位為位為50H。設(shè)端口。設(shè)端口地址為地址為2A0H2A3H,則初始化程序為:則初始化程序為:MOV DX,2A3H ;控制端口地址為;控制端口地址為2A3HMOV AL,32H ;00110010BOUT DX,A

溫馨提示

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

評論

0/150

提交評論