電子科大微嵌6_第1頁
電子科大微嵌6_第2頁
電子科大微嵌6_第3頁
電子科大微嵌6_第4頁
電子科大微嵌6_第5頁
已閱讀5頁,還剩67頁未讀, 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、1自動化工程學院測試技術及儀器研究所肖 寅 東E-mail: TELE:六章第六章 輸入輸入/ /輸出接口輸出接口26.1 輸入輸入/輸出接口基礎輸出接口基礎接口的概念:計算機外部設備與計算機主機之間的硬接口的概念:計算機外部設備與計算機主機之間的硬件電路和驅動程序件電路和驅動程序作用:信息存儲作用:信息存儲操作模式:字節的整數倍操作模式:字節的整數倍器件種類:少器件種類:少速度時序:速度時序:CPU相當、匹配相當、匹配存儲器存儲器作用:與外設間的信息交換作用:與外設間的信息交換操作模式:位、字節、多字節操作模式:位、字節、多字節器件種類:多器件種類:多速度時序:差

2、異很大、時序不同速度時序:差異很大、時序不同接口接口3簡單簡單I/O接口框圖接口框圖與與CPU相關的:數據口線、相關的:數據口線、I/O選擇(地址線)、選擇(地址線)、I/O讀寫讀寫與外設相關的:數據寄存器、控制寄存器、狀態寄存與外設相關的:數據寄存器、控制寄存器、狀態寄存器器-端口端口數據緩存寄存器數據緩存寄存器端口端口A寄存器寄存器端口端口B寄存器寄存器控制寄存器控制寄存器狀態寄存器狀態寄存器CSRS1RS0RDWR時時序序控控制制電電路路數據總線數據總線I/O數據數據控制控制I/O數據數據狀態狀態I/O選擇選擇寄存器選擇寄存器選擇I/O讀讀I/O寫寫4接口分類接口分類并行接口:一次傳輸多

