微型計算機技術及應用:第6章 串并行通信和接口技術_第1頁
微型計算機技術及應用:第6章 串并行通信和接口技術_第2頁
微型計算機技術及應用:第6章 串并行通信和接口技術_第3頁
微型計算機技術及應用:第6章 串并行通信和接口技術_第4頁
微型計算機技術及應用:第6章 串并行通信和接口技術_第5頁
已閱讀5頁,還剩108頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、第6章 串并行通信和接口技術本章要點串行通信的幾種方式8251A的編程結構和功能結構8251A和CPU的信號連接以及和外設的信號連接低檔接口芯片和高檔數據總線的連接8251A的模式寄存器、控制寄存器和狀態寄存器的格式8251A的初始化流程8251A的使用8255A和CPU的信號連接以及和外設的信號連接8255A的三種工作方式和設置方法8255A的C端口置0/置1 教學建議以8251A和8255A的使用為目標。本章用5學時,其中: 8251A 2學時8255A 3學時6.1接口的功能以及在系統中的連接 接口的功能 接口與系統的連接 6.1.1接口的功能 基本功能:在系統和I/O設備之間傳輸信號提

2、供緩沖作用 1. 尋址功能 識別區別存儲器和I/O的信號 識別片選信號 選擇接口中的寄存器 2. 輸入輸出功能 根據讀寫信號判斷傳輸方向 傳輸數據、控制和狀態信息3. 數據轉換功能 把CPU的并行數據轉換成一些外設所需的串行數據;把外設的串行信息轉換成并行數據送往CPU。 4. 聯絡功能 當數據傳送完后,能通知CPU。 5. 中斷管理功能 發送中斷請求和接收中斷響應 發送中斷類型號 優先級管理功能。 6. 復位功能 接收復位信號7. 可編程功能 可以用軟件使其工作于不同的方式 用軟件來設置控制信號 8. 錯誤檢測功能 當前多數可編程接口芯片能檢測下列兩類錯誤: 傳輸錯誤 覆蓋錯誤 6.1.2接

3、口與系統的連接 接口可分為兩個部分 和I/O設備相連和系統總線相連 和外部連接典型的I/O接口6.2串行接口和串行通信 串行接口 串行通信涉及的幾個問題 6.2.1串行接口 串行接口部件有4個主要寄存器,即:控制寄存器狀態寄存器數據輸入寄存器數據輸出寄存器。6.2.2串行通信涉及的幾個問題 全雙工方式和半雙工方式 同步方式和異步方式 傳輸率 1. 全雙工方式和半雙工方式 全雙工方式:接收和發送用不同的通路。 半雙工方式:輸入和輸出使用同一通路。全雙工方式和半雙工方式(a) 全雙工方式(b) 半雙工方式 2. 同步方式和異步方式 傳輸方式:同步通信異步通信同步方式和異步方式比較:同步方式的信息有

4、效率高。同步方式需傳輸時鐘信號。標準的異步通信數據格式 3. 串行通信的傳輸率 例、異步傳輸過程:設每個字符對應1個起始位、7個信息位、1個奇偶校驗位和1個停止位,如果波特率為1 200bps,那么,每秒鐘能傳輸的最大字符數為1 200/10120個。 例二.同步傳輸:用1 200bps的波特率工作,用4個同步字符作為信息幀頭部,但不用奇偶校驗,那么,傳輸100個字符所用的時間為7(100+4)/1 2000.606 7s,這就是說,每秒鐘能傳輸的字符數可達到100/0.606 7165個。可見,在同樣的傳輸率下,同步傳輸時實際字符傳輸率要比異步傳輸時高。 6.3可編程串行通信接口8251A

5、8251A的基本性能 8251A的基本工作原理 8251A的對外信號 8251A的編程 8251A編程舉例 8251A的使用實例 6.3.1 8251A的基本性能 可以工作在同步或異步方式。 在同步方式時,能用5、6、7或8位代表字符能自動檢測同步字符允許奇偶校驗。在異步方式下能用5、6、7或8位代表字符,用1位作為奇偶校驗。能增加1個啟動位能增加1個、1.5個或2個停止位。 6.3.2 8251A的基本工作原理 8251A的編程結構 8251A的功能結構 8251A的發送和接收 1. 8251A的編程結構 具體編程結構和外部連接如下圖28251A的功能結構 接收控制電路的功能: 復位后尋找啟

