




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、9.2 可編程計數/定時控制器8253了解8253的功能熟悉8253的工作方式掌握8253的編程方法掌握每種工作方式下GATE對OUT的影響學會使用8253計數和定時功能計數/定時器:通常按計數的實現方法可將計數器操作分為增量計數器和減量計數器兩種。增量計數器是指當計數脈沖(事件)到來后,計數的計數值加“1”;減量計數器反之。增量計數器常用于對事件的累計,而減量計數常用于限量計數。增量計數關心的是當前計數的量,減量計數關心的是計數終到的時刻。在微機系統或微機應用系統,特別是控制系統中,經常有計數和計時的要求。如汽車里程表 的公里計數,電話通話時間計時等。這些應用在計算機中的處理方法不外乎兩種:
2、軟件方法和硬件方法??删幊逃布〞r:采用可編程的計數/定時芯片完成。定時值及其可調整范圍,都可以通過軟件編程確定和改變,功能靈活使用方便。(軟硬件結合) 可編程計數器/定時器Intel 8253就是這種芯片。硬件定時:采用電子器件構成定時或延時電路。電路觸發后延時時間的長短由電路中的定時元件的RC值(RC時間常數)所決定,這種定時方法的缺點是,要改變定時間隔必須改變電路元件,不靈活。(純硬件)軟件定時:就是根據所需要的時間常數來設計一個延遲子程序,這樣作的優點是節省硬件,但耗費CPU的資源較多,降低了CPU效率,且編寫軟件略顯麻煩,通常延遲時間較小且重復次數有限的情況下,使用該方法。8253的
3、工作原理計數器/定時器的功能: 對外部事件發生次數進行計數; 產生計算機系統需要的定時信號。計數和計時本質上是相同的,它們都是對一個輸入脈沖進行計數。計數器的輸入信號可以是隨機信號,定時器的輸入信號要求具有固定周期。計數器/定時器需要做到三個基本功能:可以設定工作方式、計數值可以控制何時開始計數,還可以暫停或重新寫入計數值計數/計時結束時要有提示如果輸入脈沖的頻率一定,那么記錄脈沖的個數與所需的時間是一一對應的關系。例如輸入脈沖頻率為2MHz,那么計數2106 計時1秒。一個計數器/定時器的組成:控制字寄存器決定工作模式(8位)狀態寄存器反映工作狀態初值寄存器計數的初值(16位)計數輸出寄存器
4、當前計數值(16位)。計數器執行計數操作,CPU不能訪問。(16位)輸入計數器脈沖門控信號輸入端輸出端計數器/定時器的組成:首先,CPU把控制字寫入控制寄存器,計數初值寫入初值寄存器;計數從初值開始,每當CLK脈沖信號出現一次,計數值在門控信號GATE控制下決定是否減1;當計數值減到0,從OUT端輸出規定的信號;CLK信號出現時,計數器是否減1,由門控信號GATE控制。一、8253A的內部結構和引腳信號8253的內部結構圖接CPU或系統總線一、8253A的內部結構和引腳信號123456789101112242322212019181716151413D7D6D5D4D3D2D1D0CLK0OU
5、T0GATE0GNDCLK1OUT1GATE1CLK2OUT2GATE2A1A0VCCWRRDCS82538253管腳圖 8253的三個計數通道在結構上和功能上完全一樣,每個通道均有兩個輸入引腳CLK和GATE,一個輸出信號 引腳OUT。8253 是24引腳雙列直插式芯片,它與CPU的接口引線如下: D7D0是數據線引腳,RD和WD分別是讀寫控制引腳,CS是片選信號。A1,A0是片內地址選擇引腳。 由CPU輸入的控制信號CS 、RD和WR 與A1,A0組合實現的功能見教材p246表9-5。一、8253A的內部結構和引腳信號 8253輸入信號組合的功能表CS RD WR A1 A0 功能 0 0
6、 0 1 0 0 1 對計數器A1A0設置計數初值 1 0 0 1 0 1 1 設置控制字或給一個命令 0 0 0 0 1 0 1 從計數器A1A0讀出計數值 1 0 一、8253A的內部結構和引腳信號8253作為定時器使用時,其定時時間計算公式為:例:在某系統中,8253的CLK上的計數脈沖頻率為0.5MHz,8253計數器的初值是n=500,則定時時間為多少?定時時間 = 時鐘脈沖周期tclk預置的計數初值n注意:8253 外部輸入引腳CLKi上的時鐘脈沖頻率不能大于2MHz。0.5MHz的時鐘脈沖周期為T=2s,則定時時間 = 2s 500=1ms一、8253A的內部結構和引腳信號在對8
7、253進行編程時,先由CPU向它寫控制字,來選定計數器通道,并規定所選計數器的工作方式。控制字格式:D7 D6 D5 D4 D3 D2 D1 D0 SC1 SC0 RW1 RW0 M2 M1 M0 BCD 00:選擇通道001:選擇通道110:選擇通道211:無效00:計數器鎖存01:讀寫低字節10:讀寫高字節11:先低,后高000:方式0001:方式1X10:方式2X11:方式3100:方式4101:方式51:BCD0:2進制BCD:00009999H; 二進制:0000FFFFH; BCD: 1200H=1200; 二進制:1200H=4608計數初值為0000時,如何計數?初值寫進去之后
8、,門控信號允許時,計數過程是:1、初值放入計數當前值寄存器2、CLK到來一個脈沖當前值寄存器減13、判斷當前值是否為0,如果不為0,返回2,否則當前一次計數結束。BCD:初值可以為00009999H; 當初值為0時,先減1得9999H,到最后減為0,進行了10000次計數,所以初值0相當于10000二進制:0000FFFFH; 初值0000H相當于65536CLK確定的情況下,一個定時器的最長定時時間=?對應的計數初值是?二、 8253的初始化步驟和門控信號的功能1. 初始化步驟:(1) 寫入控制字;(2) 按控制字要求寫入計數初值。計數初值N=fCLK/fOUT =TOUT/TCLK 設82
9、53的地址為3F0H、3F2H、3F4H、3F6H要求8253的計數器0工作于方式3,BCD碼計數,計數器初值n=1234H, 初始化程序為:MOVAL, 37HMOVDX, 3F6HOUTDX, ALMOVAL, 34HMOVDX, 3F0HOUTDX, ALMOVAL, 12HOUTDX, AL二、 8253的初始化步驟和門控信號的功能2. 門控信號控制功能:門控信號GATE的控制功能如教材P251表9-6所示,由表可知:方式0,4時:門控信號為電平觸發 方式1,5時:門控信號為上升沿觸發 方式2,3時:門控信號為電平或上升沿觸發三、 8253的工作方式工作方式決定以下內容:1)門控信號的
10、影響 高電平允許:當GATE=0,即使出現CLK,也不計數 方式0,2,3,4上升沿允許(上升沿觸發)方式1,5,2,3三、 8253的工作方式寫入控制字后, OUT的狀態計數過程中, OUT的狀態計數終了, OUT的狀態3)計數操作可否重復不可重復模式0,4自動重復模式2,3條件重復模式1,5工作方式決定以下內容:2) OUT信號的狀態三、 8253的工作方式1. 方式0:計數結束中斷方式特點:可作為INTR信號計數器只計數一遍;計數過程中,可由門控信號控制暫停計數; 在計數過程中可改變計數值。寫入新值后,計數器按新值重新開始計數三、 8253的工作方式2. 方式1:可編程單穩態輸出方式特點
11、:若計數值為N,則輸出脈沖寬度為N*CLK;計數到0,可由GATE上升沿再次觸發,輸出一個脈沖,不需重新賦值;若計數過程中,門控信號再次觸發,計數器在觸發信號的下一個CLK重新開始計數;若計數過程中,CPU改變計數值,但計數過程不受影響,再次觸發后,按新值重新計數。三、 8253的工作方式3. 方式2:比率發生器(分頻器)特點:計數器能連續工作;計數過程中,若GATE變低,計數器暫停工作,GATE變高后,計數器重新取出初值,開始計數;計數過程中,若寫入新的初值,對當前的計數過程無影響,但下一個計數過程,以新的初值開始計數;三、 8253的工作方式4. 方式3:方波發生器 特點與方式2相似,不同
12、的是:方式2輸出固定脈寬的脈沖,方式3輸出占空比為1:1的方波三、 8253的工作方式N值寫入后,如Gate為高,則下一個CLK開始計數,相當于軟件啟動;GATE=“1”,允許計數,GATE=“0”,禁止計數,因此,要做到軟件啟動,必須使GATE=“1”;特點:寫一次初值,只計一次;計到0時,產生低電平維持一個周期后變高計數過程中改變計數值,按新值重新計數到0;5. 方式4:軟件觸發選通三、 8253的工作方式6. 方式5:硬件觸發選通N值寫入后,計數器并不計數,當GATE的上升沿出現時,取出初值開始計數;計數過程中改變計數值,若沒有GATE的觸發,不影響計數過程,當計數到“0”后,若有GAT
13、E觸發,則按新的計數值計數.特點:三、 8253的工作方式6種工作方式主要區別: OUT輸出波形不同。 啟動計數器的觸發方式不同。 計數過程中門控信號GATE對計數操作的影響不同。有的工作方式具備“初值自動重裝”的功能。初值自動重裝的功能是:當計數值減到規定的數值(通常為0)后,計數初值將會自動地重新裝入計數器。三、 8253的工作方式6種工作方式小結:方式0:計數初值N寫入CR后,當GATE為高電平時,經過N個時鐘脈沖之后OUT由0到1跳變每寫一次初值僅僅計數一次方式1:計數初值N寫入CR后,由GATE上升沿觸發,OUT輸出一個負的單脈沖 單脈沖寬度T=N TCLK不必每次都寫初值。方式2:
14、計數初值N寫入CR后,當GATE為高電平時,輸入端每輸入N個時鐘脈沖,在輸出端出現一個負的時鐘脈沖 N分頻器。自動重裝入初值。三、 8253的工作方式6種工作方式小結:方式4:計數初值N寫入CR后, 觸發計數(此時GATE必須為高電平),經N個時鐘脈沖,輸出端產生選通負脈沖信號, 寬度= 1個CLK 只計一次方式3:計數初值N寫入CR后,當GATE為高電平時,n為偶數時OUT輸出一系列方波 (N分頻器) 。N值為奇數時,輸出矩形波,高低電平時間不同(差一個時鐘周期) 。自動重裝入初值。方式5:計數初值N寫入CR后,硬觸發(GATE輸入一個正脈沖)后,經N個時鐘脈沖, 輸出端產生選通負脈沖信號,
15、寬度= CLK不必每次都寫初值四、8253的應用舉例 實際應用例子的解題思路:確定端口地址確定計數初值-確定工作方式確定電路圖編程(寫入控制字、初值)8253的編程只需要初始化。初始化之后,芯片自動工作,無需程序干擾注意:用到多個通道時,對每個通道都要依次寫控制字,寫初值。接口芯片地址注意:端口地址及片選信號的產生選擇8253A的A1、A0: 與8086CPU的A2、A1相連;與8088CPU的A1、A0相連。A1A1A0A08位80888253端口地址:A1 A00 00 11 01 1X0HX1HX2HX3H80868253低8位A2A1A1A0A2 A1A00 00 11 01 1000
16、0端口地址:X0HX2HX4HX6H例1:在某個以8086為CPU的系統中使用了一塊8253芯片,通道的基地址為310H,所用的時鐘脈沖頻率為1MHz。要求3個計數通道分別完成以下功能:1)計數器0工作于方式3,輸出頻率為2KHz的方波; 2)計數器1產生寬度為480 s的單脈沖;3)計數器2用硬件方式觸發,輸出單脈沖,時間常 數為26。通道的地址分別為310H, 312H, 314H, 316H。1)計數器0:方式3,OUT0輸出方波N0= fCLK/fOUT = 1MHz /2KHz =106/2 103 = 5002)計數器1:方式1,OUT1輸出單脈沖N1= TOUT/TCLK = 4
17、80 s / 1 s = 480例1:3)計數器2:模式5,OUT2輸出門控單脈沖, N2= 26A9A0=1100010XX0 310H316H480us寬單脈沖CLK0808674LS1388253CLK1CLK2GATE0OUT0GATE1OUT1GATE2OUT21MHzCSA1A0RDWRD7 D0D7 D0WRRDA1A2A0A3A4ABCG2BG2AG1A5A6A7A8A9M/IO2KHzY4負脈沖+5V;通道0方式字及初值MOV DX,316HMOV AL,00110111BOUT DX,ALMOV DX,310HMOV AL,00HOUT DX,ALMOV AL,05H;通道
18、1方式字及初值MOV DX,316HMOV AL,01110011BOUT DX,ALMOV DX,312HMOV AL,80HOUT DX,ALMOV AL,04HOUT DX,AL;通道2的方式字及初值MOV DX,316HMOV AL,10011011BOUT DX,ALMOV DX,314HMOV AL,26HOUT DX,AL8253的應用舉例例2:時鐘脈沖以2MHz輸入8253,實現每5秒定時中斷(設8253端口地址40H46H)分析:按照公式計數初值n=Tout/Tclk=107,而初值計數器只有16位,最大計數次數為65536,所以一個計數器不行,所以需要兩個計數器串聯,一個計
19、數器的輸出作為另一個計數器的輸入。連接如圖:OUT0GATE0CLK0OUT1GATE1CLK1+5V+5V2MHz每5秒產生一個脈沖先確定端口地址確定計數初值確定電路圖確定工作方式編程(寫入控制字、初值)級聯時每個計數器初值的計算N0=Tout0/Tclk0=Tout0/Tout1=Tout0/(N1*Tclk1)N0*N1=Tout0/Tclk1= 107采取級聯后,要使得級聯的兩個計數器的計數初值的乘積為107,所以兩個計數器的初值N1、N2可以多種取值,只要N1*N2= 107即可。可以取N1=10000,N2=1000首先,選擇工作方式要實現每5秒,即自動循環計數,那么方式 0:只計
20、數一次的方式不符合 1:每次要用GATE上升沿才能觸發計數的方式不行 2:只要Gate為高電平就可以自動循環計數,滿足 3:類似方式2,也滿足 4:Gate為高電平時,計數一次 5:必須用Gate上升沿才能觸發計數,同1例2:計數器1:方式2,OUT1每5ms輸出一個脈沖,初值 N1=定時時間/Tc=5ms/0.5 s=10000計數器0:方式2,OUT0 每5s輸出一個脈沖,初值 N2=定時時間/Tc=5s/5ms=1000OUT0GATE0CLK0OUT1GATE1CLK1+5V+5V2MHz每5秒產生一個脈沖5ms產生一個脈沖計算初值:OUT1每5s輸出一個脈沖,初值 N=定時時間/Tclk=5s/0.5 s=107 65535START: MOV AL, 01110100B ; 定時器1
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 設施農業園區管理制度
- 設計公司成本管理制度
- 設計管理中心管理制度
- 評估機構招聘管理制度
- 診所客戶服務管理制度
- 診療機構眼科管理制度
- 財務管理規章管理制度
- 財務風險聯合管理制度
- 貨物出入公司管理制度
- 貨運裝卸人員管理制度
- 護理安全管理課件
- 2025年甘肅省隴南市事業單位招聘247人筆試參考題庫及答案詳解一套
- 2025年心理健康指導師職業資格考試試題及答案
- 石油行業采購物資質量事故案例規律分析課件
- 七年級下冊道德與法治期末復習必刷主觀題含答案
- 2024年廣東省揭西縣教師招聘考試《教育學和心理學基礎知識》真題庫及答案
- 2025年新高考2卷(新課標Ⅱ卷)英語試卷(含答案解析)
- 北京市順義區2023-2024學年六年級下學期數學期末試卷(含答案)
- 公司安全廉政管理制度
- JG/T 283-2010膨脹?;⒅檩p質砂漿
- 電力法規考試試題及答案
評論
0/150
提交評論