3、個數據位并行接口:一次傳輸多個數據位串行接口:一次只有一位數據串行接口:一次只有一位數據傳輸方式傳輸方式同步接口:總線相連,并同步傳輸同步接口:總線相連,并同步傳輸異步接口:無共同的基準時鐘異步接口:無共同的基準時鐘時序控制方式時序控制方式程序查詢方式:程序的執行實現程序查詢方式:程序的執行實現程序中斷方式:傳輸時由中斷請求信號觸發程序中斷方式:傳輸時由中斷請求信號觸發存儲器直接存取訪問方式(存儲器直接存取訪問方式(DMA)通道控制器,通道控制器,I/O處理機處理機傳輸控制方式傳輸控制方式外圍接口:與外設無關,是系統的一部分外圍接口:與外設無關,是系統的一部分外設接口:用于連接外設的接口外設接

4、口:用于連接外設的接口工作對象工作對象5接口功能接口功能設備選擇:譯碼選擇設備、端口設備選擇:譯碼選擇設備、端口數據收發和格式轉換:讀數據收發和格式轉換:讀/寫,串寫,串/并、并并、并/串串接收解釋執行接收解釋執行CPU的命令:控制信號的實現的命令:控制信號的實現外設狀態接收并轉發給外設狀態接收并轉發給CPU:狀態端口:狀態端口支持查詢、中斷、支持查詢、中斷、DMA等多種傳輸控制方式等多種傳輸控制方式提供緩沖、暫存、驅動能力:信號驅動提供緩沖、暫存、驅動能力:信號驅動錯誤檢測功能:奇偶校驗錯誤檢測功能:奇偶校驗復位復位6歸納:接口結構歸納:接口結構接口主要功能接口主要功能設備選擇、數據緩沖設備

5、選擇、數據緩沖信號轉換、聯絡控制信號轉換、聯絡控制可編程可編程/可配置可配置/可重構可重構接口硬件結構接口硬件結構存儲器接口、外設接口存儲器接口、外設接口接口技術組成接口技術組成硬件:地址譯碼、讀寫控制、總線緩沖硬件:地址譯碼、讀寫控制、總線緩沖軟件:驅動程序(初始化、傳送控制、結束控制等)軟件:驅動程序(初始化、傳送控制、結束控制等)76.1.2 端口編址-獨立編址存儲存儲單元單元地址地址00000H00001HFF0FFHFF100HFF101HFFFFFH0000H0001HFF00HI/O端口端口地址地址FFFFH特點:特點:系統視端口和存儲單元為系統視端口和存儲單元為不同的對象不同的

6、對象。 優點:優點:系統中存儲單元和系統中存儲單元和I/OI/O端口的數量可端口的數量可達到最大達到最大。缺點:缺點:需需專門信號專門信號來指示系統地址線上出現的是來指示系統地址線上出現的是存儲單存儲單元地址還是端口地址元地址還是端口地址;專用的端口操作指令比較單一;專用的端口操作指令比較單一;獨立編址獨立編址(INTEL)8獨立端口編址總線結構獨立端口編址總線結構 存儲器 1 接口 2 接口 1 CPU 外設 1 三總線 AB DB CB 存儲器 2 接口 3 外設 2 外設 3 存儲器讀寫 I/O 讀寫 9I/O地址映射方式地址映射方式2:存儲器映像編址:存儲器映像編址(如(如Freesc

7、ale的系列芯片)的系列芯片)存儲單存儲單元地址元地址00000H00001HFF0FFHI/O端端口地址口地址FF100HFF101HFFFFFH 特點:特點:將將端口看作存儲單端口看作存儲單元元,僅以,僅以地址范圍的不同地址范圍的不同來來區分兩者。區分兩者。 優點:優點:對對端口的操作和對端口的操作和對存儲單元的操作存儲單元的操作完全一樣完全一樣,因此系統簡單,并且對端口因此系統簡單,并且對端口操作的指令種類較多操作的指令種類較多 缺點:缺點:CPUCPU對存儲單元和對存儲單元和I/OI/O端口的實際尋址空間都端口的實際尋址空間都小于其最大尋址小于其最大尋址空間空間2022-3-69/10

8、010統一編址總線結構統一編址總線結構 存儲器 1 接口 2 接口 1 CPU 外設 1 三總線 AB DB CB 存儲器 2 接口 3 外設 2 外設 3 116.2 接口地址譯碼接口地址譯碼全譯碼全譯碼 全部高位地址全部高位地址線都參與譯碼形成片線都參與譯碼形成片選信號選信號部分譯碼部分譯碼 只有只有部分高位地址部分高位地址線參與譯碼形成線參與譯碼形成片選信號片選信號線譯碼線譯碼 每組芯片使用每組芯片使用一根地址一根地址線作片選線作片選固定譯碼,可變譯碼固定譯碼,可變譯碼地址信號不唯一地址信號不唯一,所以存在地址,所以存在地址重疊問題,浪費重疊問題,浪費尋址空間,并可尋址空間,并可能導致誤

9、操作;能導致誤操作;共用地址端口的區分方法共用地址端口的區分方法使用讀使用讀/ /寫控制信號區分寫控制信號區分共用地址端口的區分方法共用地址端口的區分方法使用端口寄存器中的標志位區分使用端口寄存器中的標志位區分3F7H3F8H3F8H共用地址端口的區分方法共用地址端口的區分方法使用訪問順序區分使用訪問順序區分接口訪問至少需要數據端口接口訪問至少需要數據端口3F8H3F8H內部地址內部地址156.3 接口信息傳輸方式接口信息傳輸方式外設數據變化緩慢,始終外設數據變化緩慢,始終處于就緒狀態處于就緒狀態,如如開關或開關或LED接口結構簡單(通常只需要數據端口),適用面較窄接口結構簡單(通常只需要數據

10、端口),適用面較窄6.3.1 程序查詢傳輸方式程序查詢傳輸方式16條件程序控制(程序查詢)接口條件程序控制(程序查詢)接口數據緩沖器數據緩沖器(輸入端口輸入端口)狀態緩沖器狀態緩沖器(輸入端口)(輸入端口)鎖鎖存存器器輸輸入入設設備備數據端口讀選通數據端口讀選通狀態端口讀選通狀態端口讀選通輸入選通輸入選通輸入數據輸入數據RQD5VDB(數據、狀態)(數據、狀態)READY(1bit)數據鎖存器數據鎖存器(輸出端口)(輸出端口)狀態緩沖器狀態緩沖器(輸入端口輸入端口)輸輸出出設設備備輸出選通輸出選通RQD5VDB(數據、狀態)(數據、狀態)BUSY(1bit)ACK狀態端口讀選通狀態端口讀選通數

11、據端口寫選通數據端口寫選通 接口避免了對端接口避免了對端口的口的“盲讀盲讀”、“盲寫盲寫” ,數據傳送,數據傳送的可靠性高,且硬的可靠性高,且硬件接口相對簡單。件接口相對簡單。 外設應具有必要的外設應具有必要的聯絡(握手)信號聯絡(握手)信號如如READY、ACK等等; 缺點缺點是是CPU工作效工作效率低,率低,I/O響應速度響應速度慢;在有多個外設的慢;在有多個外設的系統中,系統中,CPU的查詢的查詢順序由外設的優先級順序由外設的優先級確定,實時性差。確定,實時性差。17程序查詢方式的打印機接口程序查詢方式的打印機接口 數據 端口 狀態 端口 數據緩 沖器 狀態 檢測 譯碼電路 觸發信號 狀

12、態信號 D2 數據總線 地址總線 控制總線78H 7AH 打印機 接口電路 狀態位為狀態位為0,則表明先前送出的數據已被打印,可以再送下一,則表明先前送出的數據已被打印,可以再送下一個數據;若狀態位為個數據;若狀態位為1,則表明先前送出的數據還沒打印,就,則表明先前送出的數據還沒打印,就不能再送數據出去不能再送數據出去18打印機接口握手打印機接口握手時序圖時序圖BUSY數據有效數據有效DATA數據有效數據有效ACK5sSTROB5s1. 發送方查詢發送方查詢BUSY狀態信號狀態信號2. 當當BUSY“0”時,發送方發送數據時,發送方發送數據3.發送方用控制信號發送方用控制信號/STROB鎖存數

13、據,該信號至少維持鎖存數據,該信號至少維持5s4. /STROB信號導致信號導致BUSY信號變為高電平信號變為高電平5.接收方用接收方用/ACK狀態信號表示數據收到,該信號至少維持狀態信號表示數據收到,該信號至少維持5s6. /ACK信號導致信號導致BUSY信號變為低電平信號變為低電平196.3.2 程序中斷控制接口程序中斷控制接口中斷請求中斷請求觸發器觸發器QRD數據緩沖數據緩沖端口譯碼端口譯碼端口譯碼端口譯碼控制端口控制端口中斷屏蔽觸中斷屏蔽觸發器發器QD+5VWR外外設設READYDBABDBINTRINTA接口避免了接口避免了CPU 反復低效率的查詢,適用于反復低效率的查詢,適用于CP

14、U任務繁忙、而任務繁忙、而數據傳送不太頻繁的系統中。數據傳送不太頻繁的系統中。外設應具有必要的聯絡握手信號(如外設應具有必要的聯絡握手信號(如READY)作為)作為中斷請求中斷請求信號;信號;中斷可被響應的條件:中斷可被響應的條件:中斷請求觸發器置位;中斷請求觸發器置位;中斷屏蔽觸發器清零;中斷屏蔽觸發器清零;CPU內部開放中斷;內部開放中斷;CPU未處理更高級中斷;未處理更高級中斷;CPU現行指令執行完;現行指令執行完; 優優先先級級排排隊隊why?20什么是中斷什么是中斷“中斷中斷”是外設給出的信號,它是外設給出的信號,它告訴微處理器已發生了某告訴微處理器已發生了某種需要特別處理的事件,種

15、需要特別處理的事件,需要去處理或為其服務需要去處理或為其服務-硬件層面硬件層面中斷中斷,是指,是指CPU在執行正常程在執行正常程序時,為序時,為處理一些緊急發處理一些緊急發生的情況,暫時中止當前生的情況,暫時中止當前程序程序,轉而對該緊急事件,轉而對該緊急事件進行處理,并在進行處理,并在處理完后處理完后返回正常程序返回正常程序的過程的過程-軟軟件層面件層面中斷服中斷服務程序務程序1中斷服務中斷服務程序程序 2非預料事非預料事件件1非預料非預料事件事件 221中斷的隨機性、不可預料性中斷的隨機性、不可預料性非預料事件非預料事件是指事件發生的時間無法預知,是指事件發生的時間無法預知,即中即中斷源何

16、時產生中斷不確定,是隨機的。斷源何時產生中斷不確定,是隨機的。中斷源產生中斷的隨機性,使中斷服務程序的執行中斷源產生中斷的隨機性,使中斷服務程序的執行也具有隨機性,也具有隨機性,即何時執行中斷服務程序不是在程序即何時執行中斷服務程序不是在程序中安排好的。中安排好的。u中斷系統是微機中實現中斷功能的各種軟、硬件中斷系統是微機中實現中斷功能的各種軟、硬件的總稱的總稱u中斷系統一般包括中斷系統一般包括CPU內部相應的中斷邏輯、接內部相應的中斷邏輯、接口中的中斷控制電路及各類中斷服務子程序口中的中斷控制電路及各類中斷服務子程序22中斷的相關概念中斷的相關概念u中斷源:中斷源:引起中斷的原因,或能夠發出

17、中斷請求信引起中斷的原因,或能夠發出中斷請求信號的設備號的設備 執行中斷指令 INT N、INTO 等 中 斷 控 制 邏 輯 自動產生的中斷 除法錯中斷 單步中斷 斷點中斷 溢出中斷等 系統掉電 INTR 引腳 中斷控制器 NMI 引腳 內存奇偶校驗錯 中斷接口電路 鍵盤 打印機 串行口 CPU 內部 23u斷點斷點:是指是指CPU執行的現行程序被中斷時的下一執行的現行程序被中斷時的下一條指令的地址,又稱斷點地址條指令的地址,又稱斷點地址u中斷現場中斷現場: :是指是指CPU轉去執行中斷服務程序前轉去執行中斷服務程序前的運行狀態,包括的運行狀態,包括CPU內部內部各寄存器、斷點地址各寄存器、

18、斷點地址等。等。中斷的相關概念中斷的相關概念241000:150H 、 、 、 、 、MOV DX, 0DIV AX, DXMOV DI , AX、 PUSH AX 、 、 IRETCPU在執行此指令時,在執行此指令時,某中斷源發申請中斷某中斷源發申請中斷;CPU在執行完該指令后,在執行完該指令后,轉去執行中斷子程轉去執行中斷子程序序地址地址1000:150H為斷點為斷點(PC寄存器)寄存器)斷點概念斷點概念所有寄存器內容,斷點位置,所有寄存器內容,斷點位置,都是現場都是現場中斷系統相關概念中斷系統相關概念u中斷向量:中斷向量:中斷向量即中斷服務子程序的入口地址中斷向量即中斷服務子程序的入口地