6、動位。消除假啟動干擾。對接收到的信息進行奇偶校驗。檢測停止位。 發送控制電路功能:在異步方式下,為數據加上起始位、校驗位和停止位。在同步方式下,插入同步字符和校驗位。 讀寫控制邏輯電路功能:接收WR,寫入數據和控制字接收RD,讀取數據或狀態字接收C/D。接收CLK,完成內部定時。接收RESET。8251A的內部工作原理 3. 8251A的發送和接收 (1) 異步接收方式 (2) 異步發送方式下圖為8251A工作在異步方式時的數據傳輸格式 (3) 同步接收方式 (4) 同步發送方式 下圖為8251A工作在同步方式時的數據傳輸格式 6.3.3 8251A的對外信號 8251A和CPU之間的連接信號

7、 8251A與外部設備之間的連接信號 1. 8251A和CPU之間的連接信號 (1) 片選信號 CS#為低電平時,8251A被選中(2) 數據信號 D7D0與系統的數據總線相連 (3) 讀寫控制信號 RD#為讀信號。WR#為寫信號。C/D#為控制/數據信號。 (4) 收發聯絡信號TXRDY為發送器準備好信號TXE 發送器空信號RXRDY 接收器準備好信號SYNDET 同步檢測信號2. 8251A與外部設備之間的連接信號 (1) 收發聯絡信號 DTR#數據終端準備好信號 DSR#數據設備準備好信號 RTS#請求發送信號 CTS#清除請求發送信號 (2) 數據信號 TXD 發送器數據信號端 RXD

8、 接收器數據信號端 6.3.4 8251A的編程 8位接口和16位數據總線的連接問題 8251A的初始化 模式寄存器的格式 控制寄存器的格式 狀態寄存器的格式 1. 關于8位接口芯片和16位數據總線的連接問題 解決方法:硬件上,將總線的A1與芯片的A0相連軟件上,用連續的偶地址代替奇偶地址2. 8251A的初始化 8251A初始化的約定 :復位后,用奇地址寫入的值送模式寄存器。 若為同步模式,接著往奇地址端口輸出的字節為同步字符。此后,除復位命令,往奇地址寫入的值將送到控制寄存器,往偶地址端口寫入的值送到數據輸出寄存器。 8251A的初始化流程圖 3. 模式寄存器的格式 下圖為8251A模式寄

9、存器的格式(a) 異步模式;(b) 同步模式 4. 控制寄存器的格式 5. 狀態寄存器的格式 6.3.5 8251A編程舉例 異步模式下的初始化程序舉例 同步模式下的初始化程序舉例 利用狀態字進行編程的舉例 1. 異步模式下的初始化程序舉例 MOV AL,0FAHOUT 42H,AL;設置模式字,為異步模式; 波特率因子為16;用7個數 據位,偶校驗,2個停止位MOVAL,37HOUT42H,AL;設置控制字,使發送啟動、 接收啟動,并設置有關信號 2. 同步模式下的初始化程序舉例 MOVAL,38HOUT42H,AL;設置模式字為同步模式,2 個同步字符,7個數據位, 偶校驗MOVAL,16

10、HOUT42H,ALOUT42H,AL;兩個同步字符均為16HMOV AL,97HOUT 42H,AL;設置控制字,并啟動3. 利用狀態字進行編程的舉例 MOV AL,0FAHOUT 42H,AL;設置模式字,異步模式,波 特率因子為16,7個數據 位,2個停止位,偶校驗MOV AL,35HOUT 42H,AL;設置控制字,并啟動 MOV DI,0 ;變址寄存器初始化 MOV CX,80 ;共收取80個字符BEGIN: IN AL,42H TEST AL,02H JZ BEGIN;讀狀態字并測試IN AL,40H ;讀取字符MOV DX,OFFSET BUFFERMOV DX+DI,AL ;傳

11、輸字符INC DI ;修改緩沖區指針IN AL,42H ;讀取狀態字TEST AL,38H ;測試有無錯誤 JNZ ERROR LOOP BEGIN ;如沒有錯,則接收 下1個字符 JMP EXIT ;如滿8個字符,則結束ERROR: CALL ERR_OUT;調用出錯處理程序EXIT: 6.3.6 8251A的使用實例 下圖為用8251A作為CRT接口的實際例子 8251A的初始化程序段 INIT: XOR AX,AX;AX清零MOV CX,0003MOV DX,00DAHOUT1:CALL KKKLOOP OUT1;往控制端口DAH送3個0 MOV AL,40H CALL KKK ;往控制

