版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
浙江工業(yè)大學計算機學院1內容回顧I/O端口編址編址方式:統(tǒng)一編址、獨立編址,各自的優(yōu)缺點。獨立編址下的I/O指令:直接尋址、間接尋址。I/O端口地址分配系統(tǒng)板上的I/O接口芯片端口地址分配。擴展槽上的I/O接口控制卡端口地址分配。I/O端口地址譯碼固定式譯碼:門電路,譯碼器(3-8,2-4,4-16譯碼器)??蛇x式譯碼:比較器,地址開關,跳線等。23第三章定時/計數(shù)技術8253/8254編程與應用48253/8254定時/計數(shù)器28253/8254工作方式3PC機的定時/計數(shù)器應用5定時/計數(shù)基本概念1(1)定時與計數(shù)定時:設定的時間到計算機系統(tǒng)是通過定時器、按照一定的節(jié)奏(時間間隔)來進行工作的。如:系統(tǒng)的日歷時鐘、存儲器的動態(tài)刷新、應用系統(tǒng)的定時中斷、定時查詢與檢測等。計數(shù)生產線上產品的計數(shù),如藥片、飲料等。
3.1定時/計數(shù)基本概念
4定時和計數(shù)實質上都是計數(shù)。定時是通過記錄高精度晶振的脈沖個數(shù),輸出準確的時間間隔。微機系統(tǒng)中常需要定時信號為處理器或外設提供時間基準;或對外部事件進行計數(shù)。例:分時系統(tǒng)的程序切換,向外設周期性發(fā)控制信號。微機系統(tǒng)中的定時分為以下2類:內部定時:是計算機本身運行的時間基準或時序關系。計算機的每個操作都嚴格按照固定的時間節(jié)拍來進行。外部定時:外設與CPU,或外設與外設之間的時間基準和時序關系。5重點
(2)微機系統(tǒng)中的定時與計數(shù)軟件定時通過軟件編程,循環(huán)執(zhí)行一段程序來實現(xiàn)。優(yōu)點:無需專用硬件,方法簡單、靈活。缺點:CPU開銷大,效率低;定時不精確。適用于定時時間不長、精度要求不高的場合。6//80c51軟件定時程序voiddelayms(intxms){for(inti=xms;i>0;i--)for(intj=110;j>0;j--);}delayms(500);//延時約500ms
(3)微機中的定時方法不可編程的硬件定時采用分頻器、單穩(wěn)電路或簡易定時電路來實現(xiàn)。例:簡易定時炸彈、空調遙控器。優(yōu)點:不占用處理器時間,電路也不復雜。缺點:缺少靈活性,電路一旦設計好,其定時時間和范圍就不能改變。7可編程的硬件定時用可編程定時器芯片實現(xiàn),定時時間軟件可調。優(yōu)點:軟、硬件結合,克服了純軟件和純硬件定時的缺點。不占用CPU資源、定時準確、使用靈活。常用的可編程定時芯片:
8253:5MHz。8254:10MHz。8兩者在芯片功能、外形和引腳上大同小異,8254附加功能:讀當前計數(shù)單元;讀狀態(tài)寄存器內容。9內容概要8253/8254編程與應用48253/8254定時/計數(shù)器28253/8254工作方式3PC機的定時/計數(shù)器應用5定時/計數(shù)基本概念1定時與計數(shù)基本概念微機中的內部與外部定時3種常用的定時方法(1)總體結構
3.28253/8254定時/計數(shù)器
10數(shù)據(jù)總線緩沖器三態(tài)雙向8位寄存器,與系統(tǒng)數(shù)據(jù)
總線相連,可寄存以下3種數(shù)據(jù):CPU向8253/8254寫入的工作方式命令字;CPU向計數(shù)寄存器寫入的計數(shù)初值;從計數(shù)器讀出的當前計數(shù)值。讀/寫控制邏輯接收CPU發(fā)來的讀、寫、片選和地址信號,選擇相應的寄存器,進行讀寫操作。11控制字寄存器接收CPU發(fā)來的控制字(只寫)。
控制字的功能:選擇計數(shù)器;確定計數(shù)器的工作方式;確定計數(shù)初值的格式(高低8位或16位);確定計數(shù)格式:二進制或BCD格式。計數(shù)器0~23個結構相同、相互獨立的計數(shù)器。每個計數(shù)器包含一個16位初值寄存器、一個16位減1計數(shù)器和一個16位輸出鎖存器。1213計數(shù)開始前需寫入初值。此后該值被送入減1計數(shù)器。MAX=216-1。計數(shù)過程中,初值寄存器中的值保持不變。條件滿足時,每個CLK計數(shù)減1。減為0時,OUT端輸出波形。鎖存減1計數(shù)器的值,以供讀出和查詢。若想獲取當前計數(shù)值,不能直接從減1計數(shù)器讀出,而是必須先鎖存,再從鎖存器讀出。DIP24封裝,單一+5V供電。內含3個獨立的定時/計數(shù)器(T/C),各自具有獨立的時鐘信號CLK、門控信號GATE和輸出信號OUT??赏ㄟ^編程,分別設定各定時/計數(shù)器的工作方式。14
(2)8253/8254外部引腳定義數(shù)據(jù)總線D7~D0用于將8253/8254與系統(tǒng)總線相連,供CPU向8253/8254讀寫數(shù)據(jù)、命令和狀態(tài)信息。內部端口地址譯碼信號A1A0用于片內端口選擇。A1A0=00,選擇計數(shù)器0A1A0=01,選擇計數(shù)器1A1A0=10,選擇計數(shù)器2A1A0=11,選擇控制端口15片選信號CS輸入信號,低有效,由CPU輸出的地址線譯碼產生。讀寫信號RD和WR輸入信號,低有效。分別連接系統(tǒng)總線的IOR和IOW。時鐘信號CLK0~CLK3各自獨立。定時或計數(shù)時,每個CLK下降沿,計數(shù)減1。16門控信號GATE0~GATE3各自獨立。作用:允許或禁止計數(shù)過程。計數(shù)輸出信號OUT0~OUT3各自獨立。計數(shù)減為0時,OUT端輸出一個電平或脈沖信號,指示定時或計數(shù)已到。1718━CS━RD━WRA1A0操作地址01000
向計數(shù)器0寫入“計數(shù)初值”40H01001向計數(shù)器1寫入“計數(shù)初值”41H01010
向計數(shù)器2寫入“計數(shù)初值”42H01011
向控制寄存器寫入“方式字”43H00100從計數(shù)器0讀出“當前計數(shù)值”40H00101從計數(shù)器1讀出“當前計數(shù)值”41H00110從計數(shù)器2讀出“當前計數(shù)值”42H00111
無操作(三態(tài))1××××
禁止(三態(tài))011××
無操作(三態(tài))
(3)8253/8254讀寫操作及端口地址19內容概要8253/8254編程與應用48253/8254定時/計數(shù)器28253/8254工作方式3PC機的定時/計數(shù)器應用5定時/計數(shù)基本概念18253/8254總體結構8253/8254外部引腳8253/8254地址分配8253/8254的每個計數(shù)器有6種工作方式:方式0——計數(shù)期間低電平輸出(GATE高電平時計數(shù))方式1——計數(shù)期間低電平輸出(GATE上升沿重新計數(shù))方式2——周期性輸出負脈沖方式3——周期性輸出方波方式4——軟件觸發(fā)輸出單脈沖方式5——硬件觸發(fā)輸出單脈沖6種工作方式的區(qū)別在于:輸出波形不同。啟動計數(shù)器的觸發(fā)方式不同。計數(shù)過程中門控信號GATE對計數(shù)操作的影響不同。
3.38253/8254工作方式
20寫方式字和初值(基本計數(shù)過程)寫入方式字0后,WR的上升沿使OUT信號變低。寫入計數(shù)初值后,WR的
將初值寫入初值寄存器,在下一個CLK
,才將計數(shù)初值寫入減1計數(shù)器。之后每個CLK
,計數(shù)減1。減為0時,OUT變高。21
(1)方式0——計數(shù)期間輸出低電平(GATE高電平計數(shù))門控信號GATE為高時允許計數(shù);為低時暫停計數(shù),其計數(shù)值保持不變。當GATE再次變高時,計數(shù)器從暫停處繼續(xù)計數(shù)。GATE信號的變化不影響OUT信號的狀態(tài)。22重新計數(shù)
計數(shù)期間,若再次寫入計數(shù)初值,則計數(shù)器立即按新的初值重新計數(shù)。23寫方式字和初值(基本計數(shù)過程)寫入方式字1后,WR的
使OUT信號變高。寫入初值后,若無GATE
,則OUT持續(xù)為高;若有GATE
,則在GATE
后的下一個CLK
,OUT變低。之后每個CLK
,計數(shù)減1。減為0時,OUT變高。24
(2)方式1——計數(shù)期間輸出低電平(GATE
重新計數(shù))門控信號計數(shù)期間,若GATE信號又出現(xiàn),則計數(shù)器重新裝入初值,開始新的計數(shù)。25重新計數(shù)計數(shù)期間,若重新寫入初值,須等當前計數(shù)值計滿到0,且GATE再次出現(xiàn)
時,才按新的初值重新計數(shù)。26寫方式字和初值寫入方式字2后,WR的使OUT信號變高。寫入初值后,在CLK
進行減1計數(shù)。減為1時,OUT變低并維持一個周期,然后又變高,并自動裝入初值重新計數(shù)。27
(3)方式2——周期性輸出負脈沖該方式能連續(xù)工作,且輸出固定頻率的脈沖,因此稱之為頻率發(fā)生器或分頻器。門控信號GATE為高,允許計數(shù);否則,終止計數(shù)。待GATE恢復為高后,計數(shù)器將從初值重新計數(shù)。28重新計數(shù)計數(shù)期間,若重新寫入初值,則不影響正在進行的計數(shù)過程,必須等到計數(shù)器減到1之后,才裝入新的初值,并按照新的初值進行計數(shù)。29與方式2類似,都具有自動裝入初值、連續(xù)計數(shù)的功能。差別:方式3下OUT端連續(xù)輸出比例為1:1或近似1:1的方波,因此稱為方波發(fā)生器。相同點回顧寫入方式字后,OUT信號變高。寫入初值后,進行減1計數(shù)。方式2:減為1時,OUT端輸出一個周期的負脈沖后變高,重新裝入初值繼續(xù)計數(shù)。GATE同前:高時計數(shù);低時停止;恢復后重新計數(shù)。重新計數(shù)同前:重裝初值后,須等上輪計數(shù)完成后再按新的初值計數(shù)。30
(4)方式3——周期性輸出方波初值為偶數(shù)時寫入方式字后,OUT信號變高。寫入初值后開始減1計數(shù);減到n/2時,OUT變低繼續(xù)計數(shù);減到0時,OUT變高,并自動裝入初值重新計數(shù)。31OUT端連續(xù)輸出占空比為1/2的方波。占空比:脈沖序列中,正脈沖的持續(xù)時間與脈沖總周期的比值。初值為奇數(shù)時寫入方式字后,OUT信號變高。寫入初值后開始減1計數(shù);減到(n-1)/2時,OUT變低繼續(xù)計數(shù);減到0時,OUT變高并自動裝入初值,重新計數(shù)。32寫方式字和初值寫入方式字4后,OUT信號變高。寫入初值后,進行減1計數(shù)。減為0時,OUT端輸出一個CLK周期的負脈沖,然后恢復為高電平。不能自動裝入初值。要想啟動下一次計數(shù),需重新寫入初值,由軟件觸發(fā)計數(shù)器開始工作。33
(5)方式4——軟件觸發(fā)輸出單脈沖門控信號GATE高電平時,允許計數(shù);否則,終止計數(shù)。待GATE恢復為高后,計數(shù)器將從初值重新進行計數(shù)。34重新計數(shù)計數(shù)期間,若重新寫入初值,則不會影響正在進行的計數(shù)過程,必須等到計數(shù)器減到0之后,才裝入新的初值,并按照新的初值進行計數(shù)。計數(shù)完畢后若無軟件再次觸發(fā),計數(shù)器將停止工作。35基本原理:類似方式4,硬件觸發(fā)寫入方式字5后,OUT信號變高。寫入初值后并不立即計數(shù),而是等GATE有
后才開始計數(shù)。減為0時,OUT端輸出一個周期的負脈沖,然后變高。計數(shù)過程中或計數(shù)結束后,若GATE再次出現(xiàn)上升沿,則計數(shù)器裝入初值重新進行計數(shù)。36
(6)方式5——硬件觸發(fā)輸出單脈沖由于計數(shù)的開始由GATE觸發(fā),而GATE由硬件產生,因此該方式稱為硬件觸發(fā)。376種工作方式比較38方式功能門控情況OUT輸出波形
0計數(shù)期間低電平輸出(GATE高電平計數(shù))高電平寫入初值后OUT變低,且開始減1計數(shù),經過n個CLK后,OUT變高。(不連續(xù))1計數(shù)期間低電平輸出(GATE↑重新計數(shù))上升沿輸出寬度為n個周期的低電平。(不連續(xù))2周期性輸出負脈沖高電平連續(xù)輸出周期為n個CLK、寬度為1個CLK的負脈沖。(自動連續(xù))3周期性輸出方波高電平連續(xù)輸出比例為1:1或近似1:1的方波。(自動連續(xù))4軟件觸發(fā)輸出單脈沖高電平寫入初值后OUT變高,經n個CLK后,輸出1個CLK的負脈沖。(軟件觸發(fā)才繼續(xù))5硬件觸發(fā)輸出單脈沖上升沿寫入初值后OUT變高,有門控信號后才計數(shù),經n個CLK后輸出1個CLK的負脈沖。(GATE上升沿才可再次觸發(fā))方式0(GATE電平控制)與方式1(GATE↑控制)比較相似點輸出波形相似:計數(shù)期間OUT為低;計數(shù)到0時變高。均無自動裝載能力。不同點方式0寫入初值后立即開始計數(shù);方式1需等GATE
才計數(shù)。方式0中GATE信號電平控制計數(shù)過程:高電平計數(shù),低電平暫停,恢復為高后繼續(xù)計數(shù);方式1中,GATE
可觸發(fā)重新計數(shù)。方式0中重新裝入初值后立即按新值計數(shù);方式1中重新裝入初值后需等上輪計數(shù)完成且GATE有,才按新值計數(shù)。3940方式0方式1方式2(分頻器)與方式3(方波發(fā)生器)比較相似點均具有自動裝載能力,OUT端均可輸出連續(xù)波形。輸出信號的頻率相同,均為fclk/初值。不同點方式2:計數(shù)過程中OUT端輸出高電平,計數(shù)減為1時輸出一個CLK周期的負脈沖。方式3:計數(shù)過程中,OUT端輸出比例為1:1(初值為偶數(shù))或近似1:1(初值為奇數(shù))的方波。4142方式2方式3方式4(軟件觸發(fā))與方式5(硬件觸發(fā))比較相似點輸出波形相似:計數(shù)過程中OUT為高,計數(shù)減為0時輸出一個CLK寬度的負脈沖。均無自動裝載能力。不同點方式4需由軟件觸發(fā)(寫計數(shù)初值)計數(shù)。方式5需由硬件觸發(fā)(GATE上升沿)計數(shù)。4344方式5方式6【3-1】計數(shù)器1工作在方式1,計數(shù)初值為10。門控信號GATE1和時鐘信號CLK1的輸入如下圖所示,請問輸出脈沖T的寬度是多少?45解:(1)方式1特點回顧:
計數(shù)期間OUT輸出低電平,GATE上升沿觸發(fā)計數(shù)。46(2)計算輸出脈沖寬度
由方式1的特點可知,OUT輸出脈沖中低電平的持續(xù)時間由計數(shù)初值決定。T=計數(shù)初值×CLK1的脈沖周期=10×[1/(5×106)]=2μs47【3-2】如圖所示,計數(shù)器1工作在方式3,計數(shù)初值為15。請詳細刻畫OUT1上的輸出波形特性。48解:(1)方式3特點
周期性輸出方波(1:1或近似1:1)。49(2)輸出波形特性
計數(shù)初值n=15為奇數(shù),故輸出波形的一個周期中,高電平的持續(xù)時間為(n+1)/2個CLK,低電平的持續(xù)時間為(n-1)/2個CLK。所以有:
Tclk1=1/2MHz≈0.5μsT1=(n+1)/2×Tclk1=8×0.5≈4μsT2=(n-1)/2×Tclk1=7×0.5≈3.5μsT=T1+T2=4+3.5≈7.5μs
故輸出波形的特性為:輸出總周期約為7.5μs的方波,其中一個周期中高電平的持續(xù)時間約為4μs,低電平的持續(xù)時間約為3.5μs。50【3-3】如圖所示,計數(shù)器1工作在方式4。為使該計數(shù)器10μs后在OUT端產生一個選通信號,請問應裝入的計數(shù)初值是多少?51解:(1)方式4特點回顧
軟件觸發(fā)輸出單個負脈沖。52寫入方式字后,OUT變高。寫入初值后,開始減1計數(shù)。減為0時,輸出一個負脈沖。(2)計算計數(shù)初值
已知:計數(shù)時間Tout=計數(shù)時鐘周期Tclk×計數(shù)初值,
故:
計數(shù)初值=Tout/Tclk=10μs/(1/2MHz)=10×10-6×2×106
=2053【3-4】已知計數(shù)器0工作在方式0,計數(shù)初值為100。GATE0和CLK0信號的時間關系如圖所示。試計算T0的輸出端出現(xiàn)正跳變時的延遲時間TD。54解:(1)方式0特點回顧
計數(shù)期間輸出低電平,GATE高電平計數(shù)。55寫入方式字后,OUT變低。寫入初值后,開始減1計數(shù)。減為0時,OUT變高。GATE=1計數(shù);GATE=0暫停計數(shù)。GATE恢復為高后繼續(xù)計數(shù)。(2)OUT0的持續(xù)時間計算正常情況下(GATE0保持高電平),OUT0持續(xù)為低的時間共為N個時鐘脈沖寬度。N為計數(shù)初值。實際計數(shù)期間,GATE0暫停計數(shù)了2個時鐘周期,故輸出端OUT0持續(xù)低電平的總寬度為:TD
=(N+2)×Tclk0=(100+2)×(1/2MHz)=102/(2×106)=51μs
5657內容概要8253/8254編程與應用48253/8254定時/計數(shù)器28253/8254工作方式3PC機的定時/計數(shù)器應用5定時/計數(shù)基本概念16種工作方式的差異:輸出波形、計數(shù)觸發(fā)方式、門控影響。8253/8254是可編程接口芯片,使用時必須對其進行初始化編程。
3.48253/8254編程與應用
581.方式字2.計數(shù)初值方式字的作用指定使用哪個計數(shù)器。指定某個計數(shù)器的工作方式。指定計數(shù)初值的長度、裝入順序以及計數(shù)值的碼制。指定是向計數(shù)器寫入初值,還是鎖存其當前計數(shù)值。方式字的分類8253/8254方式控制字8254讀回控制字、8254狀態(tài)字59
(1)方式字8253/8254方式命令字的格式60D7D6D5D4D3D2D1D000:計數(shù)器001:計數(shù)器110:計數(shù)器211:8253不用計數(shù)器00:鎖存當前值01:寫初值的低8位,高8位置010:寫初值的高8位,低8位置011:先寫低8位,后寫高8位讀寫格式000:方式0001:方式1×10:方式2×11:方式3100:方式4101:方式5工作方式0:二進制編碼1:BCD編碼數(shù)制8254讀回控制字既能鎖存計數(shù)值,又能鎖存狀態(tài)信息以供CPU讀回。6111:表示讀回控制字0表示鎖存計數(shù)值,以便CPU讀取0表將狀態(tài)信息鎖存入狀態(tài)寄存器選擇要鎖存的計數(shù)器D1=1,選計數(shù)器0D2=1,選計數(shù)器1D3=1,選計數(shù)器2恒011COUNTSTATUSCNT2CNT1CNT00D7D6D5D4D3D2D1D08254狀態(tài)字高2位表示計數(shù)器內部的工作狀態(tài);低6位為接收的方式字對應的內容。62OUT端的輸出狀態(tài)。1:高電平0:低電平0表計數(shù)初值已裝入減1計數(shù)器。讀寫格式00:鎖存01:讀寫低8位10:讀寫高8位11:先低后高工作方式000:方式0;001:方式1×10:方式2;×11:方式3100:方式4;101:方式5OUTNULLCOUNTRW1RW2M2M1M0BCDD7D6D5D4D3D2D1D00:二進制編碼1:BCD編碼計數(shù)初值的計算8253/8254是減1計數(shù)器,計數(shù)初值決定了定時的長短。定時時間Tout=計數(shù)時鐘周期TCLK×計數(shù)初值n,故舉例已知8253的計數(shù)脈沖頻率為2MHz,若要定時4ms時間,則計數(shù)初值n=8000。63
(2)計數(shù)初值寫方式字將方式字送入控制端口,其對應的A1A0=11。寫計數(shù)初值將計數(shù)初值寫入相應的計數(shù)器端口。計數(shù)器0的初值寫入A1A0=00對應的端口。計數(shù)器1的初值寫入A1A0=01對應的端口。計數(shù)器2的初值寫入A1A0=10對應的端口。64
(3)8253/8254初始化編程與應用65━CS━RD━WRA1A0操作地址01000
向計數(shù)器0寫入“計數(shù)初值”40H01001向計數(shù)器1寫入“計數(shù)初值”41H01010
向計數(shù)器2寫入“計數(shù)初值”42H01011
向控制寄存器寫入“方式控制字”43H00100從計數(shù)器0讀出“當前計數(shù)值”40H00101從計數(shù)器1讀出“當前計數(shù)值”41H00110從計數(shù)器2讀出“當前計數(shù)值”42H00111
無操作(三態(tài))1××××
禁止(三態(tài))011××
無操作(三態(tài))【3-5】設計數(shù)器的端口地址為40H~43H。已知:選擇計數(shù)器T2,工作在方式3,計數(shù)初始值為533H,采用二進制計數(shù)。請寫出初始化程序段。66
MOVAL,10110110B;計數(shù)器T2的初始化命令字OUT43H,AL;寫入命令寄存器MOVAX,533H;計數(shù)初值OUT42H,AL;先送低字節(jié)到計數(shù)器T2MOVAL,AH;取高字節(jié)送入ALOUT42H,AL;后送高字節(jié)到計數(shù)器T2【3-6】設8253計數(shù)器的端口地址為40H~43H。請編寫程序,實現(xiàn)讀出并檢查計數(shù)器T1的當前值是否為全1(假定計數(shù)值只有低8位)。
注:要遵循“先鎖存、后讀取當前值”的原則。67
L:MOVAL,01000000B;計數(shù)器T1的鎖存命令
OUT43H,AL;寫入命令寄存器
INAL,41H;讀計數(shù)器T1的當前計數(shù)值
CMPAL,0FFH;比較
JNEL;不是全“1”,再讀
HLT;是全“1”,暫?!?-7】設計數(shù)器的端口地址為40H~43H。計數(shù)器T2工作在方式1,進行8位二進制計數(shù),計數(shù)初值低8位為BYTEL。請寫出初始化程序段。68MOVDX,43H;命令口
MOVAL,10010010B;方式字
OUTDX,ALMOVDX,42H;T2數(shù)據(jù)口
MOVAL,BYTEL;低8位,高8位自動補0
OUTDX,AL當?shù)刂贰?FFH時,也可用間接尋址方式?!?-8】設計數(shù)器的端口地址為40H~43H。計數(shù)器T1工作在方式4,進行8位二進制計數(shù),并且只裝入高8位計數(shù)初值BYTEH。請寫出初始化程序段。69MOVAL,01101000B;方式字
OUT43H,ALMOVAL,BYTEH;高8位,低8位自動補0
OUT41H,AL當?shù)刂贰?FFH時,直接尋址更明了。【3-9】設某微機系統(tǒng)8253/8254計數(shù)器的端口地址為60H~63H。已知:計數(shù)器0:方式0,計數(shù)初值0A8H,按二進制計數(shù);計數(shù)器1:方式1,計數(shù)初值為2000,按BCD碼計數(shù);計數(shù)器2:方式3,初值為1B3CH,按二進制計數(shù)。
請寫出初始化程序段。70解:寫方式字:控制端口,A1A0=11T0:方式0,初值0A8H,二進制計數(shù)。T1:方式1,初值2000,BCD碼計數(shù);T2:方式3,初值1B3CH,二進制計數(shù)。寫計數(shù)初值:寫入對應端口T0:將初值A8H寫入端口60H;(高8位自動補0)T1:將初值20H寫入端口61H;(低8位自動補0)T2:將初值1B3CH寫入端口62H。(先低8位,后高8位)7100010000B=10H01100011B=63H10110110B=B6H72MOVAL,10H;寫T0控制字
OUT63H,ALMOVAL,0A8H;向T0寫低8位計數(shù)初值
OUT60H,AL
MOVAL,63H;寫T1控制字
OUT 63H,ALMOVAL,20H;向T1寫高8位計數(shù)初值
OUT61H,ALMOVAL,0B6H ;寫T2控制字
OUT63H,ALMOVAL,3CH;向T2寫低8位計數(shù)初值
OUT62H,ALMOVAL,1BH;向T2寫高8位計數(shù)初值
OUT62H,AL【3-10】針對下圖,按要求編寫初始化程序段。計數(shù)器0:方式0,計數(shù)初值1234H,按二進制計數(shù);計數(shù)器1:方式2,計數(shù)初值為100,按BCD碼計數(shù);計數(shù)器2:方式4,初值為1FFFH,按二進制計數(shù)。73解:(1)首先確定8253的端口地址。計數(shù)器0、1、2的地址分別是40H、44H和48H;方式字的端口地址是4CH。74A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A00000000001000000000000000100010000000000010010000000000001001100
(2)確定8253三個計數(shù)器的工作方式T0:方式0,初值1234H,二進制計數(shù)。T1:方式2,初值100,BCD碼計數(shù);T2:方式4,初值1FFFH,二進制計數(shù)。7500110000B=30H01100101B=65H10111000B=B8H
(3)編寫程序段76MOVAL,30H;寫T0的方式字OUT4CH,ALMOVAL,34H;寫T0的計數(shù)初值1234HOUT40H,ALMOVAL,12HOUT40H,AL77MOVAL,0B8H;寫T2的方式字OUT4CH,ALMOVAL,0FFH;寫T2的計數(shù)初值1FFFHOUT48H,ALMOVAL,1FHOUT48H,ALMOVAL,65H;寫T1的方式字OUT4CH,ALMOVAL,01H;寫T1的計數(shù)初值0100HOUT44H,AL【3-11】請采用8253設計一個可以重復進行的計數(shù)系統(tǒng),每按脈沖開關100下,點亮一下LED發(fā)光二極管。其它時間LED發(fā)光二極管不亮。解:(1)硬件電路分析與設計該計數(shù)器的OUT端可用于控制LED發(fā)光二極管亮或滅。該計數(shù)器的工作方式應能支持連續(xù)計數(shù):方式2
或3。8253中某個計數(shù)器的CLK端接開關,每按一下產生一個CLK下降沿,用其進行計數(shù)。初值可設為100。該計數(shù)器的GATE端可恒接高電平。該8253芯片的CS端應接一個譯碼電路,譯碼范圍為40H~43H。7879(2)軟件編程80MOVAL,00100101H;T0,方式2,
BCD計數(shù)OUT43H,ALMOVAL,01H;初值100,高位為1OUT40H,AL【3-12】分頻器應用。某微機系統(tǒng)中8253/8254的端口地址為250H~253H,使用該接口芯片將2MHz的脈沖變成1Hz的脈沖。
解:(1)計數(shù)初值
N=2000000>216=65535,超出了一個計數(shù)器的計數(shù)范圍,故用一個計數(shù)器無法實現(xiàn)??煽紤]用2個計數(shù)器級聯(lián)來實現(xiàn)。第一個計數(shù)器的分頻結果作為第2個計數(shù)器的輸入,如圖所示。8182T0工作方式3,其輸出作為T1的時鐘輸入;T1可工作在方式2或方式3。只要設計好計數(shù)初值,即可輸出1Hz的脈沖。83(2)計數(shù)初值的拆分設T0和T1的計數(shù)初值分別為N0和N1,則有:即:總計數(shù)初值N=2000000可拆分為兩個計數(shù)器初值N0和N1的乘積??扇我獠鸱?,只要保證N0,N1<65535
即可。這里可拆分為N0=400,N1=5000,并采用BCD計數(shù)。
(3)程序代碼段84MOVAL,27H;T0的方式字:0010
0111MOVDX,253HOUTDX,ALMOVAL,04H;
T0的計數(shù)初值400MOVDX,250HOUTDX,ALMOVAL,65H;T1的方式字:0110
0101MOVDX,253HOUTDX,ALMOVAL,50H;
T1的計數(shù)初值5000MOVDX,251HOUTDX,AL【3-13】用8253定時器來控制一個LED發(fā)光二極管的亮滅,要求點亮10秒鐘后再熄滅10秒鐘,依次交替。已知有一個2MHz的時鐘源,8253各端口的地址為81H、83H、85H和87H,請設計電路,并給出初始化程序段。解:(1)計數(shù)初值分析與電路設計輸入時鐘頻率2MHz,周期為Tclk=1/2MHz。輸出信號周期為Tout=20s。若用一級定時/計數(shù)器來實現(xiàn),則初值為:N>65535,1個計數(shù)器無法實現(xiàn)。須用2個計數(shù)器級聯(lián)。8586T0可工作方式3,它輸出的方波可作為T1的時鐘輸入;T1可工作在方式3(題目要求)。N=40000000,可拆分為N0=5000,N1=8000,采用BCD計數(shù)。
(2)初始化程序段87MOVAL,0010
0111B;T0的方式字:OUT87H,ALMOVAL,50H;
T0的計數(shù)初值5000OUT81H,ALMOVAL,0110
0111B;T1的方式字OUT87H,ALMOVAL,80H;
T1的計數(shù)初值8000OUT83H,AL脈寬調制原理及其應用
工業(yè)上常需對交/直流電機進行轉速的調節(jié)??捎靡粋€開關電源對電機供電,通過控制電源開、關的時間比例,就可控制輸出的有效電壓,從而控制電動機的轉速。該方法就是脈寬調制(PWM,PulseWidthModulation),即輸出周期固定、占空比可變的脈沖信號?!?-14】某系統(tǒng)8253/8254的端口地址為250H~253H。T0工作在方式2,其輸出端OUT0接到T1的GATE1端。T1工作在方式1,OUT1用做脈寬調制的控制端。CLK0和CLK1均接2MHz的時鐘(周期0.5μs)。試分析其脈寬調制原理,并給出相應的程序段。88898253端口地址為250H~253H。T0為方式2,T1為方式1,OUT1為PWM控制端。CLK0和CLK1為2MHz。90分析:(1)原理分析T1工作在方式1,計數(shù)時輸出低電平,GATE有↑時,重新計數(shù)。而↑由T0提供(T0方式2,周期性輸出負脈沖)。結論1:T1輸出端OUT1的周期與GATE1一致,而GATE1又連接到OUT0,故OUT1與OUT0具有相同的周期。結論2:OUT1用作PWM的控制脈沖,PWM脈沖的周期由T0決定,高低電平的寬度和比例由T1決定。91設PWM的脈沖周期為5ms,由于其周期由T0決定,故T0的初值為:N0=Tout0/Tclk0=5ms/(1/2MHz)=10000。PWM脈沖的低電平寬度由T1控制,T1工作在方式1。設T1的計數(shù)初值為N(N
可在程序中設置和修改),則T1
的每個周期內,低電平的持續(xù)時間為Tclk×N,高電平的持續(xù)時間為Tclk×(10000-N),占空比為(10000-N)/10000。N
越大,對應的有效直流電壓越小。92(2)程序段MOVDX,253HMOVAL,34H;T0方式字:0011
0100,方式2OUTDX,ALMOVDX,250H;T0
初值MOVAX,10000;為何不用BCD碼?
OUTDX,ALMOV
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年繁華地段辦公樓租賃協(xié)議3篇
- 2025年度大數(shù)據(jù)處理技術服務費合同樣本3篇
- 2025年度旅游項目開發(fā)承包合同3篇
- 別墅庭院景觀設計施工合同
- 前臺客戶滿意度提升方案
- 招投標行業(yè)規(guī)范講座
- 橡膠制品業(yè)自購料采購管理辦法
- 學校安保人員招聘合同樣本
- 2025年桉樹苗木出口貿易合同書3篇
- 生態(tài)農業(yè)項目招投標實習總結
- MOOC 數(shù)字邏輯電路實驗-東南大學 中國大學慕課答案
- 齊魯名家 談方論藥智慧樹知到期末考試答案2024年
- 南京工業(yè)大學橋梁工程課程設計
- 2024年華電甘肅大基地煤電分公司招聘筆試參考題庫含答案解析
- 入團志愿書(2016版本)(可編輯打印標準A4) (1)
- 兒童保健檔案表.doc
- 閥門檢測報告
- 新產品開發(fā)流程表
- 保命未來經0001
- 北京市養(yǎng)老機構公建民營實施辦法(20210220135609)
- 都勻毛尖茶產業(yè)發(fā)展研究畢業(yè)論文
評論
0/150
提交評論