19、址,也就是中斷服務子程序的第一條指令的地址在存儲,也就是中斷服務子程序的第一條指令的地址在存儲器中的存放位置器中的存放位置u中斷嵌套中斷嵌套:當當CPU正在進行某一級別中斷源的中斷處正在進行某一級別中斷源的中斷處理時,若有理時,若有更高級別的新中斷源更高級別的新中斷源發出請求,且新中斷發出請求,且新中斷源源滿足響應條件滿足響應條件,則,則CPU應應中止當前的中斷服務程序中止當前的中斷服務程序,保護此程序的斷點和現場,轉而保護此程序的斷點和現場,轉而響應高級中斷響應高級中斷。這種。這種多級(重)中斷的處理方式稱為多級(重)中斷的處理方式稱為“嵌套嵌套”。u中斷優先級:中斷優先級:若若多個中斷源同

20、時提出中斷請求,多個中斷源同時提出中斷請求,系系統統先響應優先級高的中斷。若先響應優先級高的中斷。若CPU在運行中斷服務程序在運行中斷服務程序時時,有有高優先級中斷高優先級中斷到達到達,則觸發中斷嵌套。則觸發中斷嵌套。26 現行主程序 中斷服務子程序1 斷點1 中斷服務子程序2 斷點2 IRET IRET 非預料事件非預料事件1 1非預料事件非預料事件2中斷嵌套過程示意圖中斷嵌套過程示意圖中斷向量中斷向量27中斷系統相關概念中斷系統相關概念中斷屏蔽:中斷屏蔽:在某些情況下,在某些情況下,CPU可能不對中斷請求信可能不對中斷請求信號作出響應或處理,這就是中斷屏蔽。號作出響應或處理,這就是中斷屏蔽