12、端口送40H復位MOV AL,4EH CALL KKK ;設置模式字, 異步模式, 波特率因子為16,8位數據, 1位停止位 MOVAL,27H CALLKKK;往設置命令字啟動 .KKK:OUT DX,AL;將數據輸出到指定端口 PUSH CX MOV CX,0002 ABC:LOOP ABC ;等待輸出動作完成 POP CX ;恢復CX內容RET往CRT輸出一個字符的程序段 CHAROUT: MOV DX,0DAHSTATE:IN AL,DX;輸入狀態字 TEST AL,01 JZ STATE;不斷測試狀態位MOV DX,0D8H ;數據端口地址送DXPOPAX;AX中為要輸出的字符OUT

13、DX,AL;往端口中輸出一個字符6.4并行通信和并行接口 特點:傳輸速度快信息率高用電纜多下圖為典型的并行接口和外設連接的示意圖 6.5 可編程并行通信接口8255A 可編程通過軟件工作方式連接外部設備時,通常不需外部電路 6.5.1 8255A的內部結構 8255A的內部結構圖1. 數據端口A、B、C (1)端口A對應1個8位數據輸入鎖存器1個8位輸出鎖存器/緩沖器。(2)端口B對應1個8位數據輸入緩沖器1個8位輸出鎖存器/緩沖器。 (3)端口C對應1個8位數據輸入緩沖器1個8位輸出鎖存器/緩沖器。 通常使用方法:端口A、B作為獨立的輸入或者輸出端口端口C配合端口A、B 2. A組控制和B組

14、控制 (1)A組控制電路 控制端口A和端口C的高4位的工作方式和讀寫操作。(2)B組控制電路 控制端口B和端口C的低4位的工作方式和讀寫操作。 3. 讀寫控制邏輯電路 功能: 管理數據傳輸過程。4. 數據總線緩沖器 功能:通過它與系統數據總線相連。 6.5.2 8255A的芯片引腳信號 1. 和外設一邊相連的信號 PA7PA0A組數據信號; PB7PB0B組數據信號; PC7PC0C組數據信號。2. 和CPU一邊相連的信號 RESET復位信號,高電平有效 。D7D0 數據線 。CS#片選信號。RD#讀出信號。WR#寫入信號。A1、A0端口選擇信號。 6.5.3 8255A的控制字 控制字分為兩

15、類:各端口的方式選擇控制字;C端口按位置1/置0控制字。 1. 方式選擇控制字 8255A方式選擇注意:有三種基本工作方式: 方式0基本的輸入輸出方式 方式1選通的輸入輸出方式 方式2雙向傳輸方式 只有端口A能工作在方式2 同一組的兩端口可分別工作在輸入和輸出方式 2. 端口C置1/置0控制字 置1/置0控制字注意:必須寫入控制口 D0位決定置1或置0 D3、D2、D1位決定了對哪一位操作 D7位必須為0 6.5.4 8255A的工作方式 方式0 方式1方式2方式0(1) 方式0的工作特點 端口可作為輸入口,也可作為輸出口。可以有16種不同的組合 (2) 方式0的輸入輸出時序 在方式0讀取數據

16、條件: 先發出地址信號數據要領先于讀信號 輸入時序要求:讀出期間地址保持有效 數據必須保持到結束 讀脈沖寬度至少為300ns 方式0輸出時序要求:地址信號必須提前有效且滯后消失 寫脈沖寬度至少有400ns 數據必須提前并保持tWD時間 方式0的輸出時序(3) 方式0的使用場合 同步傳送 查詢式傳送 2. 方式1 方式1的特點端口A、B可分別工作在方式1。端口C配合方式1(2) 方式1輸入時序 下圖是端口A、B工作于方式1輸入時,各信號的示意圖 上圖控制信號說明: STB# 選通信號IBF 緩沖器滿信號 INTR 送往CPU的中斷請求信號INTE 中斷允許信號下圖為方式1的輸入時序 (3) 方式1輸出時序 OBF# 輸出緩沖器滿信號ACK# 外設響應信號INTR 中斷請求信號INTE 中斷允許信號 方式1時輸出端口對應的控制信號和狀態信號 方式1的輸出時序 3. 方式2 (1) 方式2的特點 只適用于端口A。端口C用5個數位提供控制和狀態信號。 (2) 方式2信號 INTRA 中斷請求信號 STBA# 選通信號IBFA 狀態信息 OBFA# 輸出緩沖器滿信號 ACKA# 對OBFA的響應信號 INTE1 中斷允許信號 INTE2 中斷允許信號 方式2的控制信號 (3)方式2的時序 (4

溫馨提示

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

評論

0/150

提交評論