版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、2021年9月3日星期五1第第9章章可編程并行接口芯片和串行接口芯片可編程并行接口芯片和串行接口芯片9.1 8255A并行接口并行接口9.2 8251A串行接口串行接口9.1 8255A并行接口并行接口9.1.1 并行通信與并行接口并行通信與并行接口9.1.2 8255A可編程并行接口可編程并行接口9.1.3 8255A的控制字的控制字9.1.49.1.5 8255A的工作方式和編程的工作方式和編程補(bǔ)充:補(bǔ)充:8255A在微機(jī)中的應(yīng)用在微機(jī)中的應(yīng)用2021年9月3日星期五22021年9月3日星期五39.1.1 并行通信與并行接口并行通信與并行接口 并行通信并行通信通信雙方有通信雙方有多條數(shù)據(jù)傳
2、送線多條數(shù)據(jù)傳送線,二者之間的數(shù)據(jù)(一般,二者之間的數(shù)據(jù)(一般以以字節(jié)或字為單位字節(jié)或字為單位)通過這些數(shù)據(jù)線同時(shí)傳送;)通過這些數(shù)據(jù)線同時(shí)傳送;01010110 D0D1D2D3D4D5D6D7目目的的D0D1D2D3D4D5D6D7源源2021年9月3日星期五4并行通信的特點(diǎn)并行通信的特點(diǎn) 優(yōu)點(diǎn):優(yōu)點(diǎn):傳輸速度快,信息傳輸效率高;傳輸速度快,信息傳輸效率高; 缺點(diǎn):缺點(diǎn):所用電纜多,成本較高;所用電纜多,成本較高;在長(zhǎng)距離傳輸時(shí),電纜間的干擾大,影響數(shù)據(jù)傳送的正在長(zhǎng)距離傳輸時(shí),電纜間的干擾大,影響數(shù)據(jù)傳送的正確性;確性; 適用場(chǎng)合:適用場(chǎng)合:常用在常用在近距離傳送近距離傳送中使用,如微機(jī)系
3、統(tǒng)中。中使用,如微機(jī)系統(tǒng)中。2021年9月3日星期五5并行接口并行接口 并行接口:并行接口: 可傳送并行數(shù)據(jù)的接口電路??蓚魉筒⑿袛?shù)據(jù)的接口電路。 硬件結(jié)構(gòu):如圖所示硬件結(jié)構(gòu):如圖所示一個(gè)或一個(gè)以上具有鎖存或緩沖的數(shù)據(jù)端口;一個(gè)或一個(gè)以上具有鎖存或緩沖的數(shù)據(jù)端口;與與CPU交換數(shù)據(jù)的控制和狀態(tài)聯(lián)絡(luò)信號(hào);交換數(shù)據(jù)的控制和狀態(tài)聯(lián)絡(luò)信號(hào);與外設(shè)交換數(shù)據(jù)的控制和狀態(tài)聯(lián)絡(luò)信號(hào);與外設(shè)交換數(shù)據(jù)的控制和狀態(tài)聯(lián)絡(luò)信號(hào); 并行接口的識(shí)別:并行接口的識(shí)別:關(guān)鍵是關(guān)鍵是接口與外設(shè)接口與外設(shè)之間的傳送方式;之間的傳送方式; 并行接口可分為簡(jiǎn)單接口和可編程接口兩種。并行接口可分為簡(jiǎn)單接口和可編程接口兩種。CPU與任何接
4、口都是并行的與任何接口都是并行的2021年9月3日星期五62021年9月3日星期五7并行接口的功能并行接口的功能實(shí)現(xiàn)并行數(shù)據(jù)的實(shí)現(xiàn)并行數(shù)據(jù)的無條件方式無條件方式傳送:傳送:通過并行接口內(nèi)的通過并行接口內(nèi)的數(shù)據(jù)端口數(shù)據(jù)端口實(shí)現(xiàn)直接的并行數(shù)據(jù)傳送;實(shí)現(xiàn)直接的并行數(shù)據(jù)傳送;實(shí)現(xiàn)并行數(shù)據(jù)的實(shí)現(xiàn)并行數(shù)據(jù)的查詢方式查詢方式傳送:傳送:并行接口中具有并行接口中具有應(yīng)答機(jī)構(gòu)應(yīng)答機(jī)構(gòu),在數(shù)據(jù)傳送過程中,通過狀態(tài)、,在數(shù)據(jù)傳送過程中,通過狀態(tài)、控制信號(hào)與控制信號(hào)與CPU和外設(shè)聯(lián)絡(luò),以保證數(shù)據(jù)傳送的有效進(jìn)行;和外設(shè)聯(lián)絡(luò),以保證數(shù)據(jù)傳送的有效進(jìn)行;實(shí)現(xiàn)并行數(shù)據(jù)的實(shí)現(xiàn)并行數(shù)據(jù)的中斷方式中斷方式傳送:傳送:并行接口中具有
5、一定的并行接口中具有一定的中斷機(jī)制中斷機(jī)制,可產(chǎn)生中斷請(qǐng)求信號(hào),作,可產(chǎn)生中斷請(qǐng)求信號(hào),作為外設(shè)中斷源提交給為外設(shè)中斷源提交給8259處理,請(qǐng)求數(shù)據(jù)的傳送操作;處理,請(qǐng)求數(shù)據(jù)的傳送操作;中斷方式下的數(shù)據(jù)傳送中斷方式下的數(shù)據(jù)傳送必須與必須與8259配合配合。2021年9月3日星期五8并行接口的輸入過程并行接口的輸入過程 外設(shè)先將外設(shè)先將數(shù)據(jù)送給接口數(shù)據(jù)送給接口,并置,并置“數(shù)據(jù)輸入就緒數(shù)據(jù)輸入就緒”信號(hào)有效;信號(hào)有效; 接口把數(shù)據(jù)接收到數(shù)據(jù)輸入緩沖器的同時(shí),設(shè)置接口把數(shù)據(jù)接收到數(shù)據(jù)輸入緩沖器的同時(shí),設(shè)置“數(shù)據(jù)輸入數(shù)據(jù)輸入應(yīng)答應(yīng)答”信號(hào),作為對(duì)外設(shè)的響應(yīng);信號(hào),作為對(duì)外設(shè)的響應(yīng); 外設(shè)接到此信號(hào)后
6、,撤消數(shù)據(jù)和外設(shè)接到此信號(hào)后,撤消數(shù)據(jù)和“數(shù)據(jù)輸入就緒數(shù)據(jù)輸入就緒”信號(hào);信號(hào); 數(shù)據(jù)到達(dá)接口數(shù)據(jù)到達(dá)接口后,接口狀態(tài)寄存器中設(shè)置后,接口狀態(tài)寄存器中設(shè)置“輸入準(zhǔn)備好輸入準(zhǔn)備好”狀狀態(tài)位,以便態(tài)位,以便CPU查詢,或由中斷機(jī)制生成中斷請(qǐng)求信號(hào);查詢,或由中斷機(jī)制生成中斷請(qǐng)求信號(hào); CPU查詢到查詢到“輸入準(zhǔn)備好輸入準(zhǔn)備好”的有效信號(hào),或得到中斷請(qǐng)求,的有效信號(hào),或得到中斷請(qǐng)求,進(jìn)行數(shù)據(jù)輸入處理時(shí),進(jìn)行數(shù)據(jù)輸入處理時(shí),從接口中讀取數(shù)據(jù)從接口中讀取數(shù)據(jù),接口由該讀取操,接口由該讀取操作自動(dòng)復(fù)位作自動(dòng)復(fù)位“輸入準(zhǔn)備好輸入準(zhǔn)備好”狀態(tài)位,結(jié)束一次數(shù)據(jù)輸入操作。狀態(tài)位,結(jié)束一次數(shù)據(jù)輸入操作。2021年9
7、月3日星期五9數(shù)數(shù) 據(jù)據(jù) 輸輸 入入 過過 程程 示示 意意 圖圖1001 001111001 00111 0111001 001100 0 101001 0011 2021年9月3日星期五10并行接口的輸出過程并行接口的輸出過程 當(dāng)接口狀態(tài)寄存器的當(dāng)接口狀態(tài)寄存器的“輸出準(zhǔn)備好輸出準(zhǔn)備好”位置位時(shí),位置位時(shí),CPU將將數(shù)據(jù)數(shù)據(jù)寫入接口寫入接口的輸出緩沖器;的輸出緩沖器; 執(zhí)行寫入操作后,接口自動(dòng)清除執(zhí)行寫入操作后,接口自動(dòng)清除“輸出準(zhǔn)備好輸出準(zhǔn)備好”狀態(tài)位,同狀態(tài)位,同時(shí)向外設(shè)發(fā)送時(shí)向外設(shè)發(fā)送“數(shù)據(jù)輸出就緒數(shù)據(jù)輸出就緒”信號(hào),并將信號(hào),并將數(shù)據(jù)送到與外設(shè)數(shù)據(jù)送到與外設(shè)連接的數(shù)據(jù)總線上連接的數(shù)
8、據(jù)總線上; 外設(shè)接收到外設(shè)接收到“數(shù)據(jù)輸出就緒數(shù)據(jù)輸出就緒”信號(hào)后,開始信號(hào)后,開始接收數(shù)據(jù)接收數(shù)據(jù),完畢,完畢時(shí)向接口發(fā)回時(shí)向接口發(fā)回“數(shù)據(jù)輸出應(yīng)答數(shù)據(jù)輸出應(yīng)答”信號(hào);信號(hào); 接口收到此信號(hào)后,置位狀態(tài)寄存器中的接口收到此信號(hào)后,置位狀態(tài)寄存器中的“輸出準(zhǔn)備好輸出準(zhǔn)備好”位,位,表示當(dāng)前輸出緩沖器中沒有需要外設(shè)接收的新數(shù)據(jù),等待表示當(dāng)前輸出緩沖器中沒有需要外設(shè)接收的新數(shù)據(jù),等待CPU的下次輸出操作。的下次輸出操作。2021年9月3日星期五11數(shù)數(shù) 據(jù)據(jù) 輸輸 出出 過過 程程 示示 意意 圖圖1 11001 00111001 00110 1001 0011111001 00111 00 1
9、02021年9月3日星期五129.1.2 8255A可編程并行接口可編程并行接口0、8255A的主要特性的主要特性1、8255A的外部引腳的外部引腳2、8255A的內(nèi)部結(jié)構(gòu)的內(nèi)部結(jié)構(gòu)2021年9月3日星期五130、8255A的主要特性的主要特性具有具有三個(gè)三個(gè)8位位的的雙向雙向數(shù)據(jù)端口數(shù)據(jù)端口(A口、口、B口、口、C口口) ;具有具有3種工作方式種工作方式,可通過編程選擇,可通過編程選擇 A口口方式方式0、1、2;B口口方式方式0、1;C口口方式方式0支持無條件、程序查詢、中斷等數(shù)據(jù)傳送方式;支持無條件、程序查詢、中斷等數(shù)據(jù)傳送方式;數(shù)據(jù)端口數(shù)據(jù)端口C口口的使用較為特殊:的使用較為特殊: 既可
10、作為一個(gè)既可作為一個(gè)8位端口,也可作為位端口,也可作為兩個(gè)兩個(gè)4位端口位端口來使用;來使用; 即可作為數(shù)據(jù)端口,也可用作聯(lián)絡(luò)信號(hào)配合即可作為數(shù)據(jù)端口,也可用作聯(lián)絡(luò)信號(hào)配合A、B口工作;口工作; 既可傳送并行數(shù)據(jù),也可既可傳送并行數(shù)據(jù),也可單獨(dú)按位控制單獨(dú)按位控制,有專門的控制字。,有專門的控制字。2021年9月3日星期五141、8255A的的外外部部引引腳腳數(shù)據(jù)總線數(shù)據(jù)總線B口引腳口引腳B口引腳口引腳C口引腳口引腳A口引腳口引腳A口引腳口引腳端口地址信號(hào)端口地址信號(hào)片選、讀寫片選、讀寫控制信號(hào)控制信號(hào)片選、讀寫片選、讀寫控制信號(hào)控制信號(hào)復(fù)位信號(hào)復(fù)位信號(hào)2021年9月3日星期五151、8255A
11、的外部引腳的外部引腳面向面向CPU的引腳的引腳RESET、CS#、RD#、WR#、A1、A0、D7D0 ;n按下按下RESET后的復(fù)位狀態(tài)為:后的復(fù)位狀態(tài)為:片內(nèi)所有寄存器清零,三個(gè)數(shù)據(jù)端口設(shè)為為輸入狀態(tài);片內(nèi)所有寄存器清零,三個(gè)數(shù)據(jù)端口設(shè)為為輸入狀態(tài);面向外設(shè)的引腳面向外設(shè)的引腳PA0PA7、PB0PB7 、PC0PC7 ;2021年9月3日星期五162、8255A的內(nèi)部結(jié)構(gòu)的內(nèi)部結(jié)構(gòu)2021年9月3日星期五17數(shù)據(jù)總線緩沖器數(shù)據(jù)總線緩沖器三態(tài)雙向三態(tài)雙向8位數(shù)據(jù)緩沖器;位數(shù)據(jù)緩沖器;8255與與CPU之間的數(shù)據(jù)中轉(zhuǎn)站;之間的數(shù)據(jù)中轉(zhuǎn)站;可傳送的數(shù)據(jù):可傳送的數(shù)據(jù):CPU要寫入要寫入8255
12、A的控制字;的控制字;CPU與外設(shè)之間傳送的數(shù)據(jù);與外設(shè)之間傳送的數(shù)據(jù);CPU要獲取的外設(shè)狀態(tài)字。要獲取的外設(shè)狀態(tài)字。2021年9月3日星期五18讀寫控制邏輯電路讀寫控制邏輯電路決定決定CPU的操作類型的操作類型CS# RD# WR# A1A0執(zhí)行的操作類型執(zhí)行的操作類型1未選中該未選中該8255A芯片芯片XXX X0CPU對(duì)對(duì)8255A芯片的芯片的A端口執(zhí)行讀操作端口執(zhí)行讀操作010 00CPU對(duì)對(duì)8255A芯片的芯片的A端口執(zhí)行寫操作端口執(zhí)行寫操作100 00CPU對(duì)對(duì)8255A芯片的芯片的B端口執(zhí)行讀操作端口執(zhí)行讀操作010 10CPU對(duì)對(duì)8255A芯片的芯片的B端口執(zhí)行寫操作端口執(zhí)行寫
13、操作100 10CPU對(duì)對(duì)8255A芯片的芯片的C端口執(zhí)行讀操作端口執(zhí)行讀操作011 00CPU對(duì)對(duì)8255A芯片的芯片的C端口執(zhí)行寫操作端口執(zhí)行寫操作101 00無效無效011 10CPU對(duì)對(duì)8255A芯片的命令端口執(zhí)行寫操作芯片的命令端口執(zhí)行寫操作101 12021年9月3日星期五19A組控制電路和組控制電路和B組控制電路組控制電路 分組情況分組情況A組組A口和口和C口的高口的高4位位(PC4PC7 )B組組B口和口和C口的低口的低4位位(PC0PC3 ) 控制電路的作用:控制電路的作用:A、B組控制電路接收來自組控制電路接收來自讀讀/寫部件的命令寫部件的命令和和CPU寫入命寫入命令端口的
14、令端口的控制字控制字,譯碼后控制對(duì)應(yīng)端口的工作方式和讀,譯碼后控制對(duì)應(yīng)端口的工作方式和讀/寫操作方式。寫操作方式。 對(duì)對(duì)C口的按位操作也由此控制部件實(shí)現(xiàn)??诘陌次徊僮饕灿纱丝刂撇考?shí)現(xiàn)。2021年9月3日星期五20三個(gè)獨(dú)立的輸入三個(gè)獨(dú)立的輸入/輸出數(shù)據(jù)端口(輸出數(shù)據(jù)端口(A、B、C口)口) 端口特點(diǎn)端口特點(diǎn)3個(gè)個(gè)8位數(shù)據(jù)端口,都由位數(shù)據(jù)端口,都由輸入寄存器和輸出寄存器輸入寄存器和輸出寄存器構(gòu)成;構(gòu)成;A口口的輸入的輸入/輸出寄存器均有鎖存功能;輸出寄存器均有鎖存功能;B、C口口的輸出寄的輸出寄存器具有鎖存功能,但其輸入寄存器不能鎖存數(shù)據(jù);存器具有鎖存功能,但其輸入寄存器不能鎖存數(shù)據(jù); C口的獨(dú)
15、特工作方式口的獨(dú)特工作方式A、B口工作于方式口工作于方式1、2時(shí),時(shí),C口的高口的高/低低4位分別作為位分別作為A、B口在數(shù)據(jù)傳輸時(shí)的控制聯(lián)絡(luò)信號(hào)線;口在數(shù)據(jù)傳輸時(shí)的控制聯(lián)絡(luò)信號(hào)線;C口的每一位可獨(dú)立進(jìn)行置口的每一位可獨(dú)立進(jìn)行置/復(fù)位的操作。復(fù)位的操作。 設(shè)設(shè)A、B 、C口及命令口的端口地址分別為口及命令口的端口地址分別為60H63H 。2021年9月3日星期五219.1.3 8255A的控制字的控制字8255A共包括兩個(gè)控制字共包括兩個(gè)控制字 工作方式選擇控制字工作方式選擇控制字n指定指定8255A的的3個(gè)端口工作方式及該方式下的操作類型;個(gè)端口工作方式及該方式下的操作類型; C口置復(fù)位控制
16、字口置復(fù)位控制字n指定指定C口的某一位輸出高電平或低電平;口的某一位輸出高電平或低電平;CPU對(duì)對(duì)8255A的編程使用的編程使用 向向8255A的命令端口寫入工作方式控制字,選擇工作方式;的命令端口寫入工作方式控制字,選擇工作方式; 若需要傳送數(shù)據(jù),則對(duì)若需要傳送數(shù)據(jù),則對(duì)A、B、C口進(jìn)行數(shù)據(jù)讀寫;口進(jìn)行數(shù)據(jù)讀寫;1. 若需要若需要C口發(fā)送命令,則可使用口發(fā)送命令,則可使用C口置復(fù)位控制字來設(shè)置;口置復(fù)位控制字來設(shè)置;2021年9月3日星期五221、工作方式選擇控制字的格式、工作方式選擇控制字的格式1D6D5D4D3D2D1D0A口工作方式口工作方式00方式方式001方式方式110方式方式21
17、1無效無效A口的口的操作方式操作方式0輸出輸出1輸入輸入C口高口高4位位操作方式操作方式0輸出輸出1輸入輸入B口的口的工作方式工作方式0方式方式01方式方式1B口的口的操作方式操作方式0輸出輸出1輸入輸入C口低口低4位操作位操作方式方式0輸出輸出1輸入輸入標(biāo)志位標(biāo)志位2021年9月3日星期五23工作方式選擇控制字應(yīng)用舉例(工作方式選擇控制字應(yīng)用舉例(1/2)例例1. A口工作于方式口工作于方式1,輸入口,輸入口,C口高口高4位為輸出;位為輸出;B口工作于方口工作于方式式0,輸出口,輸出口,C口低口低4位為輸入,試寫出初始化程序段。位為輸入,試寫出初始化程序段。按題目要求寫出控制字按題目要求寫出
18、控制字則初始化程序段為:則初始化程序段為:MOV AL , 0B1HOUT 63H , AL10 1100012021年9月3日星期五24例例2. A口工作于方式口工作于方式2,輸入口;,輸入口;B口工作于方式口工作于方式1,輸出口,試,輸出口,試寫出初始化程序段。寫出初始化程序段。按題目要求寫出控制字按題目要求寫出控制字則初始化程序段為:則初始化程序段為:MOV AL , 0D4HOUT 63H , AL11 010100工作方式選擇控制字應(yīng)用舉例(工作方式選擇控制字應(yīng)用舉例(2/2)2021年9月3日星期五252、C口置復(fù)位控制字口置復(fù)位控制字0D3D2D1D0操作位選擇操作位選擇000P
19、C0001PC1010PC2011PC3111PC7選定位的選定位的設(shè)置方式設(shè)置方式0復(fù)位復(fù)位1置位置位2021年9月3日星期五26C口置復(fù)位控制字應(yīng)用舉例(口置復(fù)位控制字應(yīng)用舉例(1/3)例例3. 使使PC2輸出高電平,則相應(yīng)的程序段應(yīng)如何設(shè)置?輸出高電平,則相應(yīng)的程序段應(yīng)如何設(shè)置? 按題目要求寫出控制字按題目要求寫出控制字 則相應(yīng)的程序段為:則相應(yīng)的程序段為:MOV AL , 05HOUT 63H , AL0000D3D2D1D0 0 1 0 12021年9月3日星期五27C口置復(fù)位控制字應(yīng)用舉例(口置復(fù)位控制字應(yīng)用舉例(2/3)例例4. 使使PC7輸出一個(gè)負(fù)脈沖,作為外設(shè)的選通信號(hào)。輸出
20、一個(gè)負(fù)脈沖,作為外設(shè)的選通信號(hào)。 程序段:程序段: MOV AL , 0000 1111 OUT 63H , AL MOV CX , 50H L1: LOOP L1 MOV AL , 0000 1110 OUT 63H , AL MOV CX , 5H L2: LOOP L2 MOV AL , 0000 1111 OUT 63H , AL使使PC7輸出高電平輸出高電平維持一段時(shí)間維持一段時(shí)間使使PC7輸出低電平輸出低電平維持一段時(shí)間(短)維持一段時(shí)間(短)使使PC7輸出高電平輸出高電平2021年9月3日星期五28C口置復(fù)位控制字應(yīng)用舉例(口置復(fù)位控制字應(yīng)用舉例(3/3)例例5. 使使PC7輸出
21、方波,經(jīng)濾波放大后送喇叭發(fā)聲。輸出方波,經(jīng)濾波放大后送喇叭發(fā)聲。 輸出一個(gè)方波子程序:輸出一個(gè)方波子程序: SPK PROC MOV AL , 0000 1111 OUT 63H , AL CALL DELAY1 MOV AL , 0000 1110 OUT 63H , AL CALL DELAY1 RET SPK ENDP連續(xù)方波:連續(xù)方波: L: CALL SPK JMP L可控連續(xù)方波:可控連續(xù)方波: L: CALL SPK J L條件轉(zhuǎn)移指令條件轉(zhuǎn)移指令2021年9月3日星期五29應(yīng)用控制字的注意要點(diǎn)應(yīng)用控制字的注意要點(diǎn)寫入時(shí)間:寫入時(shí)間:工作方式控制字要在工作方式控制字要在使用使用8
22、255A之前之前寫入其命令端口;寫入其命令端口;C口置口置/復(fù)位控制字在復(fù)位控制字在8255A工作的任何時(shí)候進(jìn)行的;工作的任何時(shí)候進(jìn)行的;兩個(gè)控制字寫入同一命令端口,即兩個(gè)控制字寫入同一命令端口,即63H;一定不能將置一定不能將置/復(fù)位控制字寫入復(fù)位控制字寫入C口口(62H) 中中;對(duì)對(duì)C口的設(shè)置可以有兩種方法:口的設(shè)置可以有兩種方法:使用使用C口置口置/復(fù)位控制字,每次設(shè)置一個(gè)復(fù)位控制字,每次設(shè)置一個(gè)PC位的輸出狀態(tài);位的輸出狀態(tài);n無論初始化時(shí)該無論初始化時(shí)該P(yáng)C位的輸入輸出狀態(tài)均可;位的輸入輸出狀態(tài)均可;直接寫直接寫C口,每次必須同時(shí)設(shè)置多個(gè)口,每次必須同時(shí)設(shè)置多個(gè)(4或或8) PC位的
23、輸出狀態(tài);位的輸出狀態(tài);n初始化時(shí),該初始化時(shí),該P(yáng)C位應(yīng)為輸出狀態(tài);位應(yīng)為輸出狀態(tài);2021年9月3日星期五309.1.49.1.5 8255A工作方式及工作方式及編程編程應(yīng)用應(yīng)用1、基本輸入、基本輸入/輸出方式(方式輸出方式(方式0)2、選通輸入、選通輸入/輸出方式(方式輸出方式(方式1)3、雙向輸入、雙向輸入/輸出方式(方式輸出方式(方式2)2021年9月3日星期五311、基本輸入、基本輸入/輸出方式(方式輸出方式(方式0)方式方式0的工作特點(diǎn):的工作特點(diǎn):基本的輸入基本的輸入/輸出方式輸出方式,此方式,此方式?jīng)]有固定的聯(lián)絡(luò)信號(hào)沒有固定的聯(lián)絡(luò)信號(hào),A、B、C三個(gè)端口均可作為數(shù)據(jù)端口工作于
24、此方式下;三個(gè)端口均可作為數(shù)據(jù)端口工作于此方式下;單向單向I/O方式方式,即,即每次初始化每次初始化后,指定端口(兩個(gè)后,指定端口(兩個(gè)8位端口和位端口和兩個(gè)兩個(gè)4位端口)只能作為輸入端口或輸出端口;位端口)只能作為輸入端口或輸出端口;方式方式0下的數(shù)據(jù)傳送,可以是下的數(shù)據(jù)傳送,可以是無條件方式無條件方式,或,或查詢方式查詢方式;n方式方式0下的查詢傳送方式,需要使用下的查詢傳送方式,需要使用C口中的某些口中的某些PC位位自自定義定義為所需的聯(lián)絡(luò)信號(hào)。為所需的聯(lián)絡(luò)信號(hào)。2021年9月3日星期五32例例6. 利用利用8255A控制控制8個(gè)發(fā)光二極管的亮和滅,個(gè)發(fā)光二極管的亮和滅,要求每隔要求每隔
25、0.5s依次點(diǎn)亮依次點(diǎn)亮L7L0一次,周而復(fù)一次,周而復(fù)始,硬件連接如下圖。始,硬件連接如下圖。分析:分析:發(fā)光二極管上有電流通過時(shí),發(fā)光二極管上有電流通過時(shí),會(huì)被點(diǎn)亮;會(huì)被點(diǎn)亮;nPA端輸出端輸出1,二極管熄滅;,二極管熄滅;nPA端輸出端輸出0,二極管點(diǎn)亮,二極管點(diǎn)亮編寫循環(huán)程序,控制編寫循環(huán)程序,控制PA7PA0每每隔隔0.5s依次輸出依次輸出0,而后變?yōu)?,而后變?yōu)?,即可滿足題目要求。即可滿足題目要求。2021年9月3日星期五33例例6的控制程序的控制程序 8255A初始化控制字:初始化控制字:A口方式口方式0,輸出端口,輸出端口,即控制字為即控制字為1000 0000 初始化程序段:
26、初始化程序段: MOV AL , 80H OUT 63H , AL A口按要求輸出數(shù)據(jù)程序段:口按要求輸出數(shù)據(jù)程序段: MOV AH , 7FH LOOP: MOV AL , AH OUT 60H , AL CALL DELAY1 ROR AH , 1 JMP LOOP延時(shí)延時(shí)0.5秒秒控制控制數(shù)據(jù)數(shù)據(jù)2021年9月3日星期五34例例7. 利用利用8255A的的A口方式口方式0設(shè)計(jì)并行打印機(jī)接口。設(shè)計(jì)并行打印機(jī)接口。要求:要求:CPU采用采用查詢方式查詢方式將緩沖區(qū)將緩沖區(qū)BUF中的中的256個(gè)個(gè)字符通過接口送到打印機(jī)打印。字符通過接口送到打印機(jī)打印。 采用查詢方式:采用查詢方式:在接口和打印
27、機(jī)之間必須要有聯(lián)絡(luò)控制信號(hào),以返回打在接口和打印機(jī)之間必須要有聯(lián)絡(luò)控制信號(hào),以返回打印機(jī)狀態(tài),及控制打印機(jī)工作;印機(jī)狀態(tài),及控制打印機(jī)工作;打印機(jī)的控制信號(hào)和工作時(shí)序;打印機(jī)的控制信號(hào)和工作時(shí)序;接口電路和打印機(jī)之間的連接,及信號(hào)控制的完成。接口電路和打印機(jī)之間的連接,及信號(hào)控制的完成。 打印內(nèi)容:打印內(nèi)容:程序中程序中CPU必須先將要打印的數(shù)據(jù)從緩沖區(qū)必須先將要打印的數(shù)據(jù)從緩沖區(qū)BUF中逐個(gè)中逐個(gè)讀出,在查詢到打印機(jī)就緒狀態(tài)后送到接口中。讀出,在查詢到打印機(jī)就緒狀態(tài)后送到接口中。2021年9月3日星期五35打印機(jī)的控制信打印機(jī)的控制信號(hào)和工作時(shí)序號(hào)和工作時(shí)序控制信號(hào):控制信號(hào):STB#:輸入
28、輸入,打印機(jī)選通信號(hào);,打印機(jī)選通信號(hào);BUSY:輸出輸出,表示忙狀態(tài)信號(hào);,表示忙狀態(tài)信號(hào);ACK#:輸出輸出,打印機(jī)工作結(jié)束應(yīng)答信號(hào);,打印機(jī)工作結(jié)束應(yīng)答信號(hào);工作時(shí)序工作時(shí)序需要打印數(shù)據(jù)時(shí),需要打印數(shù)據(jù)時(shí),CPU先查看打印機(jī)的先查看打印機(jī)的BUSY忙信號(hào),若忙信號(hào),若BUSY=0,則將數(shù)據(jù)送數(shù)據(jù)總線;,則將數(shù)據(jù)送數(shù)據(jù)總線;數(shù)據(jù)穩(wěn)定后,數(shù)據(jù)穩(wěn)定后,發(fā)發(fā)STB#選通信號(hào)選通信號(hào),打印機(jī)即讀入數(shù)據(jù),同,打印機(jī)即讀入數(shù)據(jù),同時(shí)使時(shí)使BUSY信號(hào)有效信號(hào)有效,通知主機(jī)停止送數(shù);,通知主機(jī)停止送數(shù);打印機(jī)處理完當(dāng)前數(shù)據(jù)后,使打印機(jī)處理完當(dāng)前數(shù)據(jù)后,使ACK#響應(yīng)信號(hào)有效響應(yīng)信號(hào)有效,同時(shí),同時(shí)使使B
29、USY失效失效,通知主機(jī)可以發(fā)下一個(gè)數(shù)據(jù)。,通知主機(jī)可以發(fā)下一個(gè)數(shù)據(jù)。2021年9月3日星期五36打印機(jī)與接口之間的連接圖打印機(jī)與接口之間的連接圖思考:思考:8255A工作于方式工作于方式0下,與打印機(jī)之間的聯(lián)絡(luò)信號(hào)如何設(shè)置?下,與打印機(jī)之間的聯(lián)絡(luò)信號(hào)如何設(shè)置?所需要的選通信號(hào)和狀態(tài)信號(hào)對(duì)所需要的選通信號(hào)和狀態(tài)信號(hào)對(duì)8255A來說分別是來說分別是輸入輸入和和輸出輸出的兩種狀態(tài),的兩種狀態(tài),可使用可使用C口作為聯(lián)絡(luò)信號(hào)口作為聯(lián)絡(luò)信號(hào),并且把,并且把高低高低4位位分別定義為輸入和輸出兩種操作分別定義為輸入和輸出兩種操作方式,以滿足聯(lián)絡(luò)需要。方式,以滿足聯(lián)絡(luò)需要。PC7PC2PA7PA0STB#BU
30、SYD7D02021年9月3日星期五37程程 序序 流流 程程 圖圖開開 始始初始化初始化8255A和數(shù)據(jù)指針和數(shù)據(jù)指針禁止打印禁止打印取數(shù)據(jù)由接口送至打印機(jī)取數(shù)據(jù)由接口送至打印機(jī)打印機(jī)忙?打印機(jī)忙?使使8255A控制選通打印機(jī)控制選通打印機(jī)修改數(shù)據(jù)指針修改數(shù)據(jù)指針需打印數(shù)據(jù)傳送完畢?需打印數(shù)據(jù)傳送完畢?結(jié)結(jié) 束束YNYN2021年9月3日星期五38初初 始始 化化 程程 序序 段(段(8255A) A口作為數(shù)據(jù)輸出口,工作于方式口作為數(shù)據(jù)輸出口,工作于方式0; B口沒有使用;口沒有使用; C口作為查詢聯(lián)絡(luò)信號(hào):口作為查詢聯(lián)絡(luò)信號(hào):PC7輸出的選通信號(hào);輸出的選通信號(hào);PC2輸入的狀態(tài)信號(hào)。輸
31、入的狀態(tài)信號(hào)。 8255A的工作方式控制字為的工作方式控制字為 8255A的初始化程序段的初始化程序段MOV AL , 81H OUT 63H , AL10 00000181H2021年9月3日星期五39初初 始始 化化 程程 序序 段(數(shù)據(jù)指針)段(數(shù)據(jù)指針) 使用使用間接尋址間接尋址或或相對(duì)尋址相對(duì)尋址的方式對(duì)連續(xù)的存儲(chǔ)空間尋址;的方式對(duì)連續(xù)的存儲(chǔ)空間尋址; 打印打印BUF緩沖區(qū)中的緩沖區(qū)中的256個(gè)字符,故取操作數(shù)的程序?yàn)檠h(huán)個(gè)字符,故取操作數(shù)的程序?yàn)檠h(huán)次數(shù)已知的循環(huán)程序,需要設(shè)置循環(huán)計(jì)數(shù)器次數(shù)已知的循環(huán)程序,需要設(shè)置循環(huán)計(jì)數(shù)器CX。間接尋址方式:間接尋址方式: MOV SI , OF
32、FSET BUF (或或 LEA SI , BUF) MOV CX , 256AGAIN: MOV AL , SI INC SI LOOP AGAIN相對(duì)尋址方式:相對(duì)尋址方式: MOV SI , 0 MOV CX , 256AGAIN: MOV AL , BUFSI INC SI LOOP AGAIN2021年9月3日星期五40打印的選通與禁止打印的選通與禁止 打印機(jī)的選通信號(hào)打印機(jī)的選通信號(hào)STB#由由8255A的的PC7控制;控制;PC7輸出高電平,禁止打印機(jī)工作;輸出高電平,禁止打印機(jī)工作;PC7輸出下降沿,選通打印機(jī)工作;輸出下降沿,選通打印機(jī)工作;01 1 1101 1 10禁止打
33、?。航勾蛴。?MOV AL , 0FH OUT 63H , AL選通打?。哼x通打印: MOV AL , 0EH OUT 63H , AL NOP NOP MOV AL , 0FH OUT 63H , AL2021年9月3日星期五41“ 打打 印印 機(jī)機(jī) 忙忙 ” 判判 斷斷數(shù)數(shù) 據(jù)據(jù) 的的 輸輸 出出 打打 印印 讀取讀取8255A的的PC2的狀態(tài),以判斷下一步操作。的狀態(tài),以判斷下一步操作。 0空閑,可以輸出欲打印數(shù)據(jù);空閑,可以輸出欲打印數(shù)據(jù);1忙,上次數(shù)據(jù)尚未打印完畢,忙,上次數(shù)據(jù)尚未打印完畢,CPU需等待。需等待。 程序段程序段 WAIT: IN AL , 62H ;讀讀C口口 AN
34、D AL , 04H ;判斷判斷PC2狀態(tài)狀態(tài) JNZ WAIT ;若若BUSY1,則等待,則等待 ;否則,取下一打印數(shù)據(jù)否則,取下一打印數(shù)據(jù) OUT 60H , AL ;將數(shù)據(jù)由將數(shù)據(jù)由A口送至打印機(jī)口送至打印機(jī)2021年9月3日星期五42例例7. 8255A方式方式0下的查詢傳送源程序下的查詢傳送源程序 MOV AL , 81H OUT 63H , AL MOV SI , 0 MOV CX , 256 MOV AL , 0FH OUT 63H , ALWAIT: IN AL , 62H AND AL , 04H JNZ WAIT MOV AL , BUFSI OUT 60H , AL MO
35、V AL , 0EH OUT 63H , AL NOP NOP MOV AL , 0FH OUT 63H , AL INC SI LOOP WAIT 8255A初始化初始化PC7=1禁止打印禁止打印查詢查詢PC2的的狀態(tài),決定狀態(tài),決定是否打印是否打印打印機(jī)就緒打印機(jī)就緒后,后,CPU送送出要打印的出要打印的數(shù)據(jù)數(shù)據(jù)通過通過PC7選通選通打印機(jī)開始接打印機(jī)開始接收數(shù)據(jù)并打印收數(shù)據(jù)并打印循環(huán)繼續(xù)以循環(huán)繼續(xù)以查詢方式輸查詢方式輸出數(shù)據(jù)并打印出數(shù)據(jù)并打印2021年9月3日星期五432、選通輸入、選通輸入/輸出方式(方式輸出方式(方式1) 方式方式1的工作特點(diǎn):的工作特點(diǎn):選通輸入選通輸入/輸出方式輸
36、出方式,A、B口可工作于方式口可工作于方式1下,由指定下,由指定的的PC位作為固定的聯(lián)絡(luò)信號(hào)使用;位作為固定的聯(lián)絡(luò)信號(hào)使用;n輸入和輸出操作所需的聯(lián)絡(luò)信號(hào)不同,但各操作的聯(lián)輸入和輸出操作所需的聯(lián)絡(luò)信號(hào)不同,但各操作的聯(lián)絡(luò)信號(hào)都存在著絡(luò)信號(hào)都存在著固定的時(shí)序關(guān)系固定的時(shí)序關(guān)系,要嚴(yán)格遵循。,要嚴(yán)格遵循。單向單向I/O方式方式,要改變輸入,要改變輸入/輸出狀態(tài),必須重寫工作方輸出狀態(tài),必須重寫工作方式控制字;式控制字;方式方式1可使用可使用查詢查詢或或中斷中斷的方式傳送數(shù)據(jù);的方式傳送數(shù)據(jù);帶選通的單向帶選通的單向IOIO方式方式2021年9月3日星期五44方式方式1輸入操作的聯(lián)絡(luò)信號(hào)(輸入操作的
37、聯(lián)絡(luò)信號(hào)(1/2) 選通信號(hào)選通信號(hào)STB#:外設(shè)外設(shè)8255A,低電平有效,低電平有效該信號(hào)有效期間,數(shù)據(jù)由外設(shè)傳送至該信號(hào)有效期間,數(shù)據(jù)由外設(shè)傳送至8255A;8255A分別使用分別使用PC4、PC2作為作為STBA#和和STBB# 。 輸入緩沖器滿信號(hào)輸入緩沖器滿信號(hào)IBF:由由8255A輸出輸出,高電平有效,高電平有效該信號(hào)有效表示當(dāng)前該信號(hào)有效表示當(dāng)前8255A的輸入緩沖器中有新數(shù)據(jù),等待的輸入緩沖器中有新數(shù)據(jù),等待CPU讀取,并且禁止外設(shè)再次送入數(shù)據(jù);讀取,并且禁止外設(shè)再次送入數(shù)據(jù);作用是:作用是:應(yīng)答應(yīng)答外設(shè)的外設(shè)的STB#信號(hào);或供信號(hào);或供CPU查詢的查詢的狀態(tài)位狀態(tài)位;82
38、55A分別使用分別使用PC5、PC1作為作為IBFA和和IBFB 。2021年9月3日星期五45方式方式1輸入操作的聯(lián)絡(luò)信號(hào)(輸入操作的聯(lián)絡(luò)信號(hào)(2/2) 中斷請(qǐng)求信號(hào)中斷請(qǐng)求信號(hào)INTR:8255ACPU,高電平有效,高電平有效 該信號(hào)由該信號(hào)由8255A的內(nèi)部控制邏輯產(chǎn)生,用于中斷傳送方式下,的內(nèi)部控制邏輯產(chǎn)生,用于中斷傳送方式下,向向CPU發(fā)出輸入請(qǐng)求;發(fā)出輸入請(qǐng)求; 8255A分別使用分別使用PC3、PC0作為作為INTRA和和INTRB。 中斷允許信號(hào)中斷允許信號(hào)INTE:8255A內(nèi)部控制信號(hào),高電平有效內(nèi)部控制信號(hào),高電平有效 INTE=1時(shí),時(shí),8255A才有可能產(chǎn)生才有可能產(chǎn)
39、生INTR請(qǐng)求;否則不會(huì)產(chǎn)生請(qǐng)求;否則不會(huì)產(chǎn)生INTR信號(hào);信號(hào); 對(duì)對(duì)INTE的的設(shè)置位同設(shè)置位同STB#信號(hào)位信號(hào)位(PC4、PC2),屬于),屬于8255A的的內(nèi)部操作內(nèi)部操作,不影響,不影響STB#信號(hào)的狀態(tài)。信號(hào)的狀態(tài)。2021年9月3日星期五46方方 式式 1 下下 輸輸 入入 聯(lián)聯(lián) 絡(luò)絡(luò) 信信 號(hào)號(hào) 示示 意意 圖圖中斷機(jī)制:中斷機(jī)制:當(dāng)當(dāng)STB# =1(外設(shè)輸入數(shù)據(jù)已結(jié)束外設(shè)輸入數(shù)據(jù)已結(jié)束)、IBF =1(輸入輸入緩沖器中有新數(shù)據(jù)緩沖器中有新數(shù)據(jù))、INTE =1(允許中斷允許中斷)時(shí),使時(shí),使INTR有效;有效;2021年9月3日星期五47方式方式1輸入操作的工作時(shí)序輸入操作
40、的工作時(shí)序 外設(shè)將準(zhǔn)備好的外設(shè)將準(zhǔn)備好的數(shù)據(jù)送至數(shù)據(jù)線數(shù)據(jù)送至數(shù)據(jù)線上,并發(fā)有效的上,并發(fā)有效的STB#信號(hào);信號(hào); STB#下降沿將下降沿將數(shù)據(jù)送入數(shù)據(jù)送入8255A的輸入緩沖器的輸入緩沖器中,并中,并8255A置置IBF有效,禁止外設(shè)再次輸入數(shù)據(jù);有效,禁止外設(shè)再次輸入數(shù)據(jù); STB#自動(dòng)維持一段時(shí)間后,其上升沿使自動(dòng)維持一段時(shí)間后,其上升沿使8255A內(nèi)部邏輯生成內(nèi)部邏輯生成INTR中斷請(qǐng)求信號(hào),請(qǐng)求中斷請(qǐng)求信號(hào),請(qǐng)求CPU執(zhí)行中斷,讀入數(shù)據(jù);執(zhí)行中斷,讀入數(shù)據(jù); CPU在中斷服務(wù)時(shí)在中斷服務(wù)時(shí)執(zhí)行讀操作執(zhí)行讀操作,RD#前沿撤銷前沿撤銷INTR,后沿撤后沿撤銷銷IBF,結(jié)束一次數(shù)據(jù)的輸
41、入操作。,結(jié)束一次數(shù)據(jù)的輸入操作。外設(shè)送外設(shè)送出數(shù)據(jù)出數(shù)據(jù)STB#IBFINTRRD#CPU響響應(yīng)中斷應(yīng)中斷CPU讀讀入數(shù)據(jù)入數(shù)據(jù)接口讀接口讀入數(shù)據(jù)入數(shù)據(jù)2021年9月3日星期五48方式方式1輸出操作的聯(lián)絡(luò)信號(hào)(輸出操作的聯(lián)絡(luò)信號(hào)(1/2) 輸出緩沖器滿信號(hào)輸出緩沖器滿信號(hào)OBF#:由由8255A輸出,低電平有效輸出,低電平有效 該信號(hào)有效,表示該信號(hào)有效,表示8255A的輸出緩沖寄存器中有新數(shù)據(jù)等待的輸出緩沖寄存器中有新數(shù)據(jù)等待外設(shè)讀??;外設(shè)讀??; 用于用于通知外設(shè)通知外設(shè)取走新數(shù)據(jù);或取走新數(shù)據(jù);或供供CPU查詢狀態(tài)查詢狀態(tài); 8255A分別使用分別使用PC7、PC1作為作為 OBFA#和
42、和OBFB#。 外部應(yīng)答信號(hào)外部應(yīng)答信號(hào)ACK#:外設(shè)外設(shè)8255A,低電平有效,低電平有效 對(duì)對(duì)OBF#的應(yīng)答信號(hào),的應(yīng)答信號(hào),8255A收到該信號(hào)時(shí),表示外設(shè)已從收到該信號(hào)時(shí),表示外設(shè)已從8255A中取走數(shù)據(jù),結(jié)束本次輸出操作;中取走數(shù)據(jù),結(jié)束本次輸出操作; 8255A分別使用分別使用PC6、PC2作為作為ACKA#和和ACKB#。2021年9月3日星期五49方式方式1輸出操作的聯(lián)絡(luò)信號(hào)(輸出操作的聯(lián)絡(luò)信號(hào)(2/2) 中斷請(qǐng)求信號(hào)中斷請(qǐng)求信號(hào)INTR:8255ACPU,高電平有效,高電平有效 該信號(hào)由該信號(hào)由8255A的內(nèi)部控制邏輯產(chǎn)生,用于中斷傳送方式下,的內(nèi)部控制邏輯產(chǎn)生,用于中斷傳送
43、方式下,向向CPU發(fā)出輸出數(shù)據(jù)的請(qǐng)求;發(fā)出輸出數(shù)據(jù)的請(qǐng)求; 8255A分別使用分別使用PC3、PC0作為作為INTRA和和INTRB。 中斷允許信號(hào)中斷允許信號(hào)INTE:8255A內(nèi)部控制信號(hào),高電平有效內(nèi)部控制信號(hào),高電平有效 INTE=1時(shí),時(shí),8255A才有可能產(chǎn)生才有可能產(chǎn)生INTR請(qǐng)求;否則不會(huì)產(chǎn)生請(qǐng)求;否則不會(huì)產(chǎn)生INTR信號(hào);信號(hào); 對(duì)對(duì)INTE的的設(shè)置位同設(shè)置位同ACK#信號(hào)位信號(hào)位(PC6、PC2),屬于),屬于8255A的的內(nèi)部操作內(nèi)部操作,不影響,不影響ACK#信號(hào)的狀態(tài)。信號(hào)的狀態(tài)。2021年9月3日星期五50方方 式式 1 下下 輸輸 出出 聯(lián)聯(lián) 絡(luò)絡(luò) 信信 號(hào)號(hào) 示
44、示 意意 圖圖中斷機(jī)制:中斷機(jī)制:當(dāng)當(dāng)OBF# =1(輸出緩沖器空輸出緩沖器空)、ACK# =1(外設(shè)結(jié)束上外設(shè)結(jié)束上一數(shù)據(jù)的輸出操作一數(shù)據(jù)的輸出操作)、INTE =1(允許中斷允許中斷)、WR# =1(CPU完成完成一次數(shù)據(jù)的寫操作一次數(shù)據(jù)的寫操作)時(shí),時(shí),INTR有效;有效;2021年9月3日星期五51方式方式1輸出操作的工作時(shí)序輸出操作的工作時(shí)序 CPU輸出數(shù)據(jù)輸出數(shù)據(jù)到到8255A的輸出緩沖器,的輸出緩沖器,WR#有效有效,其前沿撤,其前沿撤消消INTR信號(hào),信號(hào),后沿設(shè)置后沿設(shè)置OBF#信號(hào)信號(hào); 外設(shè)得到外設(shè)得到OBF#有效信號(hào)后,有效信號(hào)后,讀取數(shù)據(jù)讀取數(shù)據(jù),并,并發(fā)出發(fā)出ACK
45、#應(yīng)答信應(yīng)答信號(hào)號(hào),通知,通知8255A; ACK#前沿撤銷前沿撤銷OBF#,即表示輸出緩沖器空,可以開始新的,即表示輸出緩沖器空,可以開始新的輸出操作,后沿使輸出操作,后沿使8255A內(nèi)部邏輯內(nèi)部邏輯產(chǎn)生新的中斷請(qǐng)求產(chǎn)生新的中斷請(qǐng)求INTR。接口讀接口讀入數(shù)據(jù)入數(shù)據(jù)CPU送送出數(shù)據(jù)出數(shù)據(jù)WR#OBF#INTRACK#外設(shè)讀外設(shè)讀入數(shù)據(jù)入數(shù)據(jù)2021年9月3日星期五52方式方式1下的下的C口狀態(tài)口狀態(tài) 方式方式1下,某些下,某些PC位作為固定的聯(lián)絡(luò)信號(hào)配合位作為固定的聯(lián)絡(luò)信號(hào)配合A、B口工作;口工作; 對(duì)于對(duì)于C口中不使用的其他位,仍然可以作為數(shù)據(jù)端口;口中不使用的其他位,仍然可以作為數(shù)據(jù)端口
46、;A、B口輸出操作時(shí):口輸出操作時(shí):OBF#AACK#AI/OI/OINTRAACK#BOBF#BINTRBA、B口輸入操作時(shí):口輸入操作時(shí):I/OI/OIBFASTB#AINTRASTB#BIBFBINTRBA口輸入、口輸入、B口輸出操作時(shí):口輸出操作時(shí):I/OI/OIBFASTB#AINTRAACK#BOBF#BINTRB2021年9月3日星期五53例例8. 利用利用8255A的的A口方式口方式1設(shè)計(jì)并行打印機(jī)接口。設(shè)計(jì)并行打印機(jī)接口。要求:要求:CPU采用查詢方式將存放在緩沖區(qū)采用查詢方式將存放在緩沖區(qū)BUF的的256個(gè)字符通過接口送到打印機(jī)打印。個(gè)字符通過接口送到打印機(jī)打印。A口工作于
47、方式口工作于方式1,作為輸出口,指定的聯(lián)絡(luò)信號(hào),作為輸出口,指定的聯(lián)絡(luò)信號(hào)OBFA# (PC7)、ACKA# (PC6)、INTRA(PC3)打印機(jī)的聯(lián)絡(luò)信號(hào)打印機(jī)的聯(lián)絡(luò)信號(hào)BUSY、STB#、ACK#與方式與方式0下的工作情況相似,只是在方式下的工作情況相似,只是在方式1下必須使用指定下必須使用指定PC位的聯(lián)絡(luò)信號(hào),而不能隨意自定義;位的聯(lián)絡(luò)信號(hào),而不能隨意自定義;方法方法1:將:將A口的口的OBF#、ACK#信號(hào)作為打印機(jī)的聯(lián)絡(luò)信號(hào)信號(hào)作為打印機(jī)的聯(lián)絡(luò)信號(hào)方法方法2:自定義打印機(jī)的選通信號(hào):自定義打印機(jī)的選通信號(hào)2021年9月3日星期五54將將A口的口的OBF#、ACK#信號(hào)作為打印機(jī)的聯(lián)
48、絡(luò)信號(hào)信號(hào)作為打印機(jī)的聯(lián)絡(luò)信號(hào)CPU從從A口送出口送出要打印數(shù)據(jù)要打印數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)01 001查詢等待查詢等待OBF#無效無效數(shù)據(jù)數(shù)據(jù)2021年9月3日星期五55方式方式1下查詢控制方式的傳送程序下查詢控制方式的傳送程序 MOV AL , 1010 0000B OUT 63H , AL LEA SI , BUF MOV CX , 256 NEXT: MOV AL , SI OUT 60H , AL INC SIAGAIN: IN AL , 62H TEST AL , 80H JZ AGAIN LOOP NEXT初始化程序段初始化程序段(8255A和數(shù)據(jù)指針)和數(shù)據(jù)指針)CPU查詢接口的
49、輸出狀態(tài)查詢接口的輸出狀態(tài)(OBF#,PC7),判斷是否開),判斷是否開始下一個(gè)數(shù)據(jù)的輸出操作。始下一個(gè)數(shù)據(jù)的輸出操作。CPU輸出數(shù)據(jù)到輸出數(shù)據(jù)到8255A的的A口口2021年9月3日星期五563、雙向輸入、雙向輸入/輸出方式(方式輸出方式(方式2)工作特點(diǎn):工作特點(diǎn): 雙向選通輸入雙向選通輸入/輸出方式輸出方式,只有,只有A口可以使用;口可以使用; 設(shè)有設(shè)有專用的輸入專用的輸入/輸出聯(lián)絡(luò)信號(hào)線輸出聯(lián)絡(luò)信號(hào)線(IBFA、STBA#、OBF#A、ACK#A、INTRA),各聯(lián)絡(luò)信號(hào)的時(shí)序關(guān)),各聯(lián)絡(luò)信號(hào)的時(shí)序關(guān)系同方式系同方式1; 工作于方式工作于方式2下下A口既可以作數(shù)據(jù)輸入端口,也可以口既可
50、以作數(shù)據(jù)輸入端口,也可以作數(shù)據(jù)輸出端口;作數(shù)據(jù)輸出端口; 可以用于可以用于查詢查詢和和中斷中斷方式的數(shù)據(jù)傳送。方式的數(shù)據(jù)傳送。帶選通的雙向帶選通的雙向IOIO方式方式2021年9月3日星期五57方式方式2下的聯(lián)絡(luò)信號(hào)及狀態(tài)字下的聯(lián)絡(luò)信號(hào)及狀態(tài)字A口工作于方式口工作于方式2下,下,B口工作于方式口工作于方式1下,下,C口狀態(tài):口狀態(tài):OBF#AACK#AIBFASTB#AINTRAI/OI/OI/OA口工作于方式口工作于方式2下,下,C口狀態(tài):口狀態(tài):OBF#AACK#AIBFASTB#AINTRASTB#BIBFBINTRBOBF#AACK#AIBFASTB#AINTRAACK#BOBF#BI
51、NTRB仍然對(duì)應(yīng)著仍然對(duì)應(yīng)著8255A的內(nèi)部中斷允許信號(hào)的內(nèi)部中斷允許信號(hào)INTEA口工作于方式口工作于方式2下,控制字為:下,控制字為:110無效無效無效無效2021年9月3日星期五58補(bǔ)充:補(bǔ)充:8255A在微機(jī)系統(tǒng)中的應(yīng)用在微機(jī)系統(tǒng)中的應(yīng)用8255A在在IBM PC/XT機(jī)中的應(yīng)用機(jī)中的應(yīng)用使用一片使用一片8255A工作于方式工作于方式0下;下;A口:輸入口:輸入/輸出輸出n加電自檢時(shí)為輸出,輸出當(dāng)前檢測(cè)部件的標(biāo)志信號(hào);加電自檢時(shí)為輸出,輸出當(dāng)前檢測(cè)部件的標(biāo)志信號(hào);n正常工作時(shí)為輸入,用于讀取鍵盤的掃描碼;正常工作時(shí)為輸入,用于讀取鍵盤的掃描碼;B口:輸出一些控制信號(hào)口:輸出一些控制信號(hào)
52、n鍵盤管理、鍵盤管理、RAM和和I/O通道檢驗(yàn)、揚(yáng)聲器的控制等;通道檢驗(yàn)、揚(yáng)聲器的控制等;C口:輸入方式口:輸入方式n高高4位為狀態(tài)測(cè)試位,低位為狀態(tài)測(cè)試位,低4位讀取系統(tǒng)配置開關(guān)狀態(tài)。位讀取系統(tǒng)配置開關(guān)狀態(tài)。2021年9月3日星期五598255A在在PC/XT機(jī)中的部分應(yīng)用示意圖機(jī)中的部分應(yīng)用示意圖8255APB1PB0驅(qū)動(dòng)驅(qū)動(dòng)電路電路揚(yáng)聲器揚(yáng)聲器GATE2CLK2時(shí)鐘信號(hào)時(shí)鐘信號(hào)與門與門8253的的2#通道通道 PA7PA0PB7PB6鍵盤掃描碼鍵盤掃描碼輸出輸出0,使,使A口接收到的是鍵盤數(shù)據(jù)口接收到的是鍵盤數(shù)據(jù)輸出輸出1,給鍵盤送時(shí)鐘信號(hào),給鍵盤送時(shí)鐘信號(hào)2021年9月3日星期五609
53、.2 8251A串行接口串行接口9.2.1 串行接口的概念串行接口的概念9.2.2 8251A可編程串行接口可編程串行接口9.2.3 8251A的編程及應(yīng)用的編程及應(yīng)用9.2.1 串行接口的概念串行接口的概念1、串行通信與串行接口、串行通信與串行接口2、串行數(shù)據(jù)傳送方式、串行數(shù)據(jù)傳送方式3、串行通信方式、串行通信方式4、數(shù)據(jù)傳輸率、數(shù)據(jù)傳輸率5、信號(hào)的調(diào)制與解調(diào)、信號(hào)的調(diào)制與解調(diào)2021年9月3日星期五612021年9月3日星期五621、串行通信與串行接口、串行通信與串行接口 串行通信:串行通信:使用使用一根一根/對(duì)信息傳輸線對(duì)信息傳輸線,將數(shù)據(jù)、控制、狀態(tài)等信息按順,將數(shù)據(jù)、控制、狀態(tài)等信息
54、按順序逐位傳送;序逐位傳送;串行傳送的數(shù)據(jù)有串行傳送的數(shù)據(jù)有固定的格式固定的格式來區(qū)分信息類型;來區(qū)分信息類型;串行通信的雙方要串行通信的雙方要約定通信傳送的波特率約定通信傳送的波特率。 串行通信適用于串行通信適用于遠(yuǎn)距離傳送遠(yuǎn)距離傳送。傳送效率比并行通信低,但容易進(jìn)行差錯(cuò)控制;傳送效率比并行通信低,但容易進(jìn)行差錯(cuò)控制; 串行接口中需要進(jìn)行數(shù)據(jù)的串串行接口中需要進(jìn)行數(shù)據(jù)的串-并轉(zhuǎn)換;并轉(zhuǎn)換;利用接口內(nèi)部的移位邏輯實(shí)現(xiàn);利用接口內(nèi)部的移位邏輯實(shí)現(xiàn);P264 圖圖9-132、串行數(shù)據(jù)傳送方式、串行數(shù)據(jù)傳送方式 單工(單工(Simplex)收發(fā)雙方由收發(fā)雙方由一根單向的信息線一根單向的信息線連接;連
55、接; 半雙工(半雙工(Half Duplex)收發(fā)雙方通過收發(fā)雙方通過一根雙向的信息線一根雙向的信息線連接;連接; 全雙工全雙工(Full Duplex) 收發(fā)雙方通過收發(fā)雙方通過兩根單向信息線兩根單向信息線連接;連接; 多工(多工(multiplex)通過將一個(gè)信道劃分為通過將一個(gè)信道劃分為若干個(gè)頻帶或時(shí)間片若干個(gè)頻帶或時(shí)間片的復(fù)用技術(shù),的復(fù)用技術(shù),從而使多路信號(hào)同時(shí)共享信道;從而使多路信號(hào)同時(shí)共享信道;2021年9月3日星期五632021年9月3日星期五64單工數(shù)據(jù)傳送方式單工數(shù)據(jù)傳送方式單工(單工(Simplex)收發(fā)雙方通過收發(fā)雙方通過一根單向的信息線一根單向的信息線連接,只能進(jìn)行數(shù)據(jù)
56、的發(fā)送連接,只能進(jìn)行數(shù)據(jù)的發(fā)送或接收,一旦連接確定數(shù)據(jù)的傳送方向即不可更改?;蚪邮?,一旦連接確定數(shù)據(jù)的傳送方向即不可更改。特點(diǎn):特點(diǎn):n兩站點(diǎn)之間僅有一根單向的信息線;兩站點(diǎn)之間僅有一根單向的信息線;n每個(gè)站點(diǎn)中僅需要一個(gè)發(fā)送器,或接收器。每個(gè)站點(diǎn)中僅需要一個(gè)發(fā)送器,或接收器。接收器接收器發(fā)送器發(fā)送器AB發(fā)送器發(fā)送器接收器接收器AB2021年9月3日星期五65半雙工半雙工數(shù)據(jù)傳送方式數(shù)據(jù)傳送方式 半雙工(半雙工(Half Duplex)收發(fā)雙方通過收發(fā)雙方通過一根雙向的信息線一根雙向的信息線連接,既可發(fā)送數(shù)據(jù)又連接,既可發(fā)送數(shù)據(jù)又可接收數(shù)據(jù),但通信雙方不能同時(shí)收發(fā)數(shù)據(jù)??山邮諗?shù)據(jù),但通信雙方不
57、能同時(shí)收發(fā)數(shù)據(jù)。特點(diǎn):特點(diǎn):n兩站點(diǎn)之間只有一根雙向信息線;兩站點(diǎn)之間只有一根雙向信息線;n每端都有發(fā)送器和接收器,需有收每端都有發(fā)送器和接收器,需有收/發(fā)切換電子開關(guān);發(fā)切換電子開關(guān);n因有切換,會(huì)產(chǎn)生時(shí)間延遲。因有切換,會(huì)產(chǎn)生時(shí)間延遲。發(fā)送器發(fā)送器接收器接收器發(fā)送器發(fā)送器接收器接收器AB2021年9月3日星期五66全雙工數(shù)據(jù)傳送方式全雙工數(shù)據(jù)傳送方式全雙工全雙工(Full Duplex) 收發(fā)雙方通過收發(fā)雙方通過兩根單向信息線兩根單向信息線連接,分別負(fù)責(zé)數(shù)據(jù)的發(fā)送和連接,分別負(fù)責(zé)數(shù)據(jù)的發(fā)送和接收,通信雙方都能在同一時(shí)刻進(jìn)行發(fā)送和接收操作。接收,通信雙方都能在同一時(shí)刻進(jìn)行發(fā)送和接收操作。特點(diǎn)
58、:特點(diǎn):n每一端都有發(fā)送器和接收器;每一端都有發(fā)送器和接收器;n有兩條相互獨(dú)立的單向信息傳送線。有兩條相互獨(dú)立的單向信息傳送線。發(fā)送器發(fā)送器接收器接收器接收器接收器發(fā)送器發(fā)送器AB2021年9月3日星期五67多工數(shù)據(jù)傳送方式多工數(shù)據(jù)傳送方式多工(多工(multiplex)通過將一個(gè)信道劃分為通過將一個(gè)信道劃分為若干個(gè)頻帶或時(shí)間片若干個(gè)頻帶或時(shí)間片的復(fù)用技術(shù),從的復(fù)用技術(shù),從而使多路信號(hào)同時(shí)共享信道;而使多路信號(hào)同時(shí)共享信道;特點(diǎn):特點(diǎn):n在在一條線路一條線路上傳輸不同的信號(hào)頻率;上傳輸不同的信號(hào)頻率;n使用多路復(fù)用器或多路集中器等專用的通信設(shè)備。使用多路復(fù)用器或多路集中器等專用的通信設(shè)備。發(fā)送
59、發(fā)送1發(fā)送發(fā)送n接收接收1接收接收n復(fù)復(fù)用用器器復(fù)復(fù)用用器器數(shù)據(jù)數(shù)據(jù)3、串行通信方式、串行通信方式異步通信異步通信異步通信異步通信以以字符字符為單位傳送數(shù)據(jù),為單位傳送數(shù)據(jù),字符與字符之間是異步傳送的字符與字符之間是異步傳送的,而,而位位與位之間則是同步傳送與位之間則是同步傳送;數(shù)據(jù)格式:數(shù)據(jù)格式:n數(shù)據(jù)位(數(shù)據(jù)位(58位)、起始位(位)、起始位(1位,值恒為位,值恒為0)、校驗(yàn)位(可選)、)、校驗(yàn)位(可選)、停止位(停止位(1位、位、1.5位、位、2位可選,值恒為位可選,值恒為1););2021年9月3日星期五6811000010111000空空閑閑位位起始位起始位數(shù)據(jù)位數(shù)據(jù)位0低低 高高校
60、驗(yàn)位校驗(yàn)位停停止止位位3、串行通信方式、串行通信方式同步通信同步通信同步通信同步通信以以數(shù)據(jù)塊數(shù)據(jù)塊為單位傳送,每個(gè)數(shù)據(jù)塊包括多個(gè)字符;字符內(nèi)部為單位傳送,每個(gè)數(shù)據(jù)塊包括多個(gè)字符;字符內(nèi)部的的位傳送位傳送和和字符之間字符之間的傳送都要的傳送都要嚴(yán)格同步嚴(yán)格同步;n同步方法有同步方法有外同步外同步和和內(nèi)同步內(nèi)同步兩種;兩種;數(shù)據(jù)格式數(shù)據(jù)格式2021年9月3日星期五69同步字符同步字符數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)CRC1CRC2同步字符同步字符同步字符同步字符數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)CRC1CRC2數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)CRC1CRC2外同步信號(hào)外同步信號(hào)單同步方式單同步方式雙同步方式雙同步方式外同步方式外同步方式2021
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 江蘇省南通市通州高級(jí)中學(xué)2024-2025學(xué)年高二上學(xué)期第二次階段性檢測(cè)物理試題(含答案)
- 江蘇行政職業(yè)能力模擬48
- 2022年湖南省湘西州中考數(shù)學(xué)試卷 (原卷版)
- 浙江公務(wù)員面試模擬113
- 可視化教學(xué)在小學(xué)音樂課堂中的應(yīng)用
- 2000年新疆公務(wù)員面試真題
- 地方公務(wù)員遼寧申論80
- 網(wǎng)絡(luò)服務(wù)器搭建、配置與管理-Linux(麒麟歐拉)(微課版)(第5版)課堂實(shí)踐任務(wù)單2-熟練使用Linux基本命令
- 河南行政職業(yè)能力測(cè)驗(yàn)?zāi)M61
- 湖南行政職業(yè)能力模擬122
- 小學(xué)語文作業(yè)設(shè)計(jì)評(píng)價(jià)表
- 小學(xué)二年級(jí)數(shù)學(xué)第一學(xué)期奧數(shù)競(jìng)賽試題人教版
- 2024-2025學(xué)年度北師版七上數(shù)學(xué)-第十周自主評(píng)價(jià)練習(xí)(期中測(cè)評(píng))【課件】
- 消費(fèi)積分返利合同范本
- 《磁敏二極管》課件
- 項(xiàng)目重點(diǎn)難點(diǎn)分析及應(yīng)對(duì)措施
- 數(shù)據(jù)中心項(xiàng)目aCloud企業(yè)級(jí)云技術(shù)建議書
- 碳排放管理員(三四五級(jí))理論考試題庫(kù)合集-上(單選、多選題)
- 2024年4月浙江省00015英語二試題及答案含評(píng)分參考
- 玩轉(zhuǎn)數(shù)字媒體技術(shù)智慧樹知到期末考試答案2024年
- 自動(dòng)化腹膜透析專家共識(shí)2021
評(píng)論
0/150
提交評(píng)論