21、。屏蔽情況屏蔽情況 中斷屏蔽標志中斷屏蔽標志IF 接口電路中的中斷屏蔽寄存器接口電路中的中斷屏蔽寄存器 系統在處理優先級別較高的中斷請求時,不會理系統在處理優先級別較高的中斷請求時,不會理睬后來的級別較低的中斷請求睬后來的級別較低的中斷請求 。中斷處理過程中斷處理過程 中斷檢測中斷檢測 CPU內部硬件自動完成內部硬件自動完成 中斷判優中斷判優 是否已有中斷,哪個優先級更高是否已有中斷,哪個優先級更高中斷響應中斷響應 CPU內部硬件自動完成內部硬件自動完成 中斷處理服務中斷處理服務 中斷服務是根據用戶自行編制的指令順序完成各項中斷服務是根據用戶自行編制的指令順序完成各項操作的。操作的。 中斷返回

22、中斷返回中斷系統的功能中斷系統的功能實現中斷及返回實現中斷及返回中斷源發出中斷請求,中斷源發出中斷請求,CPU決定是否響應,決定是否響應,若響應若響應,則則保護斷點和現場保護斷點和現場,轉入相應中斷服務程序,轉入相應中斷服務程序,中中斷服務結束斷服務結束后,后,恢復現場和斷點恢復現場和斷點,繼續執行原程,繼續執行原程序。序。CPU執行流程執行流程中斷服務程序中斷服務程序1 1非預料事件非預料事件1 1中斷系統能實現優先權排隊中斷系統能實現優先權排隊30簡單中斷接口中的軟硬件功能簡單中斷接口中的軟硬件功能SRCPDQ外設發出的中外設發出的中斷請求信號斷請求信號CPU中斷請求中斷請求復位信號復位信

23、號5V送至總線的中送至總線的中斷請求引腳斷請求引腳CPU中斷請求中斷請求允許信號允許信號硬件需完成的功能:硬件需完成的功能:可產生穩定的中斷請求信號可產生穩定的中斷請求信號可屏蔽該中斷請求信號可屏蔽該中斷請求信號可清除該中斷請求信號可清除該中斷請求信號軟件需完成的功能:軟件需完成的功能:產生中斷請求允許信號產生中斷請求允許信號產生中斷請求復位信號產生中斷請求復位信號裝載中斷服務子程序裝載中斷服務子程序 將用戶中斷服務子程序的將用戶中斷服務子程序的入口地址放入中斷向量表入口地址放入中斷向量表中斷系統優先權中斷系統優先權中斷系統能實現優先權排隊中斷系統能實現優先權排隊按各中斷請求的重要程度排列按各

