版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、主講教師主講教師 陳瑋陳瑋第第8章章 接口技術(shù)接口技術(shù)一、可編程并行輸入一、可編程并行輸入/輸出接口芯片輸出接口芯片8255A 習(xí)題習(xí)題二、可編程定時(shí)器二、可編程定時(shí)器/記數(shù)器記數(shù)器8253 習(xí)題習(xí)題一、可編程并行輸入一、可編程并行輸入/輸出接口芯片輸出接口芯片8255AIntel 8255A是可編程接口芯片,可以用程序設(shè)定或是可編程接口芯片,可以用程序設(shè)定或改動(dòng)其任務(wù)方式,改動(dòng)其任務(wù)方式,CPU經(jīng)過它與外設(shè)銜接。經(jīng)過它與外設(shè)銜接。1、8255A的構(gòu)造與任務(wù)方式的構(gòu)造與任務(wù)方式2、8255A的運(yùn)用及初始化程序的運(yùn)用及初始化程序例題例題作業(yè)作業(yè)1、8255A的構(gòu)造與任務(wù)方式的構(gòu)造與任務(wù)方式(1)
2、內(nèi)部構(gòu)造及引腳內(nèi)部構(gòu)造及引腳 (2)8255A任務(wù)方式任務(wù)方式8255A的內(nèi)部構(gòu)造框圖的內(nèi)部構(gòu)造框圖1 1、并行輸入、并行輸入/ /輸出端口輸出端口 8255A 8255A有有3 3個(gè)獨(dú)立的輸個(gè)獨(dú)立的輸入入/ /輸出端口輸出端口A A、B B、C C,每個(gè)端口,每個(gè)端口8 8位,位,分別與不同的外設(shè)分別與不同的外設(shè)進(jìn)展數(shù)據(jù)交換。進(jìn)展數(shù)據(jù)交換。在與外設(shè)數(shù)據(jù)傳送中需在與外設(shè)數(shù)據(jù)傳送中需求聯(lián)絡(luò)控制線時(shí),求聯(lián)絡(luò)控制線時(shí),C C端口作控制信號(hào)輸端口作控制信號(hào)輸出和形狀信號(hào)輸入,出和形狀信號(hào)輸入,與與A A、B B口配合??谂浜稀Wx/寫控制部件數(shù)據(jù)總線緩沖器RDWRA1A0RESETD7 D0CSA 組端
3、口A(8)B 組端口C下半部(4)B 組端口B(8)A 組端口C上半部(4)A 組控制部件B 組控制部件8位內(nèi)部數(shù)據(jù)總線 I/OPB7 PB0 I/OPA7 PA0 I/OPC7 PC4 I/OPC3 PC0 8255A的內(nèi)部構(gòu)造框圖的內(nèi)部構(gòu)造框圖2、A組和B組控制電路A組:A口、C口高4位;B 組:B口、C口低4位;各有控制電路,擔(dān)任接受來自讀/寫控制邏輯的各種命令,以及來自數(shù)據(jù)總線的控制字,從而決議A組和B組的任務(wù)方式;根據(jù)CPU的命令對(duì)C端口的每一位實(shí)現(xiàn)“復(fù)位或“置位。讀/寫控制部件數(shù)據(jù)總線緩沖器RDWRA1A0RESETD7 D0CSA 組端口A(8)B 組端口C下半部(4)B 組端口
4、B(8)A 組端口C上半部(4)A 組控制部件B 組控制部件8位內(nèi)部數(shù)據(jù)總線 I/OPB7 PB0 I/OPA7 PA0 I/OPC7 PC4 I/OPC3 PC03、讀/寫控制部件8255A內(nèi)部完成讀/寫控制功能的部件。與6條輸入控制線銜接,擔(dān)任接受CPU輸入的控制信號(hào)。4、數(shù)據(jù)總線緩沖器是一個(gè)8位雙向三態(tài)緩沖器,是8255A與CPU交換各類數(shù)據(jù)的接口。8255A的內(nèi)部構(gòu)造框圖的內(nèi)部構(gòu)造框圖讀/寫控制部件數(shù)據(jù)總線緩沖器RDWRA1A0RESETD7 D0CSA 組端口A(8)B 組端口C下半部(4)B 組端口B(8)A 組端口C上半部(4)A 組控制部件B 組控制部件8位內(nèi)部數(shù)據(jù)總線 I/O
5、PB7 PB0 I/OPA7 PA0 I/OPC7 PC4 I/OPC3 PC08255A的引腳的引腳8255A8255A是雙列直插式是雙列直插式4040引腳芯片。引腳芯片。1 1、與外設(shè)銜接的引腳、與外設(shè)銜接的引腳 A A口、口、B B口和口和C C口共口共2424條;條;2 2、與、與CPUCPU銜接的引腳銜接的引腳 (1)(1)數(shù)據(jù)線數(shù)據(jù)線D0D7D0D7;(2)(2)輸入控制線:輸入控制線: * * RESET RESET復(fù)位信號(hào)復(fù)位信號(hào)RESETRESET有效時(shí),去除有效時(shí),去除8255A8255A內(nèi)部存放器,內(nèi)部存放器,包括控制存放器,包括控制存放器,A A口、口、B B口和口和C
6、 C口設(shè)口設(shè)置為輸入方式。置為輸入方式。 * * RD RD讀信號(hào)讀信號(hào)當(dāng)當(dāng)RDRD低電平常,表示低電平常,表示CPUCPU讀出讀出8255A8255A的數(shù)的數(shù)據(jù)或形狀信息。據(jù)或形狀信息。1 402 393 384 375 366 357 348 339 8255A 3210 3111 3012 2913 2814 2715 2616 2517 2418 2319 2220 21 PA3 PA2 PA1 PA0 RD CSGND A1 A0 PC7 PC6 PC5 PC4 PC0 PC1 PC2 PC3 PB0 PB1 PB2 PA4 PA5 PA6 PA7 WR RESET D0 D1 D2
7、 D3 D4 D5 D6 D7 Vcc PB7 PB6 PB5 PB4 PB38255A的引腳的引腳 * WR寫信號(hào)寫信號(hào)表示表示CPU將數(shù)據(jù)或命令寫入將數(shù)據(jù)或命令寫入8255A。 * CS片選信號(hào)。片選信號(hào)。 * A1A0端口尋址線,直接與端口尋址線,直接與CPU地址線銜接地址線銜接8088的的A1A0 ,確定,確定CPU要訪問的端口地址。要訪問的端口地址。8255A內(nèi)部有內(nèi)部有3個(gè)輸入個(gè)輸入/輸出端口和一個(gè)輸出端口和一個(gè)控制存放器,由控制存放器,由A1A0組合對(duì)應(yīng):組合對(duì)應(yīng):A1A0 00 端口端口AA1A0 01 端口端口BA1A0 10 端口端口CA1A0 11 控制存放器控制存放器1
8、 402 393 384 375 366 357 348 339 8255A 3210 3111 3012 2913 2814 2715 2616 2517 2418 2319 2220 21 PA3 PA2 PA1 PA0 RD CSGND A1 A0 PC7 PC6 PC5 PC4 PC0 PC1 PC2 PC3 PB0 PB1 PB2 PA4 PA5 PA6 PA7 WR RESET D0 D1 D2 D3 D4 D5 D6 D7 Vcc PB7 PB6 PB5 PB4 PB3前往(2) 8255A任務(wù)方式任務(wù)方式任務(wù)方式任務(wù)方式0根本輸入輸出任務(wù)方式根本輸入輸出任務(wù)方式A、B、C端口都
9、可以作為輸入或輸出數(shù)據(jù)端口,以無端口都可以作為輸入或輸出數(shù)據(jù)端口,以無條件傳送方式進(jìn)展輸入輸出操作。條件傳送方式進(jìn)展輸入輸出操作。任務(wù)方式任務(wù)方式1 應(yīng)對(duì)式單向輸入輸出任務(wù)方式應(yīng)對(duì)式單向輸入輸出任務(wù)方式A、B端口作為輸入或輸出數(shù)據(jù)端口,端口作為輸入或輸出數(shù)據(jù)端口,C口分為兩組分口分為兩組分別作為別作為A口和口和B口的應(yīng)對(duì)聯(lián)絡(luò)線??诘膽?yīng)對(duì)聯(lián)絡(luò)線。任務(wù)方式任務(wù)方式2 應(yīng)對(duì)式雙向輸入輸出任務(wù)方式應(yīng)對(duì)式雙向輸入輸出任務(wù)方式只需只需A口可以任務(wù)于方式口可以任務(wù)于方式2,可以雙向操作,即可以輸,可以雙向操作,即可以輸入也可以輸出數(shù)據(jù),入也可以輸出數(shù)據(jù),C口作為應(yīng)對(duì)信號(hào)??谧鳛閼?yīng)對(duì)信號(hào)。位操作任務(wù)方式位操作
10、任務(wù)方式只需只需C口可以進(jìn)展位操作??诳梢赃M(jìn)展位操作。任務(wù)方式0根本輸入輸出任務(wù)方式1方式方式0下下8255A有兩個(gè)有兩個(gè)8位端口:端口位端口:端口A和端口和端口B,兩個(gè)兩個(gè)4位端口:端口位端口:端口C的高的高4位和端口位和端口C的低的低4位;位;2任何一個(gè)端口可以作輸出或輸入,由用戶程序設(shè)任何一個(gè)端口可以作輸出或輸入,由用戶程序設(shè)定;定;3輸出鎖存,輸入不鎖存;輸出鎖存,輸入不鎖存;4方式方式0適用于無條件傳送方式。適用于無條件傳送方式。任務(wù)方式1 應(yīng)對(duì)式單向輸入輸出任務(wù)方式1方式方式1下下8255A可作為一個(gè)或兩個(gè)選通端口,每個(gè)選通端口可作為一個(gè)或兩個(gè)選通端口,每個(gè)選通端口包含有:包含有:
11、8位數(shù)據(jù)端口、位數(shù)據(jù)端口、3位控制線由端口位控制線由端口C規(guī)定的位提規(guī)定的位提供、中斷邏輯;供、中斷邏輯;2任何一個(gè)選通端口都可以作輸出或輸入,輸出、輸入均鎖任何一個(gè)選通端口都可以作輸出或輸入,輸出、輸入均鎖存;存;3假設(shè)只需一個(gè)端口任務(wù)于方式假設(shè)只需一個(gè)端口任務(wù)于方式1時(shí),余下的時(shí),余下的13位可任務(wù)于方位可任務(wù)于方式式0;假設(shè)兩個(gè)端口都任務(wù)于方式;假設(shè)兩個(gè)端口都任務(wù)于方式1時(shí),端口時(shí),端口C余下的余下的2位可位可設(shè)定為輸入或輸出,且也具有置位設(shè)定為輸入或輸出,且也具有置位/復(fù)位功能。復(fù)位功能。在方式在方式1下,端口下,端口C的某些位規(guī)定作為聯(lián)絡(luò)信號(hào),但這種規(guī)定的某些位規(guī)定作為聯(lián)絡(luò)信號(hào),但這
12、種規(guī)定在輸入和輸出時(shí)不一樣。在輸入和輸出時(shí)不一樣。 任務(wù)方式1 輸入A、B端口任務(wù)于方式端口任務(wù)于方式1輸入時(shí),方式選輸入時(shí),方式選擇控制字及端口擇控制字及端口C對(duì)應(yīng)的控制信號(hào)見對(duì)應(yīng)的控制信號(hào)見圖示;圖示;每端口有每端口有3個(gè)控制信號(hào):個(gè)控制信號(hào):STB選通訊號(hào),選通訊號(hào),低電平有效,由外低電平有效,由外設(shè)產(chǎn)生的輸入信號(hào);設(shè)產(chǎn)生的輸入信號(hào); D7 D6 D5 D4 D3 D2 D1 D01011I/OXXXPC7,PC6作I/O0:輸出1:輸入STBAIBFAINTRA端口A方式1輸入方式控制字PA7PA0PC7,6INTEAPC4PC5&PC3I/ORD2 D7 D6 D5 D4 D
13、3 D2 D1 D01XXXX11X端口B方式1輸入方式控制字PB7PB0RDSTBBIBFBINTRBINTEBPC2PC1PC0&IBFIBF輸入緩沖器滿,是輸入緩沖器滿,是8255A8255A的輸出信號(hào),可供的輸出信號(hào),可供CPUCPU查詢或查詢或用于外設(shè)聯(lián)絡(luò)。用于外設(shè)聯(lián)絡(luò)。IBFIBF有效時(shí),闡明在輸入鎖存器中已存放有效時(shí),闡明在輸入鎖存器中已存放了一個(gè)數(shù)據(jù);了一個(gè)數(shù)據(jù);任務(wù)方式1 輸入INTR中斷懇求信中斷懇求信號(hào),是號(hào),是8255A的輸?shù)妮敵鲂盘?hào),供出信號(hào),供CPU查查詢或向詢或向CPU發(fā)出中發(fā)出中斷懇求;斷懇求;INTE中斷允許標(biāo)中斷允許標(biāo)志;志;* A口中斷允許,口中斷
14、允許,PC4置位;置位;* B口中斷允許,口中斷允許,PC2置位;置位; D7 D6 D5 D4 D3 D2 D1 D01011I/OXXXPC7,PC6作I/O0:輸出1:輸入STBAIBFAINTRA端口A方式1輸入方式控制字PA7PA0PC7,6INTEAPC4PC5&PC3I/ORD2 D7 D6 D5 D4 D3 D2 D1 D01XXXX11X端口B方式1輸入方式控制字PB7PB0RDSTBBIBFBINTRBINTEBPC2PC1PC0&方式方式1 1中斷輸入過程首先必需對(duì)端口進(jìn)展初始化:設(shè)置方式選中斷輸入過程首先必需對(duì)端口進(jìn)展初始化:設(shè)置方式選擇控制字,設(shè)置端口
15、擇控制字,設(shè)置端口C C置位置位/ /復(fù)位控制字,將端口設(shè)置為中復(fù)位控制字,將端口設(shè)置為中斷允許。斷允許。方式方式1 1程序查詢傳送方式,查詢程序查詢傳送方式,查詢IBFIBF的形狀。的形狀。任務(wù)方式1 輸出A、B端口任務(wù)于方端口任務(wù)于方式式1輸出時(shí),方輸出時(shí),方式選擇控制字及式選擇控制字及端口端口C對(duì)應(yīng)的控對(duì)應(yīng)的控制信號(hào)見圖示;制信號(hào)見圖示;每端口有每端口有3個(gè)控制信個(gè)控制信號(hào):號(hào):OBF輸出緩沖輸出緩沖器滿,器滿,8255A給給外設(shè)的控制信號(hào);外設(shè)的控制信號(hào); D7 D6 D5 D4 D3 D2 D1 D01011I/OXXXPC5,PC4作I/O0:輸出1:輸入ACKAOBFAINTRA
16、端口A方式1輸出方式控制字PA7PA0PC5,4INTEAPC6PC7PC3I/OWR2& D7 D6 D5 D4 D3 D2 D1 D01XXXX11X端口B方式1輸出方式控制字PB7PB0WRACKBOBFBINTRBINTEBPC2PC1PC0&ACKACK外設(shè)呼應(yīng)信號(hào),外設(shè)給外設(shè)呼應(yīng)信號(hào),外設(shè)給8255A8255A的輸入信號(hào),闡明輸出的輸入信號(hào),闡明輸出數(shù)據(jù)曾經(jīng)接受了;數(shù)據(jù)曾經(jīng)接受了;INTRINTR中斷懇求信號(hào),假設(shè)中斷懇求信號(hào),假設(shè)INTEINTE1 1,8255A8255A向向CPUCPU發(fā)出中斷發(fā)出中斷懇求信號(hào);懇求信號(hào);INTEINTE中斷允許標(biāo)志。中斷允許標(biāo)
17、志。任務(wù)方式任務(wù)方式1 1 輸出輸出方式方式1輸出與輸入一輸出與輸入一樣,首先必需對(duì)樣,首先必需對(duì)端口進(jìn)展初始化:端口進(jìn)展初始化:設(shè)置方式選擇控制設(shè)置方式選擇控制字,設(shè)置端口字,設(shè)置端口C置位置位/復(fù)位控制復(fù)位控制字,將端口設(shè)置字,將端口設(shè)置為中斷允許。為中斷允許。 D7 D6 D5 D4 D3 D2 D1 D01011I/OXXXPC5,PC4作I/O0:輸出1:輸入ACKAOBFAINTRA端口A方式1輸出方式控制字PA7PA0PC5,4INTEAPC6PC7PC3I/OWR2& D7 D6 D5 D4 D3 D2 D1 D01XXXX11X端口B方式1輸出方式控制字PB7PB0W
18、RACKBOBFBINTRBINTEBPC2PC1PC0&同樣,方式同樣,方式1輸出可用于程序查詢傳送方式,輸出可用于程序查詢傳送方式,CPU可經(jīng)過查詢可經(jīng)過查詢輸出緩沖器滿信號(hào)輸出緩沖器滿信號(hào)OBF的形狀,確定能否可以送出數(shù)據(jù)。的形狀,確定能否可以送出數(shù)據(jù)。端口端口A或或B可分別設(shè)為輸入和輸出,不受另一端口影響。可分別設(shè)為輸入和輸出,不受另一端口影響。任務(wù)方式任務(wù)方式2 2 雙向傳送方式雙向傳送方式1方式方式2只用于端口只用于端口A;2端口端口A任務(wù)于方式任務(wù)于方式2下,端口下,端口C的的PC7 PC3作其聯(lián)絡(luò)控制;作其聯(lián)絡(luò)控制;3輸入、輸出均鎖存;輸入、輸出均鎖存;4方式方式2的輸
19、入的輸入/輸出過程相當(dāng)于方式輸出過程相當(dāng)于方式1的輸入過程和輸出過程的輸入過程和輸出過程的組合。的組合。 D7 D6 D5 D4 D3 D2 D1 D011XXX1/01/0I/OSTBAIBFAINTRA端口A方式2方式控制字PA7 PA0INTE2PC4PC5PC3WRRDINTE1PC6PC7& 1ACKAOBFA端口 B&2、8255A的運(yùn)用及初始化程序的運(yùn)用及初始化程序8255A各端口的任務(wù)方式由各端口的任務(wù)方式由CPU經(jīng)過經(jīng)過I/O指令寫入控制指令寫入控制存放器的控制字來決議。存放器的控制字來決議。8255A有兩個(gè)控制字:有兩個(gè)控制字:(1)方式選擇控制字方式選擇控
20、制字(2)端口端口C置位置位/復(fù)位控制字復(fù)位控制字 初始化編程初始化編程(1)方式選擇控制字方式選擇控制字方式選擇控制字用于設(shè)置各端口的任務(wù)方式和數(shù)據(jù)輸方式選擇控制字用于設(shè)置各端口的任務(wù)方式和數(shù)據(jù)輸入入/輸出的傳送方向。輸出的傳送方向。 例題例題1D6D5D4D3D2D1D 00:端口C PC3PC0輸出1:端口C PC3PC0輸入0:端口B輸出1:端口B輸入0 0:端口A方式00 1:端口A方式11 X:端口A方式20:端口B方式01:端口B方式10:端口C PC7PC4輸出1:端口C PC7PC4輸入0:端口A輸出1:端口A輸入方式控制字標(biāo)志位例題方式選擇控制字例題方式選擇控制字設(shè)某片設(shè)某
21、片8255A的端口地址是的端口地址是60H63H,任務(wù)于方式,任務(wù)于方式0,端口端口A和端口和端口C高高4位輸出,端口位輸出,端口B和端口和端口C低低4位輸位輸入,設(shè)置該入,設(shè)置該8255A的方式選擇控制字。的方式選擇控制字。解:方式選擇控制字解:方式選擇控制字=1000 00111D6D5D4D3D2D1D 00:端口C PC3PC0輸出1:端口C PC3PC0輸入0:端口B輸出1:端口B輸入0 0:端口A方式00 1:端口A方式11 X:端口A方式20:端口B方式01:端口B方式10:端口C PC7PC4輸出1:端口C PC7PC4輸入0:端口A輸出1:端口A輸入方式控制字標(biāo)志位(2)端口
22、端口C置位置位/復(fù)位控制字復(fù)位控制字端口端口C C置位置位/ /復(fù)位控制字只對(duì)端口復(fù)位控制字只對(duì)端口C C的某一個(gè)位進(jìn)展操的某一個(gè)位進(jìn)展操作,其他位不受影響。作,其他位不受影響。留意:必需寫入控制端口。留意:必需寫入控制端口。例題例題0XXXD3D2D1D0端口C的位選擇: PC0 0 0 0 PC1 0 0 1 PC2 0 1 0 PC3 0 1 1 PC4 1 0 0 PC5 1 0 1 PC6 1 1 0 PC7 1 1 10:復(fù)位1:置位標(biāo)志位不用例題位操作控制字例題位操作控制字知知8255A的端口地址為的端口地址為02E0H02E3H,請(qǐng)實(shí)現(xiàn)對(duì)端口,請(qǐng)實(shí)現(xiàn)對(duì)端口C的的PC2置位和置位
23、和PC4復(fù)位。復(fù)位。解:解:MOV DX,02E3H ;大于;大于8位的端口地址送位的端口地址送DXMOV AL,05H;位操作控制字;位操作控制字0000 0101OUTDX,AL;置位;置位PC2MOV AL,08H;位操作控制字;位操作控制字0000 1000 OUTDX,AL;復(fù)位;復(fù)位PC4 0XXXD3D2D1D0端口C的位選擇: PC0 0 0 0 PC1 0 0 1 PC2 0 1 0 PC3 0 1 1 PC4 1 0 0 PC5 1 0 1 PC6 1 1 0 PC7 1 1 10:復(fù)位1:置位標(biāo)志位不用例題位操作控制字例題位操作控制字2請(qǐng)?jiān)谡?qǐng)?jiān)?255A的的C端口的端口的
24、PC7位輸出一個(gè)正脈沖設(shè)原來位輸出一個(gè)正脈沖設(shè)原來PC7=0。解:程序段如下解:程序段如下MOV AL, 0FH ;置位;置位PC7,操作控制字,操作控制字00001111OUT CTRL_PORT, AL ;寫入控制端口;寫入控制端口MOV AL, 0EH ;復(fù)位;復(fù)位PC7,操作控制字,操作控制字 00001110OUT CTRL_PORT, AL; 寫入控制端口寫入控制端口0XXXD3D2D1D0端口C的位選擇: PC0 0 0 0 PC1 0 0 1 PC2 0 1 0 PC3 0 1 1 PC4 1 0 0 PC5 1 0 1 PC6 1 1 0 PC7 1 1 10:復(fù)位1:置位標(biāo)
25、志位不用初始化編程初始化編程初始化就是初始化就是CPU經(jīng)過程序來設(shè)定經(jīng)過程序來設(shè)定8255A的任務(wù)方式。的任務(wù)方式。設(shè)某片設(shè)某片8255A的端口地址是的端口地址是60H63H,任務(wù)于方式,任務(wù)于方式0,端口端口A和端口和端口C高高4位輸出,端口位輸出,端口B和端口和端口C低低4位輸位輸入,設(shè)置該入,設(shè)置該8255A的方式選擇控制字。的方式選擇控制字。解:方式選擇控制字解:方式選擇控制字=10000011初始化編程:初始化編程:MOV AL, 83HOUT CNTL_PORT,AL ; 將方式選擇控制字由控制將方式選擇控制字由控制端口寫入端口寫入例題例題1、知、知A,B,C端口均作為輸入或輸出端
26、口端口均作為輸入或輸出端口,有有12個(gè)開關(guān)個(gè)開關(guān)和和12個(gè)發(fā)光二極管個(gè)發(fā)光二極管,每一個(gè)開關(guān)對(duì)應(yīng)每一個(gè)發(fā)光二每一個(gè)開關(guān)對(duì)應(yīng)每一個(gè)發(fā)光二極管極管,當(dāng)某一開關(guān)接通時(shí)當(dāng)某一開關(guān)接通時(shí),對(duì)應(yīng)的發(fā)光二極管就亮對(duì)應(yīng)的發(fā)光二極管就亮,否那么就暗。試編寫程序段實(shí)現(xiàn)此功能。否那么就暗。試編寫程序段實(shí)現(xiàn)此功能。(8255A的端口地址是的端口地址是0218H021BH)8255A+5VK0(CPU數(shù)據(jù)總線)D0D7(8088A1)A1RESET(CPU)WR(CPU)RD(8088A0)A0CSPB0PB7PC0PC3K7K8K11.PA0PC7PC4PA7發(fā)光二級(jí)管驅(qū)動(dòng)器.L0L11L8L7.+5V例題例題(續(xù)上
27、頁續(xù)上頁)解解:程序段流程圖程序段流程圖8255A初始化B口讀入開關(guān)狀態(tài)數(shù)據(jù)處理處理結(jié)果輸出到A口C口低四位讀入開關(guān)狀態(tài)數(shù)據(jù)處理處理結(jié)果輸出到C口高三位8255A+5VK0(CPU數(shù)據(jù)總線)D0D7(8088A1)A1RESET(CPU)WR(CPU)RD(8088A0)A0CSPB0PB7PC0PC3K7K8K11.PA0PC7PC4PA7發(fā)光二級(jí)管驅(qū)動(dòng)器.L0L11L8L7.+5V例題例題(續(xù)上頁續(xù)上頁)解解:程序段清單程序段清單MOV AL, 83H;B口和口和C口低口低4位輸入位輸入, A口和口和C高高4位輸位輸出出MOV DX,021BH;控制端口地址送控制端口地址送DXOUT DX
28、, AL;從控制端口寫入方式控制字從控制端口寫入方式控制字LL: MOV DX,0219H;讀讀B口口IN AL, DXDEC DX;A口口OUT DX, AL;將將B口讀入的開關(guān)形狀從口讀入的開關(guān)形狀從A口輸出口輸出MOV DX,021AH;C口口IN AL, DX;C口讀入數(shù)據(jù)口讀入數(shù)據(jù)MOVCL,4SHL AL, CL;將低將低4位左移到高位左移到高4位位OUT DX,AL;將低將低4位讀入的從高位讀入的從高4位輸出位輸出JMP LLHLT例題例題2.一個(gè)微機(jī)系統(tǒng)中采用一個(gè)微機(jī)系統(tǒng)中采用8255A作為作為I/O接口,初始化時(shí)接口,初始化時(shí)CPU訪問其訪問其8BH端口,將它設(shè)置為方式端口,
29、將它設(shè)置為方式0,A、B口口輸入,輸入,C口輸出,請(qǐng)問口輸出,請(qǐng)問A口的端口地址是多少口的端口地址是多少?解:解:A口為口為88H作業(yè)作業(yè) P2682、4、68255A哪種任務(wù)方式具有中斷懇求的功能?該中斷懇哪種任務(wù)方式具有中斷懇求的功能?該中斷懇求能否屏蔽?如何設(shè)置?求能否屏蔽?如何設(shè)置?解:解:8255A的方式的方式1、方式、方式2具有中斷懇求功能,均可具有中斷懇求功能,均可屏蔽。屏蔽。 A口:方式口:方式1輸入時(shí),輸入時(shí),PC4置位允許中斷、置位允許中斷、 PC4復(fù)位制復(fù)位制止中斷;止中斷; 方式方式1輸出時(shí),輸出時(shí),PC6置位允許中斷、置位允許中斷、 PC6復(fù)位復(fù)位制止中斷;制止中斷;
30、方式方式2時(shí),即為方式時(shí),即為方式1輸入、輸出的組合。輸入、輸出的組合。B口:任務(wù)于方式口:任務(wù)于方式1時(shí),時(shí),PC2置位允許中斷、置位允許中斷、 PC2復(fù)位復(fù)位制止中斷。制止中斷。習(xí)題習(xí)題2設(shè)設(shè)8255A的端口地址為的端口地址為0260H0263H,試編寫以下各,試編寫以下各種情況的初始化程序:種情況的初始化程序:(1)A口、口、B口設(shè)置為方式口設(shè)置為方式0,端口,端口A和和C作為輸入口,作為輸入口,允許中斷。允許中斷。解:初始化程序段:解:初始化程序段:MOV AL,99H ;方式選擇控制字;方式選擇控制字10011001MOV DX,0263H;端口地址大于;端口地址大于8位送位送DXO
31、UT DX,AL1D6D5D4D3D2D1D 00:端口C PC3PC0輸出1:端口C PC3PC0輸入0:端口B輸出1:端口B輸入0 0:端口A方式00 1:端口A方式11 X:端口A方式20:端口B方式01:端口B方式10:端口C PC7PC4輸出1:端口C PC7PC4輸入0:端口A輸出1:端口A輸入方式控制字標(biāo)志位習(xí)題習(xí)題3(2)A口設(shè)置為方式口設(shè)置為方式2,制止中斷,制止中斷,B口設(shè)置為方式口設(shè)置為方式1輸出,允許中輸出,允許中斷。斷。解:初始化程序段:解:初始化程序段:MOV AL,0C4H ;方式選擇控制字;方式選擇控制字11xx x10 xMOV DX,0263HOUT DX,
32、AL ;初始化完成;初始化完成MOV AL,0CH ;位操作控制字;位操作控制字0000 1100, PC6復(fù)位,復(fù)位,輸出中斷制止輸出中斷制止OUT DX,ALMOV AL,08H ;位操作控制字;位操作控制字0000 1000, PC4復(fù)位,復(fù)位,輸入中斷制止輸入中斷制止OUT DX,AL ;A口方式口方式2,制止中斷,制止中斷MOV AL,05H ;位操作控制字;位操作控制字0000 0101, PC2置位,置位,B口中斷允許口中斷允許OUT DX,AL習(xí)題習(xí)題4(3)A口設(shè)置為方式口設(shè)置為方式1輸入,輸入,PC7和和PC6作為輸出,作為輸出,B口方式口方式1輸入,輸入,A口和口和B口允
33、許中斷??谠试S中斷。解:初始化程序段:解:初始化程序段:MOV AL,0B6H ;方式選擇控制字;方式選擇控制字1011 011xMOV DX,0263HOUT DX,AL ;初始化完成;初始化完成MOV AL,09H ;位操作控制字;位操作控制字0000 1001, PC4置位置位OUT DX,AL;A口允許中斷口允許中斷MOV AL,05H;位操作控制字;位操作控制字0000 0101, PC2置位置位 OUT DX,AL;B口允許中斷口允許中斷二、可編程定時(shí)器二、可編程定時(shí)器/記數(shù)器記數(shù)器8253在微型計(jì)算機(jī)系統(tǒng)中經(jīng)常需求定時(shí)器或計(jì)數(shù)器,用來在微型計(jì)算機(jī)系統(tǒng)中經(jīng)常需求定時(shí)器或計(jì)數(shù)器,用來
34、產(chǎn)生實(shí)時(shí)時(shí)鐘信號(hào),如定時(shí)對(duì)動(dòng)態(tài)存儲(chǔ)器刷新,控產(chǎn)生實(shí)時(shí)時(shí)鐘信號(hào),如定時(shí)對(duì)動(dòng)態(tài)存儲(chǔ)器刷新,控制系統(tǒng)的定時(shí)檢測(cè)等等。同時(shí),計(jì)算機(jī)控制系統(tǒng)也制系統(tǒng)的定時(shí)檢測(cè)等等。同時(shí),計(jì)算機(jī)控制系統(tǒng)也經(jīng)常需求計(jì)數(shù)功能,實(shí)現(xiàn)對(duì)外部事件的計(jì)數(shù)。經(jīng)常需求計(jì)數(shù)功能,實(shí)現(xiàn)對(duì)外部事件的計(jì)數(shù)。1、 8253的內(nèi)部構(gòu)造及引腳的內(nèi)部構(gòu)造及引腳2、 8253的控制字的控制字3、8253的的任務(wù)方式的的任務(wù)方式作業(yè)作業(yè)1、 8253的內(nèi)部構(gòu)造及引腳的內(nèi)部構(gòu)造及引腳8253的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造(1)3個(gè)計(jì)數(shù)器個(gè)計(jì)數(shù)器計(jì)數(shù)器計(jì)數(shù)器0、1、2,每個(gè)計(jì)數(shù)器的構(gòu),每個(gè)計(jì)數(shù)器的構(gòu)造一樣,而且操作是相造一樣,而且操作是相互獨(dú)立的?;オ?dú)立的。(2)控制字
35、存放器控制字存放器是一是一個(gè)個(gè)8位存放器,每個(gè)計(jì)數(shù)位存放器,每個(gè)計(jì)數(shù)器有一個(gè),只能寫入,器有一個(gè),只能寫入,不能讀出,用來保管計(jì)不能讀出,用來保管計(jì)數(shù)器的任務(wù)方式、計(jì)數(shù)數(shù)器的任務(wù)方式、計(jì)數(shù)進(jìn)位制方式以及讀進(jìn)位制方式以及讀/寫計(jì)寫計(jì)數(shù)器方式。數(shù)器方式。數(shù)據(jù)總線緩沖器讀/寫控制電路控制寄存器計(jì)數(shù)器0計(jì)數(shù)器1計(jì)數(shù)器2A0A1RDWRCSD7D0CLK 0GATE 0OUT 0CLK 1GATE 1OUT 1CLK 2GATE 2OUT 2內(nèi)部數(shù)據(jù)(3)數(shù)據(jù)總線緩沖器數(shù)據(jù)總線緩沖器與與CPU數(shù)據(jù)總線直接相連。數(shù)據(jù)總線直接相連。(4)讀寫控制電路讀寫控制電路8253的控制電路,接受來自的控制電路,接受來
36、自CPU的地址信的地址信號(hào)和控制信號(hào),完成對(duì)號(hào)和控制信號(hào),完成對(duì)8253內(nèi)部各功能的控制和操作。內(nèi)部各功能的控制和操作。1、 8253的內(nèi)部構(gòu)造及引腳的內(nèi)部構(gòu)造及引腳A1A0 00 端口端口AA1A0 01 端口端口BA1A0 10 端口端口CA1A0 11 控制存放器控制存放器數(shù)據(jù)總線緩沖器讀/寫控制電路控制寄存器計(jì)數(shù)器0計(jì)數(shù)器1計(jì)數(shù)器2A0A1RDWRCSD7D0CLK 0GATE 0OUT 0CLK 1GATE 1OUT 1CLK 2GATE 2OUT 2內(nèi)部數(shù)據(jù)1、 8253的內(nèi)部構(gòu)造及引腳的內(nèi)部構(gòu)造及引腳28253是是24引腳的雙列直插式芯片。引腳的雙列直插式芯片。1與與CPU銜接的
37、引腳銜接的引腳數(shù)據(jù)線數(shù)據(jù)線D0D7這是與這是與CPU數(shù)據(jù)線銜接的引腳,用于與數(shù)據(jù)線銜接的引腳,用于與CPU傳送信息。傳送信息??刂凭€控制線RD、WR、CS、A1和和A0 與與8255A比較,除比較,除沒有復(fù)位信號(hào)沒有復(fù)位信號(hào)RESET外,其外,其他都一樣。他都一樣。2與外部銜接的引腳與外部銜接的引腳三個(gè)計(jì)數(shù)器的三組線三個(gè)計(jì)數(shù)器的三組線CLK、GATE和和OUT。1 242 233 224 215 206 197 8253 188 179 1610 1511 1412 13D7D6D5D4D3D2D1D0CLK0OUT0GATE0GND+5VWRRDCSA1A0CLK2GATE2OUT2CLK1
38、GATE1OUT1計(jì)數(shù)器的構(gòu)造計(jì)數(shù)器的構(gòu)造8253的每個(gè)計(jì)數(shù)器包括:的每個(gè)計(jì)數(shù)器包括:116位的計(jì)數(shù)初值存放器位的計(jì)數(shù)初值存放器CR存放由存放由CPU編程設(shè)定的計(jì)數(shù)初值;編程設(shè)定的計(jì)數(shù)初值;216位計(jì)數(shù)執(zhí)行部件位計(jì)數(shù)執(zhí)行部件CE是一是一個(gè)減個(gè)減1計(jì)數(shù)器,初值是計(jì)數(shù)器,初值是CR的內(nèi)容。的內(nèi)容。CE只對(duì)只對(duì)CLK脈沖計(jì)數(shù),一旦計(jì)數(shù)脈沖計(jì)數(shù),一旦計(jì)數(shù)器被啟動(dòng)后,每出現(xiàn)一個(gè)器被啟動(dòng)后,每出現(xiàn)一個(gè)CLK脈沖,脈沖,CE減減1。當(dāng)減為。當(dāng)減為0時(shí),經(jīng)過時(shí),經(jīng)過OUT輸輸出指示信號(hào),闡明出指示信號(hào),闡明CE為為0;計(jì)數(shù)執(zhí)行單元CE輸出鎖存器OL計(jì)數(shù)值寄存器CR內(nèi)部總線CLKGATEOUT*當(dāng)當(dāng)CLK是一個(gè)
39、非周期性信號(hào)時(shí),起計(jì)數(shù)功能;是一個(gè)非周期性信號(hào)時(shí),起計(jì)數(shù)功能;* 當(dāng)當(dāng)CLK是周期性時(shí)鐘信號(hào)時(shí),起定時(shí)功能。作定時(shí)器用時(shí),是周期性時(shí)鐘信號(hào)時(shí),起定時(shí)功能。作定時(shí)器用時(shí),定時(shí)系數(shù)要求的定時(shí)時(shí)間定時(shí)系數(shù)要求的定時(shí)時(shí)間/輸入的時(shí)鐘脈沖周期,作為計(jì)數(shù)輸入的時(shí)鐘脈沖周期,作為計(jì)數(shù)初值預(yù)置入初值預(yù)置入CR,計(jì)數(shù)器的構(gòu)造計(jì)數(shù)器的構(gòu)造計(jì)數(shù)執(zhí)行單元CE輸出鎖存器OL計(jì)數(shù)值寄存器CR內(nèi)部總線CLKGATEOUT316位輸出鎖存器位輸出鎖存器OL跟隨跟隨CE的內(nèi)容變化,當(dāng)接遭到的內(nèi)容變化,當(dāng)接遭到CPU發(fā)發(fā)來的鎖存命令時(shí),就鎖定當(dāng)前的來的鎖存命令時(shí),就鎖定當(dāng)前的計(jì)數(shù)值,而不跟隨計(jì)數(shù)值,而不跟隨CE變化,直到變化,直
40、到CPU從中讀取鎖存值后,才恢復(fù)從中讀取鎖存值后,才恢復(fù)跟隨跟隨CE。4GATE門控脈沖輸入。門控脈沖輸入。 * 高電平常,允許計(jì)數(shù)器任務(wù);高電平常,允許計(jì)數(shù)器任務(wù); * 低電平常,制止計(jì)數(shù)器任務(wù)。低電平常,制止計(jì)數(shù)器任務(wù)。2、 8253的控制字的控制字1控制字控制字在在8253的初始化編程中,第一個(gè)寫的初始化編程中,第一個(gè)寫入的一定是方式控制字,規(guī)定入的一定是方式控制字,規(guī)定8253的任務(wù)方式。的任務(wù)方式。工作方式SC1SC0RL1RL0M2M1M0BCD0:二進(jìn)制計(jì)數(shù)1:BCD計(jì)數(shù)0 0 :選計(jì)數(shù)器00 1 :選計(jì)數(shù)器11 0 :選計(jì)數(shù)器21 :無效 0 0 0:方式0 0 0 1:方式1
41、 1 0:方式2 1 1:方式3 1 0 0:方式4 1 0 1:方式50 0:計(jì)數(shù)器鎖存0 1:只讀/寫計(jì)數(shù)器低字節(jié)1 0:只讀/寫計(jì)數(shù)器高字節(jié)1 1:先讀/寫計(jì)數(shù)器低字節(jié), 后讀/寫計(jì)數(shù)器高字節(jié)計(jì)數(shù)器選擇讀/寫格式數(shù)制選擇2、 8253的控制字的控制字228253的讀的讀/寫操作寫操作* 寫入操作寫入操作設(shè)置控制字,設(shè)置計(jì)數(shù)初值和設(shè)置鎖存命令;設(shè)置控制字,設(shè)置計(jì)數(shù)初值和設(shè)置鎖存命令; 運(yùn)用前,首先初始化:先寫入方式控制字,隨后寫入計(jì)數(shù)運(yùn)用前,首先初始化:先寫入方式控制字,隨后寫入計(jì)數(shù)初值留意格式。初值留意格式??刂谱謱懭肟刂拼娣牌鞫丝?,計(jì)數(shù)初值寫入計(jì)數(shù)器端口??刂谱謱懭肟刂拼娣牌鞫丝冢?jì)數(shù)
42、初值寫入計(jì)數(shù)器端口。 鎖存命令鎖存命令D7D6指定要鎖存的計(jì)數(shù)器,指定要鎖存的計(jì)數(shù)器,D5D4 00。* 讀出操作讀出操作CPU讀取計(jì)數(shù)器當(dāng)前的計(jì)數(shù)值。讀取計(jì)數(shù)器當(dāng)前的計(jì)數(shù)值。在計(jì)數(shù)過程中,輸出鎖存器在計(jì)數(shù)過程中,輸出鎖存器OL跟隨計(jì)數(shù)執(zhí)行部件跟隨計(jì)數(shù)執(zhí)行部件CE變化,在變化,在接到接到CPU發(fā)來的鎖存命令時(shí),當(dāng)前計(jì)數(shù)值鎖存于發(fā)來的鎖存命令時(shí),當(dāng)前計(jì)數(shù)值鎖存于OL中,中,OL不再變化,堅(jiān)持至不再變化,堅(jiān)持至CPU用輸入指令讀取該計(jì)數(shù)器端口的用輸入指令讀取該計(jì)數(shù)器端口的OL值后,輸出鎖存器自動(dòng)解除鎖存形狀,再次跟隨值后,輸出鎖存器自動(dòng)解除鎖存形狀,再次跟隨CE3、8253的的任務(wù)方式的的任務(wù)方式
43、8253提供提供6種任務(wù)方式,遵照以下根本原那么:種任務(wù)方式,遵照以下根本原那么:1控制字寫入計(jì)數(shù)器,一切的控制邏輯電路復(fù)位,輸出端控制字寫入計(jì)數(shù)器,一切的控制邏輯電路復(fù)位,輸出端進(jìn)入初始形狀;進(jìn)入初始形狀;2初始計(jì)數(shù)值寫入后,經(jīng)過一個(gè)初始計(jì)數(shù)值寫入后,經(jīng)過一個(gè)CLK脈沖后,才由計(jì)數(shù)脈沖后,才由計(jì)數(shù)初值存放器初值存放器CR送入計(jì)數(shù)執(zhí)行部件送入計(jì)數(shù)執(zhí)行部件CE開場(chǎng)計(jì)數(shù)。在輸入脈開場(chǎng)計(jì)數(shù)。在輸入脈沖的沖的CLK的下降沿,計(jì)數(shù)器作減的下降沿,計(jì)數(shù)器作減1計(jì)數(shù);計(jì)數(shù);3通常,在輸入脈沖通常,在輸入脈沖CLK的上升沿,門控信號(hào)的上升沿,門控信號(hào)GATE被采被采樣。不同的任務(wù)方式,樣。不同的任務(wù)方式,GA
44、TE信號(hào)的觸發(fā)方式有不同的規(guī)信號(hào)的觸發(fā)方式有不同的規(guī)定,電平觸發(fā)、邊沿觸發(fā)或兩者都允許;定,電平觸發(fā)、邊沿觸發(fā)或兩者都允許;48253內(nèi)部沒有中斷控制電路,也沒有公用的中斷懇求線,內(nèi)部沒有中斷控制電路,也沒有公用的中斷懇求線,假設(shè)需中斷,可將假設(shè)需中斷,可將OUT端作為中斷懇求信號(hào),經(jīng)過外部端作為中斷懇求信號(hào),經(jīng)過外部電路實(shí)現(xiàn)對(duì)該中斷管理比如接到電路實(shí)現(xiàn)對(duì)該中斷管理比如接到8259A的的IRi。3、8253的的任務(wù)方式的的任務(wù)方式(2)1方式方式0計(jì)數(shù)終了中斷方式計(jì)數(shù)終了中斷方式方式方式0是典型的事件計(jì)數(shù)用法,是典型的事件計(jì)數(shù)用法,CLK作為事件計(jì)數(shù)輸入信號(hào),作為事件計(jì)數(shù)輸入信號(hào),當(dāng)計(jì)數(shù)執(zhí)行部
45、件當(dāng)計(jì)數(shù)執(zhí)行部件CE為為0時(shí),時(shí),OUT端變?yōu)楦唠娖?,可以作為端變?yōu)楦唠娖剑梢宰鳛橹袛鄳┣笮盘?hào)。中斷懇求信號(hào)。任務(wù)原理:當(dāng)寫入控制字后,任務(wù)原理:當(dāng)寫入控制字后,OUT變?yōu)榈碗娖?,變?yōu)榈碗娖剑珻PU將計(jì)數(shù)將計(jì)數(shù)初值寫入計(jì)數(shù)初值存放器初值寫入計(jì)數(shù)初值存放器CR后,利用下一個(gè)后,利用下一個(gè)CLK脈沖的脈沖的下降沿將下降沿將CR的內(nèi)容裝入的內(nèi)容裝入CE中;中;再?gòu)南乱粋€(gè)再?gòu)南乱粋€(gè)CLK脈沖的下降沿開場(chǎng),脈沖的下降沿開場(chǎng),CE執(zhí)行減執(zhí)行減1計(jì)數(shù),減到計(jì)數(shù),減到0時(shí),時(shí),OUT變?yōu)楦唠娖?,并?jiān)持。除非重新裝入計(jì)數(shù)初值或變?yōu)楦唠娖?,并?jiān)持。除非重新裝入計(jì)數(shù)初值或復(fù)位。復(fù)位。 GATE是門控信號(hào),高電平開
46、放計(jì)數(shù),低電平制止計(jì)數(shù)。是門控信號(hào),高電平開放計(jì)數(shù),低電平制止計(jì)數(shù)。3、8253的的任務(wù)方式的的任務(wù)方式(3)方式方式0 0的特點(diǎn)和運(yùn)用的特點(diǎn)和運(yùn)用1 1計(jì)數(shù)過程由軟件啟動(dòng),每寫入一次計(jì)數(shù)初值,計(jì)數(shù)過程由軟件啟動(dòng),每寫入一次計(jì)數(shù)初值,就啟動(dòng)一次計(jì)數(shù)過程,即可以利用寫入計(jì)數(shù)初值的就啟動(dòng)一次計(jì)數(shù)過程,即可以利用寫入計(jì)數(shù)初值的時(shí)辰來控制啟動(dòng)計(jì)數(shù)器的時(shí)辰;時(shí)辰來控制啟動(dòng)計(jì)數(shù)器的時(shí)辰;2 2GATEGATE的作用是開放和制止計(jì)數(shù);的作用是開放和制止計(jì)數(shù);3 3OUTOUT由低變高表示計(jì)數(shù)過程終了,假設(shè)計(jì)數(shù)初值由低變高表示計(jì)數(shù)過程終了,假設(shè)計(jì)數(shù)初值為為N N,表示曾經(jīng)出現(xiàn)了,表示曾經(jīng)出現(xiàn)了N N1 1個(gè)個(gè)
47、CLKCLK脈沖信號(hào),或者說脈沖信號(hào),或者說曾經(jīng)發(fā)生了曾經(jīng)發(fā)生了N N1 1次事件;次事件;4 4方式方式0 0主要用于事件計(jì)數(shù),主要用于事件計(jì)數(shù),OUTOUT信號(hào)可作為中斷信號(hào)可作為中斷懇求信號(hào)。懇求信號(hào)。3、8253的的任務(wù)方式的的任務(wù)方式(4)例:設(shè)例:設(shè)8253的端口地址是的端口地址是70H73H,假設(shè)計(jì)數(shù)器,假設(shè)計(jì)數(shù)器1任務(wù)在方式任務(wù)在方式0,計(jì)數(shù)次數(shù)為,計(jì)數(shù)次數(shù)為130次,試編寫初始化程序。次,試編寫初始化程序。解:初始化程序段解:初始化程序段MOV AL,71H ;01 11 000 1,計(jì)數(shù)器計(jì)數(shù)器1,BCD計(jì)數(shù)計(jì)數(shù)OUT 73H,AL;控制字寫入控制存放器控制字寫入控制存放器
48、MOV AL,30H;先送低先送低8位位OUT 71H,AL;低低8位送計(jì)數(shù)器位送計(jì)數(shù)器1MOV AL,01H;先送低先送低8位位OUT 71H,AL;高高8位送計(jì)數(shù)器位送計(jì)數(shù)器13、8253的的任務(wù)方式的的任務(wù)方式(5)方式方式1硬件觸發(fā)啟動(dòng)定時(shí)或計(jì)數(shù)硬件觸發(fā)啟動(dòng)定時(shí)或計(jì)數(shù)方式方式1下,下,CPU寫入控制字后,輸出寫入控制字后,輸出OUT變高,然后寫入計(jì)數(shù)變高,然后寫入計(jì)數(shù)初值到初值到CR;當(dāng)當(dāng)GATE端產(chǎn)生一個(gè)由低變高的觸發(fā)信號(hào)之后的下一個(gè)端產(chǎn)生一個(gè)由低變高的觸發(fā)信號(hào)之后的下一個(gè)CLK時(shí)鐘脈沖的下降沿,才將時(shí)鐘脈沖的下降沿,才將CR裝入裝入CE,同時(shí),同時(shí)OUT變?yōu)榈碗娮優(yōu)榈碗娖剑黄?;然?/p>
49、計(jì)數(shù)部件然后計(jì)數(shù)部件CE根據(jù)根據(jù)CLK脈沖做減脈沖做減1計(jì)數(shù),減到計(jì)數(shù),減到0時(shí),時(shí),OUT變變?yōu)楦唠娖健楦唠娖?。OUT端輸出的負(fù)脈沖寬度就是計(jì)數(shù)初值個(gè)端輸出的負(fù)脈沖寬度就是計(jì)數(shù)初值個(gè)CLK脈沖周期之和。脈沖周期之和。方式方式1可重觸發(fā),只需將可重觸發(fā),只需將GATE端再產(chǎn)生一次由低變高的觸發(fā)端再產(chǎn)生一次由低變高的觸發(fā)信號(hào),那么又將計(jì)數(shù)初值存放器的信號(hào),那么又將計(jì)數(shù)初值存放器的CR的內(nèi)容裝入的內(nèi)容裝入CE,又,又開場(chǎng)計(jì)數(shù)。開場(chǎng)計(jì)數(shù)。3、8253的的任務(wù)方式的的任務(wù)方式(6)方式方式1特點(diǎn)和運(yùn)用特點(diǎn)和運(yùn)用1計(jì)數(shù)器的啟動(dòng)只能由門控脈沖的上升沿產(chǎn)生,計(jì)數(shù)器的啟動(dòng)只能由門控脈沖的上升沿產(chǎn)生,即只能用
50、硬件啟動(dòng),不能用軟件啟動(dòng)計(jì)數(shù)器;即只能用硬件啟動(dòng),不能用軟件啟動(dòng)計(jì)數(shù)器;2OUT輸出是一個(gè)負(fù)脈沖,其脈寬為計(jì)數(shù)初值個(gè)輸出是一個(gè)負(fù)脈沖,其脈寬為計(jì)數(shù)初值個(gè)CLK時(shí)鐘脈沖的周期之和;時(shí)鐘脈沖的周期之和;3在構(gòu)成負(fù)脈沖過程中,可再重觸發(fā),使在構(gòu)成負(fù)脈沖過程中,可再重觸發(fā),使OUT輸輸出的負(fù)脈沖加寬。出的負(fù)脈沖加寬。4由于計(jì)數(shù)初值是由程序?qū)懭氲?,所以可以?jīng)過由于計(jì)數(shù)初值是由程序?qū)懭氲模钥梢越?jīng)過改動(dòng)計(jì)數(shù)初值輸出不同寬度的改動(dòng)計(jì)數(shù)初值輸出不同寬度的OUT的負(fù)脈沖信號(hào)。的負(fù)脈沖信號(hào)。3、8253的的任務(wù)方式的的任務(wù)方式(7)例:設(shè)例:設(shè)8253的端口地址是的端口地址是70H73H,假設(shè)計(jì)數(shù)器,假設(shè)計(jì)數(shù)器
51、1任務(wù)在方式任務(wù)在方式1,計(jì)數(shù)次數(shù)為,計(jì)數(shù)次數(shù)為20次,試編寫初始化程次,試編寫初始化程序。序。解:初始化程序段解:初始化程序段MOV AL,52H ;01 01 001 0,計(jì)數(shù)器計(jì)數(shù)器1,二進(jìn),二進(jìn)制計(jì)數(shù)制計(jì)數(shù)OUT 73H,AL;控制字寫入控制存放器控制字寫入控制存放器MOV AL,14H;OUT 71H,AL; 計(jì)數(shù)次數(shù)送計(jì)數(shù)器計(jì)數(shù)次數(shù)送計(jì)數(shù)器13、8253的的任務(wù)方式的的任務(wù)方式(8)方式方式2脈沖發(fā)生器脈沖發(fā)生器方式方式2下,下,CPU寫入控制字后,輸出寫入控制字后,輸出OUT為高電平。為高電平。假設(shè)假設(shè)GATE1,寫入計(jì)數(shù)初值后下一個(gè)脈沖開場(chǎng)計(jì),寫入計(jì)數(shù)初值后下一個(gè)脈沖開場(chǎng)計(jì)數(shù)。
52、數(shù)。計(jì)數(shù)過程計(jì)數(shù)過程OUT堅(jiān)持高電平,當(dāng)減至堅(jiān)持高電平,當(dāng)減至1時(shí),時(shí),OUT變低,變低,一個(gè)一個(gè)CLK時(shí)鐘周期之后,計(jì)數(shù)值至?xí)r鐘周期之后,計(jì)數(shù)值至0,輸出,輸出OUT恢恢復(fù)高電平,且自動(dòng)恢復(fù)計(jì)數(shù)初值重新開場(chǎng)計(jì)數(shù),復(fù)高電平,且自動(dòng)恢復(fù)計(jì)數(shù)初值重新開場(chǎng)計(jì)數(shù),延續(xù)不斷。延續(xù)不斷。所以,只需所以,只需CLK是周期性脈沖序列,那么是周期性脈沖序列,那么OUT端將端將輸出一個(gè)輸出一個(gè)CLK脈沖周期的寬度。脈沖周期的寬度。假設(shè)計(jì)數(shù)初值為假設(shè)計(jì)數(shù)初值為N,OUT的頻率的頻率CLK的頻率的頻率/N 。3、8253的的任務(wù)方式的的任務(wù)方式(9)方式方式2的特點(diǎn)與運(yùn)用的特點(diǎn)與運(yùn)用1在方式在方式2的任務(wù)過程中,計(jì)數(shù)
53、初值的任務(wù)過程中,計(jì)數(shù)初值CR能自動(dòng)地、反復(fù)地能自動(dòng)地、反復(fù)地裝入到計(jì)數(shù)執(zhí)行部件裝入到計(jì)數(shù)執(zhí)行部件CE中。只需中。只需CLK是周期性的脈沖序列,是周期性的脈沖序列,在在OUT端上就能延續(xù)地輸出周期性分頻信號(hào),正脈沖寬度端上就能延續(xù)地輸出周期性分頻信號(hào),正脈沖寬度為計(jì)數(shù)初值為計(jì)數(shù)初值1個(gè)個(gè)CLK寬度,負(fù)脈沖寬度即為寬度,負(fù)脈沖寬度即為CLK的的寬度;寬度;2方式方式2的計(jì)數(shù)器既可軟件啟動(dòng)計(jì)數(shù)器恢復(fù)初值,重新計(jì)的計(jì)數(shù)器既可軟件啟動(dòng)計(jì)數(shù)器恢復(fù)初值,重新計(jì)數(shù);數(shù);又可硬件啟動(dòng)又可硬件啟動(dòng)GATE1,計(jì)數(shù)器恢復(fù)初值,計(jì)數(shù)器恢復(fù)初值,GATE0現(xiàn)行現(xiàn)行計(jì)數(shù)暫停計(jì)數(shù)暫停3在計(jì)數(shù)過程中,可再次寫入新的計(jì)數(shù)初值
54、,下次有效。在計(jì)數(shù)過程中,可再次寫入新的計(jì)數(shù)初值,下次有效。3、8253的的任務(wù)方式的的任務(wù)方式(10)例:例: 8253的計(jì)數(shù)器的計(jì)數(shù)器2用作分頻器,將頻率為用作分頻器,將頻率為1.19MHz的輸入的輸入脈沖轉(zhuǎn)變成頻率為脈沖轉(zhuǎn)變成頻率為500Hz的脈沖信號(hào)。的脈沖信號(hào)。8253的端口地址為的端口地址為70H73H。試編寫初始化程序段。試編寫初始化程序段。解解: N1.19106/500 = 2380 094CH那么其初始化程序段為:那么其初始化程序段為: MOV AL,0B4H;10110100,計(jì)數(shù)器,計(jì)數(shù)器2方式方式2二進(jìn)制計(jì)數(shù)二進(jìn)制計(jì)數(shù)OUT 73H,AL;控制字送入控制存放器;控制字
55、送入控制存放器MOV AL,4CHOUT 72H,AL ;計(jì)數(shù)值低;計(jì)數(shù)值低8位送入計(jì)數(shù)器位送入計(jì)數(shù)器2MOV AL,09HOUT 72H,AL ;計(jì)數(shù)值高;計(jì)數(shù)值高8位送入計(jì)數(shù)器位送入計(jì)數(shù)器2 注:注:N也稱為分頻系數(shù)也稱為分頻系數(shù)作業(yè)作業(yè)P26812、13、14、15習(xí)題習(xí)題8253有幾個(gè)計(jì)數(shù)器有幾個(gè)計(jì)數(shù)器?是多少位的?可采用幾種任務(wù)方式?簡(jiǎn)述是多少位的?可采用幾種任務(wù)方式?簡(jiǎn)述各任務(wù)方式的特點(diǎn)。各任務(wù)方式的特點(diǎn)。 解:解:8253上有上有3個(gè)獨(dú)立的個(gè)獨(dú)立的16位計(jì)數(shù)器,可提供位計(jì)數(shù)器,可提供6種任務(wù)方式供種任務(wù)方式供選擇。選擇。方式方式0計(jì)數(shù)終了中斷:計(jì)數(shù)器由軟件啟動(dòng)當(dāng)控制字計(jì)數(shù)終了中斷
56、:計(jì)數(shù)器由軟件啟動(dòng)當(dāng)控制字CW寫入控制字存放器,在寫入計(jì)數(shù)初值寫入控制字存放器,在寫入計(jì)數(shù)初值N后,假設(shè)門控信后,假設(shè)門控信號(hào)號(hào)GATE為高電平,計(jì)數(shù)器開場(chǎng)計(jì)數(shù)。經(jīng)過為高電平,計(jì)數(shù)器開場(chǎng)計(jì)數(shù)。經(jīng)過N+1個(gè)個(gè)CLK脈脈沖輸出沖輸出OUT變高。計(jì)數(shù)初值一次有效,變高。計(jì)數(shù)初值一次有效,GATE為為0制止計(jì)制止計(jì)數(shù)。數(shù)。方式方式l可編程單拍脈沖:計(jì)數(shù)器由外部硬件信號(hào)啟動(dòng)可編程單拍脈沖:計(jì)數(shù)器由外部硬件信號(hào)啟動(dòng)GATE的上升沿,假設(shè)計(jì)數(shù)值為的上升沿,假設(shè)計(jì)數(shù)值為N,啟動(dòng)后輸出,啟動(dòng)后輸出OUT變低,計(jì)數(shù)終了,變低,計(jì)數(shù)終了,OUT變高,即單拍脈沖的寬度為變高,即單拍脈沖的寬度為N個(gè)個(gè)CLK脈沖。計(jì)數(shù)初
57、值脈沖。計(jì)數(shù)初值N可重裝,但必需由外部信號(hào)啟動(dòng)后可重裝,但必需由外部信號(hào)啟動(dòng)后再計(jì)數(shù)。再計(jì)數(shù)。 習(xí)題習(xí)題28253有幾個(gè)計(jì)數(shù)器有幾個(gè)計(jì)數(shù)器?是多少位的?可采用幾種是多少位的?可采用幾種任務(wù)方式?簡(jiǎn)述各任務(wù)方式的特點(diǎn)。任務(wù)方式?簡(jiǎn)述各任務(wù)方式的特點(diǎn)。解:方式解:方式2 2脈沖發(fā)生器:計(jì)數(shù)器可由軟件啟動(dòng)或硬件啟動(dòng),脈沖發(fā)生器:計(jì)數(shù)器可由軟件啟動(dòng)或硬件啟動(dòng),每每N N個(gè)個(gè)CLKCLK脈沖,輸出寬度為一個(gè)脈沖,輸出寬度為一個(gè)CLKCLK周期的負(fù)脈沖。計(jì)數(shù)初值周期的負(fù)脈沖。計(jì)數(shù)初值N N可自動(dòng)重裝,可自動(dòng)重裝,GATEGATE為為0 0制止計(jì)數(shù)。制止計(jì)數(shù)。方式方式3 3方波發(fā)生器:方式方波發(fā)生器:方式3
58、 3與方式與方式2 2類似,計(jì)數(shù)器能延續(xù)計(jì)類似,計(jì)數(shù)器能延續(xù)計(jì)數(shù),輸出周期性波形。但方式數(shù),輸出周期性波形。但方式3 3中,輸出波形在計(jì)數(shù)過程中一中,輸出波形在計(jì)數(shù)過程中一半為高電平,一半為低電平。假設(shè)計(jì)數(shù)值為半為高電平,一半為低電平。假設(shè)計(jì)數(shù)值為N N,那么輸出周期,那么輸出周期為為N N TCLK TCLK的方波或近似方波。的方波或近似方波。方式方式3 3常用作波特率發(fā)生器。寫入常用作波特率發(fā)生器。寫入N N后,假設(shè)后,假設(shè)N N為偶數(shù),那么方為偶數(shù),那么方波的前半周期和后半周期均為波的前半周期和后半周期均為N/2)TCLK N/2)TCLK ;假設(shè);假設(shè)N N為奇數(shù),那為奇數(shù),那么方波的
59、前半周期為么方波的前半周期為(N +1)/2)TCLK(N +1)/2)TCLK,后半周期為,后半周期為(N(N1)/2)TCLK 1)/2)TCLK 。GATEGATE為為0 0制止計(jì)數(shù)。制止計(jì)數(shù)。習(xí)題習(xí)題3解:方式解:方式4軟件觸發(fā)選通:與方式軟件觸發(fā)選通:與方式0一樣,是由軟件啟動(dòng)計(jì)一樣,是由軟件啟動(dòng)計(jì)數(shù)器,寫入計(jì)數(shù)初值數(shù)器,寫入計(jì)數(shù)初值N后,經(jīng)過后,經(jīng)過N個(gè)個(gè)CLK脈沖,輸出寬度脈沖,輸出寬度為一個(gè)為一個(gè)CLK周期的負(fù)脈沖。計(jì)數(shù)初值一次有效,周期的負(fù)脈沖。計(jì)數(shù)初值一次有效,GATE為為0制止計(jì)數(shù)。制止計(jì)數(shù)。方式方式4與方式與方式0主要在輸出波形上不同。啟動(dòng)計(jì)數(shù)后,輸出主要在輸出波形上不
60、同。啟動(dòng)計(jì)數(shù)后,輸出OUT變高電平方式變高電平方式0為低電平,至計(jì)數(shù)為為低電平,至計(jì)數(shù)為0,輸出寬度,輸出寬度為一個(gè)為一個(gè)CLK周期的負(fù)脈沖方式周期的負(fù)脈沖方式0為變高電平。為變高電平。方式方式5硬件觸發(fā)選通:與方式硬件觸發(fā)選通:與方式1一樣,是由外部硬件信號(hào)啟一樣,是由外部硬件信號(hào)啟動(dòng)計(jì)數(shù)器動(dòng)計(jì)數(shù)器GATE的上升沿,計(jì)數(shù)初值的上升沿,計(jì)數(shù)初值N可重裝,但必需可重裝,但必需由外部信號(hào)啟動(dòng)后再計(jì)數(shù)。由外部信號(hào)啟動(dòng)后再計(jì)數(shù)。方式方式5與方式與方式1不同的是,門控觸發(fā)后,輸出不同的是,門控觸發(fā)后,輸出OUT為高電平,為高電平,經(jīng)過經(jīng)過N+1個(gè)個(gè)CLK,輸出寬度為,輸出寬度為1個(gè)個(gè)CLK周期的負(fù)脈沖。周期的負(fù)脈沖。8253有幾個(gè)計(jì)數(shù)器有幾個(gè)計(jì)數(shù)器?是多少位的?可采用幾種任
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版門診設(shè)備設(shè)施租賃與承包合同4篇
- 2025年度航空航天零部件加工與供應(yīng)分包合同3篇
- 二零二五年度離婚財(cái)產(chǎn)分割與子女撫養(yǎng)權(quán)分配合同4篇
- 2025年度美團(tuán)特色團(tuán)購(gòu)合作合同范本細(xì)則4篇
- 2 24-全國(guó)護(hù)理專業(yè)教學(xué) 資源庫(kù)-1738309514230
- 診斷與改進(jìn)“應(yīng)知應(yīng)會(huì)”50問
- 2025年度特色培訓(xùn)學(xué)校股份合作發(fā)展合同3篇
- 2025年度校園春游活動(dòng)團(tuán)隊(duì)旅游合同
- 二零二五年企業(yè)員工出差通訊費(fèi)用報(bào)銷及標(biāo)準(zhǔn)合同3篇
- 2025年度個(gè)人信用借款合同隱私保護(hù)措施2篇
- 三年級(jí)數(shù)學(xué)(上)計(jì)算題專項(xiàng)練習(xí)附答案
- 中醫(yī)診療方案腎病科
- 2025年安慶港華燃?xì)庀薰菊衅腹ぷ魅藛T14人高頻重點(diǎn)提升(共500題)附帶答案詳解
- 人教版(2025新版)七年級(jí)下冊(cè)數(shù)學(xué)第七章 相交線與平行線 單元測(cè)試卷(含答案)
- 中藥飲片培訓(xùn)課件
- 醫(yī)院護(hù)理培訓(xùn)課件:《早產(chǎn)兒姿勢(shì)管理與擺位》
- 《論文的寫作技巧》課件
- 空氣自動(dòng)站儀器運(yùn)營(yíng)維護(hù)項(xiàng)目操作說明以及簡(jiǎn)單故障處理
- 2022年12月Python-一級(jí)等級(jí)考試真題(附答案-解析)
- T-CHSA 020-2023 上頜骨缺損手術(shù)功能修復(fù)重建的專家共識(shí)
- Hypermesh lsdyna轉(zhuǎn)動(dòng)副連接課件完整版
評(píng)論
0/150
提交評(píng)論