24、中斷請求的重要程度排列CPU響應的次序稱為響應的次序稱為中中斷優先級斷優先級。即同時有多個中斷請求到來時,即同時有多個中斷請求到來時,CPU會會首先響應和處首先響應和處理優先級別最高的中斷請求理優先級別最高的中斷請求。中斷優先級的實現可以中斷優先級的實現可以用軟件或硬件用軟件或硬件設置設置32中斷的軟件判優法中斷的軟件判優法至至CPU的的INTR引腳引腳+由外設設置的由外設設置的中斷請求寄存器中斷請求寄存器1 2 3 4 5 6 7 8可由程序設置的可由程序設置的中斷允許寄存器中斷允許寄存器1 2 3 4 5 6 7 8 設備優先級由軟設備優先級由軟件查詢流程確定。件查詢流程確定。試畫出工作流

25、程;試畫出工作流程;考慮如何得到中斷類型號;考慮如何得到中斷類型號;33中斷優先權編碼電路中斷優先權編碼電路 8-3編編碼碼器器A2A1A0B2B1B0比比較較器器AB12中斷請求信號中斷請求信號+至至CPU的的INTR引腳引腳優先權失效信號優先權失效信號+優先優先權寄權寄存器存器CPU 1 2 3 4 5 6 7 8可由程序設置的可由程序設置的中斷允許寄存器中斷允許寄存器由外設設置的由外設設置的中斷請求寄存器中斷請求寄存器1 2 3 4 5 6 7 8 設備優先級由編碼設備優先級由編碼器連接方式確定。器連接方式確定。34菊花鏈式排隊電路菊花鏈式排隊電路 設備優先級由鏈式設備優先級由鏈式電路連

26、接順序確定。電路連接順序確定。B1B1 B2B2H1H1 H2H2 G1G1 G2G2 CPU的中斷響的中斷響應信號應信號INTA到設備到設備1的中斷的中斷響應信號輸出響應信號輸出到設備到設備2的中斷的中斷響應信號輸出響應信號輸出到設備到設備7的中斷的中斷響應信號輸出響應信號輸出到設備到設備8的中斷的中斷響應信號輸出響應信號輸出1 2 3 4 5 6 78可由程序設置的可由程序設置的中斷允許寄存器中斷允許寄存器由外設設置的由外設設置的中斷請求寄存器中斷請求寄存器至至CPU的的INTR引腳引腳+1 2 3 4 5 6 78A1A1 A2A2 356.3.3 直接存儲器訪問(直接存儲器訪問(DMA

27、)方式)方式程序查詢傳送方式的特點程序查詢傳送方式的特點 電路簡單電路簡單 不能實時響應不能實時響應 適用于簡單的無實時性要求的場合適用于簡單的無實時性要求的場合 需要需要CPU參與參與程序中斷傳送方式的特點程序中斷傳送方式的特點 實時響應,需要中斷控制電路實時響應,需要中斷控制電路 適用于傳輸數據量較少,而要求實時性較高的場合適用于傳輸數據量較少,而要求實時性較高的場合 需要需要CPU參與參與DMA方式方式 解決一次性傳輸大量數據解決一次性傳輸大量數據 一般用于存儲器與一般用于存儲器與I/O之間,之間,CPU不參與傳輸而運行其他程不參與傳輸而運行其他程序序36DMA控制器結構控制器結構數據緩

28、數據緩沖器沖器地址緩地址緩沖器沖器數據總線數據總線地址總線地址總線時序控時序控制邏輯制邏輯IOR MEMRMEMW片選片選IOWCLK計數指示計數指示總線請求總線請求復位復位總線仲總線仲裁邏輯裁邏輯DMA控控制邏輯制邏輯地址寄地址寄存器存器計數寄計數寄存器存器狀態寄狀態寄存器存器總線響應總線響應DMA請求請求DMA響應響應外設申請外設申請DMA操作操作總線響總線響應應DMADMAC初始化初始化DMAC傳輸傳輸37DMAC具備的功能具備的功能向向CPU發出發出總線請求總線請求信號信號HOLD。當當CPU允許出讓允許出讓總線控制權總線控制權時,能夠接收時,能夠接收CPU發出的總發出的總線應答信號線

29、應答信號HLDA,并接管總線進入,并接管總線進入DMA方式。方式。具有具有尋址尋址功能,對存儲器及功能,對存儲器及I/O尋址并修改地址指針。尋址并修改地址指針。具有具有控制控制邏輯,能發出讀邏輯,能發出讀/寫控制信號。寫控制信號。決定傳輸的字節數,并判斷決定傳輸的字節數,并判斷DMA是否結束。是否結束。發出發出DMA結束信號,交出總線權,使結束信號,交出總線權,使CPU恢復正常工作恢復正常工作狀態狀態38存儲器存儲器CPUDMACI/O地址總線地址總線AB數據總線數據總線DB控制總線控制總線CBDMA傳送過程傳送過程I/ODMA請求請求DMAC總線請求總線請求CPU總線響應總線響應DMA響應響

30、應n可在可在I/O設備和存儲器之間直接傳送數據。設備和存儲器之間直接傳送數據。n傳送時,源和目的均直接由硬件指定。傳送時,源和目的均直接由硬件指定。n傳輸的數據塊長度需要指定,計數由硬件自動進行。傳輸的數據塊長度需要指定,計數由硬件自動進行。n在一批數據傳輸完成后,一般通過中斷方式通知在一批數據傳輸完成后,一般通過中斷方式通知CPU進行后續處理。進行后續處理。nCPU和和I/O設備能在一定程度上并行工作,效率高。設備能在一定程度上并行工作,效率高。n一般用于高速批量數據的傳輸一般用于高速批量數據的傳輸 39 按鍵接口按鍵接口線性鍵盤線性鍵盤每一個按鍵需要占用每一個按鍵需要占用I/O端口的一根口

31、線端口的一根口線矩陣鍵盤矩陣鍵盤所有按鍵按行、列排列,較節約所有按鍵按行、列排列,較節約I/O口線口線非編碼鍵盤非編碼鍵盤:主:主CPU處理按鍵的操作,降低了主處理按鍵的操作,降低了主CPU的效的效率率編碼鍵盤編碼鍵盤:使用專用的:使用專用的CPU(單片機)處理按鍵操作,緩(單片機)處理按鍵操作,緩減主減主CPU的負擔的負擔并并行行端端口口VCC 8 位并行輸入端口 8 位并行輸出端口 +5V 10k 10k 10k 10k 第 0 行 第 1 行 第 2 行 第 8 行 第 0 列 第 1 列 第 2 列 第 3 列 第 8 列 406.4 并行接口并行接口無握手并行接口無握手并行接口 最簡

32、單的直接數據輸出或輸入最簡單的直接數據輸出或輸入 41矩陣鍵盤結構矩陣鍵盤結構 8位位并行并行輸入輸入端口端口8位位并行并行輸出輸出端口端口+5V10k10k10k10k第第0行行第第1行行第第2行行第第7行行第第0列列 第第1列列 第第2列列 第第3列列 第第7列列42行掃描法(一)行掃描法(一) 第一步:判斷是否有鍵按下第一步:判斷是否有鍵按下 輸出端口輸出端口的各位都為低電平,即的各位都為低電平,即各列都為各列都為0 0 讀取輸入端口數據讀取輸入端口數據,如果輸入不等于,如果輸入不等于FFHFFH,則有則有鍵被按下鍵被按下 MOV AL,00H;MOV DX,OUTPORT;OUTDX,

33、ALMOV DX,INPORT;IN AL,DX;CMP AL,0FFH43行掃描法行掃描法( (二)二)第二步:確定按鍵號第二步:確定按鍵號 確定按鍵的列數:輸出掃描值,使確定按鍵的列數:輸出掃描值,使某一列為低電某一列為低電平,其它列為高電平平,其它列為高電平;讀??;讀取行值,看是否有行線行值,看是否有行線處于低電平處于低電平 確定按鍵的行數:循環右移行值,直到為確定按鍵的行數:循環右移行值,直到為0 0 44行掃描法程序流程行掃描法程序流程 是否有一行接地?是否有一行接地?鍵盤鍵盤命令命令處理處理是是進位位為進位位為0?否否掃描值循環左移一位,掃描值循環左移一位,使下一列為低電平使下一列

34、為低電平鍵號鍵號 +8,計數值,計數值 -1否否讀進行值讀進行值行值循環右移一位行值循環右移一位是是結束結束是是全部掃描完?全部掃描完?否否設鍵號設鍵號 =0,計數器,計數器 =列數列數行掃描初值行掃描初值 =11111110B輸出掃描值,使某一行為低電平輸出掃描值,使某一行為低電平MOVMOVBLBL,0 0MOVMOVDLDL,8 8MOVMOVCLCL,0FEH0FEHMOV ALMOV AL,CLCLOUT OUTPORTOUT OUTPORT,AL AL IN ALIN AL,INPORTINPORTCMPCMPALAL,0FFH 0FFH ROLROLALAL,1 1MOVMOVC

35、LCL,ALAL RCR ALRCR AL,1 1JNC PROCJNC PROCINC BLINC BL鍵值鍵值+1+145數碼管結構數碼管結構共陰結構共陰結構:輸入控制:輸入控制端為高電平時,對應端為高電平時,對應的的LED亮亮共陽結構共陽結構:輸入控制:輸入控制端為低電平時,對應端為低電平時,對應的的LED亮亮多位數碼管組成的數多位數碼管組成的數碼顯示屏可以有碼顯示屏可以有動態動態和靜態和靜態兩種顯示方式兩種顯示方式46數碼屏顯示方式數碼屏顯示方式靜態顯示靜態顯示:顯示位數少時使用:顯示位數少時使用 各各位位(8段)輸入控制端分別與接口電路的輸出端段)輸入控制端分別與接口電路的輸出端相連

36、;相連; 各各段段(LED)恒定地導通或截止;)恒定地導通或截止; 占用占用I/O口:口:8*N動態顯示動態顯示:顯示位數多時使用:顯示位數多時使用 各位共享輸入控制端;各位共享輸入控制端; 需同時進行需同時進行位選位選(選中被點亮的位)和(選中被點亮的位)和段選段選(輸(輸入控制端確定各入控制端確定各LED的發光情況)的發光情況) 各位輪流顯示一遍的總時間不能過長各位輪流顯示一遍的總時間不能過長(不大于不大于20ms 占用占用I/O口口:8N4768數碼顯示屏靜態顯示接口數碼顯示屏靜態顯示接口48并行輸并行輸出端口出端口(帶鎖存帶鎖存功能功能)并行輸并行輸出端口出端口(帶鎖(帶鎖存功能)存功

37、能)D0D7D7D6D5D4D3D2D1D0D5D4D3D2D1D0位位0位位1位位2位位3位位4位位5D0D7段選段選位選位選圖圖 6 個數碼管的顯示接口電路個數碼管的顯示接口電路OUT SEGPORT,AL ; AL=76H OUT SEGPORT,AL ; AL=76H “H H”MOV AL,0DFH ; CL=1101,1111MOV AL,0DFH ; CL=1101,11117676H HOUT BITPORT,AL ; AL=CL=1101,1111OUT BITPORT,AL ; AL=CL=1101,11110 1 1 1 1 10 1 1 1 1 1INC DIINC D

38、IMOV AL,DI ; AL=79HMOV AL,DI ; AL=79HH H7979H H1 0 1 1 1 11 0 1 1 1 1E EOUT SEGPORT,AL ; AL=79H OUT SEGPORT,AL ; AL=79H “E E”ROR CL ; CL=1110,1111ROR CL ; CL=1110,1111OUT BITPORT,AL ; AL=CL=1110,1111OUT BITPORT,AL ; AL=CL=1110,1111496.4.2 帶握手信號的并行接口帶握手信號的并行接口輸入設備發出的選通信號輸入設備發出的選通信號CPU讀接口中的狀態緩沖寄存器,以確定

39、外設是否準備好讀接口中的狀態緩沖寄存器,以確定外設是否準備好若若READY=1,說明外設已將數據送到接口,說明外設已將數據送到接口,CPU讀數據端口,讀數據端口,同時數據端口的讀信號將接口中的同時數據端口的讀信號將接口中的D觸發器清零,完成本次觸發器清零,完成本次數據傳送。數據傳送。506.4.2 帶握手信號的并行接口帶握手信號的并行接口若若BUSY=0,CPU向數據端口寫入需發送的數據,同時將接口中向數據端口寫入需發送的數據,同時將接口中的的D觸發器置觸發器置1,即令,即令BUSY=1輸出設備從接口的數據鎖存器中讀出數據;輸出設備從接口的數據鎖存器中讀出數據;輸出設備發出響應信號輸出設備發出

40、響應信號ACK將接口中的將接口中的D觸發器清零,即令觸發器清零,即令BUSY=0,完成本次數據傳送。,完成本次數據傳送。nCPU讀接口中讀接口中的狀態緩沖寄的狀態緩沖寄存器,并檢查存器,并檢查狀態信息以確狀態信息以確定外設是否可定外設是否可以接收數據;以接收數據;51雙向并行接口雙向并行接口 D0D7 DIR AEN IOR A0A9 IOW IRQ 復位 寫數據 讀數據 寫控制 讀控制 讀狀態 數據線 控制線 狀態線 5 4 8 4 輸出數據 寄存器 數據收發器 命令譯碼器 輸入數據 緩沖器 控制寄存器 狀態寄存器B 狀態寄存器A 集電極驅動器 打 印 機 52模模/數轉換接口數轉換接口53

41、6.4.3 可編程并行接口可編程并行接口允許用戶通過寫入不同的允許用戶通過寫入不同的控制字控制字改變其工作方式改變其工作方式工作模式選擇寄存器、中斷允許寄存器、上拉使能寄存器、工作模式選擇寄存器、中斷允許寄存器、上拉使能寄存器、三態使能寄存器和多功能選擇寄存器三態使能寄存器和多功能選擇寄存器I/O引腳引腳上拉控上拉控制位制位三態輸出三態輸出控制位控制位I/O數據輸出數據輸出復用信號輸出復用信號輸出多功能復多功能復用選擇位用選擇位毛刺毛刺濾除濾除毛刺濾除毛刺濾除控制位控制位邊沿邊沿檢測檢測中斷允中斷允許位許位其他其他I/O中中斷請求信號斷請求信號PIO中斷中斷請求信號請求信號I/O數據輸入數據輸

42、入I/O中斷狀態中斷狀態電源電源54可編程并行接口可編程并行接口數據總線緩沖器、讀數據總線緩沖器、讀/寫控制邏輯、輸入寫控制邏輯、輸入/輸出端口輸出端口(A、B和和C)、可編程控制寄存器等、可編程控制寄存器等55工作方式控制字工作方式控制字1D7D6D5D4D3D2D1D00 輸出輸出1 輸入輸入PC3PC0B口口0 輸出輸出1 1 輸入輸入0 方式方式01 方式方式1B口工作方式口工作方式PC7PC40 輸出輸出1 輸入輸入A口口0 輸出輸出1 輸入輸入特征位,特征位,D7=1表示是方式控制字表示是方式控制字A口工作方式口工作方式00 方式方式001 方式方式11x 方式方式256方式方式1

43、聯絡信號聯絡信號A、B端口均可工作于方式端口均可工作于方式1,C口線需要作為口線需要作為A/B的的聯絡信號聯絡信號未使用的未使用的C口線,可作為普通口線,可作為普通I/O使用使用57工作方式工作方式1輸入時序輸入時序58工作方式工作方式1輸出時序輸出時序59方式方式2聯絡信號聯絡信號只有只有A端口可工作于方式端口可工作于方式2,C口線需要作為其聯絡信口線需要作為其聯絡信號號A/B工作方式可獨立設置,不相關聯工作方式可獨立設置,不相關聯60工作方式工作方式2雙向傳輸雙向傳輸61C口置口置/復位控制字復位控制字0D7D6D5D4D3D2D1D00 復位復位1 置位置位設置內容設置內容特征位,特征位

44、,D7=0表示是表示是C口按位口按位置位置位/復位控制字復位控制字無意義無意義選擇操作位選擇操作位626.5 串行接口串行接口實現數據的實現數據的串串/并、并并、并/串串轉換轉換實現串行數據的實現串行數據的格式格式化化(如自動加入起始位、校驗位或同步字符等如自動加入起始位、校驗位或同步字符等實現實現差錯控制差錯控制(如異步通信中的幀格式錯、奇偶校驗錯、溢出錯等如異步通信中的幀格式錯、奇偶校驗錯、溢出錯等實現接口間聯絡信號的解釋和控制實現接口間聯絡信號的解釋和控制63I2C接口接口包括分頻寄存器、地包括分頻寄存器、地址寄存器、數據址寄存器、數據寄存器、控制寄寄存器、控制寄存器和狀態寄存存器和狀態

45、寄存器等多個可以編器等多個可以編程的寄存器程的寄存器內部總線內部總線中斷中斷IRQ地址線地址線數據線數據線數據復用器數據復用器地址譯碼器地址譯碼器起始、停起始、停止、仲裁止、仲裁控制控制時鐘時鐘控制控制I2C狀態狀態寄存器寄存器I2C數據數據寄存器寄存器I2C控制控制寄存器寄存器I2C地址地址寄存器寄存器I2C分頻分頻寄存器寄存器輸入輸入同步同步輸入輸入/輸輸出數據移出數據移位寄存器位寄存器地址比地址比較器較器SCLSDA64I2C總線時序及過程示意圖總線時序及過程示意圖START起始狀態、尋址、數據傳送方向、從接口應答、數據起始狀態、尋址、數據傳送方向、從接口應答、數據傳送、數據應答及傳送、數據應答及STOP結束狀態,如圖中的結束狀態,如圖中的A、B、C、D、E、F所標示所標示65SPI接口接口同步全雙工串行接口同步全雙工串行接口接收緩存寄存器接收緩存寄存器接收移位寄存器接收移位寄存器發送控制寄存器發送控制寄存器接收時接收時鐘控制鐘控制發送緩存寄存器發送緩存寄存器發送移位寄存器發送移位寄存器控制寄控制寄存器存器時鐘源時鐘源時鐘源選擇時鐘源選擇與分頻器與分頻器接收控制寄存器接收控制寄存器SOMI時鐘相位與時鐘相位與極性控制極性控制SCK發送時發送時鐘控制鐘控制MOSIS

溫馨提示

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

評論

0/150

提交評論