




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
8.6可編程串行接口電路及其應用8.6.1串行通信概述8.6.2可編程串行接口Intel8251A8.6.3Intel8251A編程地址與初始化8.6.4Intel8251A應用案例習題88.6.1串行通信概述串行通信是微機和外部設備交換信息的方式之一。所謂串行通信是通過一位一位地進行數據傳輸來實現通信。與并行通信相比,串行通信具有傳輸線少,成本低等優(yōu)點,適合遠距離傳送。缺點是速度慢,若并行傳送n位數據需時間T,則串行傳送的時間最少為nT。在實際傳輸中,是通過一對導線傳送信息。在傳輸中每一位數據都占據一個固定的時間長度。
1.串行接口的組成串行接口是通過系統(tǒng)總線和CPU相連,串行接口部件的典型結構如圖8.44所示。主要由控制寄存器、狀態(tài)寄存器、數據輸入寄存器和數據輸出寄存器4部分組成。8.6可編程串行接口電路及其應用圖8.44串行接口與CPU、外設的連接
⑴控制寄存器控制寄存器用來保存決定接口工作方式的控制信息。⑵狀態(tài)寄存器狀態(tài)寄存器中的每一個狀態(tài)位都可以用來標識傳輸過程中某一種錯誤或當前傳輸狀態(tài)。
⑶數據寄存器①數據輸入寄存器:在輸入過程中,串行數據一位一位地從傳輸線進入串行接口的移位寄存器,經過串入并出(串行輸入并行輸出)電路的轉換,當接收完一個字符之后,數據就從移位寄存器傳送到數據輸入寄存器,等待CPU讀取。②數據輸出寄存器:在輸出過程中,當CPU輸出一個數據時,先送到數據輸出緩沖寄存器,然后,數據由輸出寄存器傳到移位寄存器,經過并入串出(并行輸入串行輸出)電路的轉換一位一位地通過輸出傳輸線送到對方。串行接口中的數據輸入移位寄存器和數據輸出移位寄存器是為了和數據輸入緩沖寄存器和數據輸出緩沖寄存器配對使用的。在學習串行通信方式時,很有必要了解一下有關串行通信中的一些基本概念,這里僅做簡單介紹。
2.串行通信中使用的術語⑴發(fā)送時鐘和接收時鐘把二進制數據序列稱為比特組,由發(fā)送器發(fā)送到傳輸線上,再由接收器從傳輸線上接收。二進制數據序列在傳輸線上是以數字信號形式出現,即用高電平表示二進制數1,低電平表示二進制數0。而且每一位持續(xù)的時間是固定的,在發(fā)送時是以發(fā)送時鐘作為數據位的劃分界限,在接收時是以接收時鐘作為數據位的檢測。①發(fā)送時鐘:串行數據的發(fā)送由發(fā)送時鐘控制,數據發(fā)送過程是:把并行的數據序列送入移位寄存器,然后通過移位寄存器由發(fā)送時鐘觸發(fā)進行移位輸出,數據位的時間間隔可由發(fā)送時鐘周期來劃分。②接收時鐘:串行數據的接收是由接收時鐘來檢測,數據接收過程是:傳輸線上送來的串行數據序列由接收時鐘作為移位寄存器的觸發(fā)脈沖,逐位打入移位寄存器。⑵DTE和DCE①數據終端設備(dataterminalequipment,DTE):是對屬于用戶所有聯(lián)網設備和工作站的統(tǒng)稱,它們是數據的源或目的或者即是源又是目的。例如:數據輸入/輸出設備,通信處理機或各種大、中、小型計算機等。DTE可以根據協(xié)議來控制通信的功能。
②數據電路終端設備或數據通信設備(datacircuit-terminatingequipment或datacommunicationequipment,DCE):前者為CCITT標準所用,后者為EIA標準所用。DCE是對網絡設備的統(tǒng)稱,該設備為用戶設備提供入網的連接點。自動呼叫/應答設備、調制解調器Modem和其他一些中間設備均屬DCE。⑶信道信道是傳輸信息所經過的通道,是連接2個DTE的線路,它包括傳輸介質和有關的中間設備。
3.串行通信中的工作方式分為:單工通信方式、半雙工通信方式和全雙工通信方式
圖8.45串行通信工作方式(a)單工(b)半雙工(c)雙工
⑵半雙工工作方式如果在傳輸的過程中依然用一根線連接,這樣在某一個時刻,只能進行發(fā)送,或只能進行接收。由于是一根線連接,發(fā)送和接收不可能同時進行,這種傳輸方式稱為半雙工工作方式,如圖8.45(b)所示。半雙工通信工方式類似對講機,某時刻A方發(fā)送B方接收,另一時刻B方發(fā)送A方接收,雙方不能同時進行發(fā)送和接收。⑴單工工作方式在這種方式下,傳輸的線路用一根線連接,通信的一端連接發(fā)送器,另一端連接接收器,即形成單向連接,只允許數據按照一個固定的方向傳送,如圖8.45(a)所示。即數據只能從A站點傳送到B站點,而不能由B站點傳送到A站點。單工通信類似無線電廣播,電臺發(fā)送信號,收音機接收信號。收音機永遠不能發(fā)送信號。⑶全雙工工作方式對于相互通信的雙方,都可以是接收器也都可以是發(fā)送器。分別用2根獨立的傳輸線(一般是雙絞線,或同軸電纜)來連接發(fā)送信號和接收信號,這樣發(fā)送方和接收方可同時進行工作,稱為全雙工的工作方式,如圖8.45(c)所示。全雙工通信工方式類似電話機,雙方可以同時進行發(fā)送和接收。
4.同步通信和異步通信方式串行通信分為2種類型:一種是同步通信方式,另一種是異步通信方式。⑴同步通信同步通信的特點是:由一個統(tǒng)一的時鐘控制發(fā)送方和接收方,若干字符組成一個信息組,字符要一個接著一個傳送;沒有字符時,也要發(fā)送專用的“空閑”字符或者是同步字符,因為同步傳輸時,要求必須連續(xù)傳送字符,每個字符的位數要相同,中間不允許有間隔。同步傳輸的特征是:在每組信息的開始(常稱為幀頭)要加上l一2個同步字符,后面跟著8位的字符數據。同步通信的數據格式如圖8.46所示。圖8.46同步通信字符格式
傳送時每個字符的后面是否要奇、偶校驗,由初始化時設同步方式字決定。⑵異步通信
異步通信的特點是:字符是一幀一幀的傳送,每一幀字符的傳送靠起始位來同步。在數據傳輸過程中,傳輸線上允許有空字符。所謂異步通信,是指通信中兩個字符的時間間隔是不固定的,而在同一字符中的兩個相鄰代碼間的時間間隔是固定的通信。異步通信中發(fā)送方和接收方的時鐘頻率也不要求完全一樣,但不能超過一定的允許范圍,異步傳輸時的數據格式如圖8.47所示。圖8.47異步通信字符格式
字符的前面是一位起始位(低電平),之后跟著5~8位的數據位,低位在前、高位在后。數據位后是奇、偶校驗位,最后是停止位(高電平)。是否要奇、偶校驗位,以及停止位設定的位數是1,1.5位或2位都由初始化時設置異步方式字來決定。
5.通信中必須遵循的規(guī)定⑴字符格式的規(guī)定通信中,傳輸字符的格式要按規(guī)定寫,圖8.47是異步通信的字符格式。在異步傳輸方式每個字符在傳送時,前面必須加一個起始位,后面必須加停止位來結束,停止位可以為1位,1.5位,2位。奇、偶校驗位可以加也可以不加。⑵比特率、波特率(baudrate)①比特率:比特率作為串行傳輸中數據傳輸速度的測量單位,用每秒傳輸的二進制數的位數bit/s(位/秒)來表示。②波特率:波特率是用來描述每秒鐘內發(fā)生二進制信號的事件數,用來表示一個二進制數據位的持續(xù)時間。
有關在遠距離傳輸時,數字信號送到傳輸介質之前要調制為模擬信號,再用比特率來測量傳輸速度就不那么方便直觀了。因此引入波特率作為速率測量單位即:波特率=1/二進制位的持續(xù)時間比特率可以大于或等于波特率,假定用正脈沖表示“1”,負脈沖表示“0”,這時比特率就等于波特率。假如每秒鐘要傳輸10個數據位,則其速率為l0波特,若發(fā)送到傳輸介質時,把每位數據用10個脈沖來調制,則比特率就為100b/s,即比特率大于波特率。
發(fā)送時鐘與波特率的關系是:時鐘頻率=72×波特率(n可以是l,16,32,64。,2為波特率因子,是傳輸一位二進制數時所用的時鐘周期數。不同芯片的n由手冊中給出)。波特率是表明傳輸速度的標準,國際上規(guī)定的一個標準的波特率系列是:110,300,600,1200,1800,2400,4800,9600,19200。大多數CRT顯示終端能在110~9600波特率下工作,異步通信允許發(fā)送方和接收方的時鐘誤差或波特率誤差在4%~5%。
6.信號的調制與解調計算機對數字信號的通信,要求傳輸線的頻帶很寬,但在實際的長距離傳輸中,通常是利用電話線來傳輸,電話線的頻帶一般都比較窄。為保證信息傳輸的正確,都普遍采用調制解調器(modem)來實現遠距離的信息傳輸,現在還有很多家庭上網仍使用modem連接。
調制解調器,顧名思義主要是完成調制和解調的功能。經過調制器(modulator)可把數字信號轉換為模擬信號,經過解調器(demodulator)把模擬信號轉換為數字信號。使用modem實現了對通信雙方信號的轉換過程,如圖8.48所示?,F在modem的數據傳輸速率理論值可達72Kb/s,而實際速率僅為33.6Kb/s。圖8.48調制與解調過程8.6.2可編程串行接口Intel8251A1.8251A的主要性能和內部結構
825lA是可編程的串行通信接口芯片,它的基本性能如下:
(1)可工作在同步方式,也可工作在異步方式。同步方式下波特率為0~64000波特,異步方式下波特率為0~19200波特。
(2)在同步方式時,每個字符可定義為5、6、7或8位。兩種方法實現同步,由內部自動檢測同步字符或由外部給出同步信號。允許同步方式下增加奇/偶校驗位進行校驗。(3)在異步方式下,每個字符可定義為5、6、7或8位,用1位作奇偶校驗。時鐘速率可用軟件定義為波特率的l、16或64倍。另外,8251A在異步方式下能自動為每個被輸出的數據增加1個起始位,并能根據軟件編程為每個輸出數據設置1位、1.5位或2位停止位。(4)能進行出錯檢測。帶有奇偶、溢出和幀錯誤等檢測電路,用戶可通過輸入狀態(tài)寄存器的內容進行查詢。
8251A的內部結構框圖如圖8.49所示。從圖中可以看出,它由數據總線緩沖器、讀/寫控制邏輯、發(fā)送緩沖器、發(fā)送控制器、接收緩沖器、接收控制器、調制/解調器控制邏輯、同步字符寄存器及控制各種操作的方式寄存器等組成。各部件實現的功能如下所示。圖8.49825lA內部結構原理框圖1)數據總線緩沖器數據總線緩沖器通過8位數據線D7~D0和CPU的數據總線相連,負責把接收口接收到的信息送給CPU,或把CPU發(fā)來的信息送給發(fā)送口。還可隨時把狀態(tài)寄存器中的內容讀到CPU中,在825lA初始化時,分別把方式字、控制字和同步字符送到方式寄存器、控制寄存器和同步字符寄存器中。2)讀/寫控制邏輯表8-138251A的控制信號與執(zhí)行的操作之間的對應關系C/執(zhí)?行?的?操?作0000010110100011CPU由8251A輸入數據CPU向8251A輸出數據CPU讀取8251A的狀態(tài)CPU向8251A寫入控制命令3)發(fā)送緩沖器與發(fā)送控制器發(fā)送緩沖器包括發(fā)送移位寄存器和數據輸出寄存器,發(fā)送移位寄存器通過825lA芯片的TXD管腳將串行數據發(fā)送出去。數據輸出寄存器寄存來自CPU的數據,當發(fā)送移位寄存器空時,數據輸出寄存器的內容送給移位寄存器。發(fā)送控制電路對串行數據實行發(fā)送控制。發(fā)送器的另一個功能是發(fā)送中止符(BREAK),中止符由在通信線上的連續(xù)低電平信號組成,它是用來在全雙工通信時中止發(fā)送終端的,只要8251A的命令寄存器的bit3為“1”,發(fā)送器就始終發(fā)送終止符。4)接收緩沖器與接收控制器接收緩沖器包括接收移位寄存器和數據輸入寄存器。串行輸入的數據通過8251A芯片的RXD管腳逐位進入接收移位寄存器,然后變成并行格式進入數據輸入寄存器,等待CPU取走。接收控制電路是用來控制數據接收工作。5)調制/解調器控制邏輯利用8251A進行遠距離通信時,發(fā)送方要通過調制解調器將輸出的串行數字信號變?yōu)槟M信號,再發(fā)送出去。接收方也必須將模擬信號經過調制解調器變?yōu)閿底中盘枺拍苡纱薪涌诮邮?。在全雙工通信方式下,每個收、發(fā)口都是要連接調制解調器。調制解調器控制電路是專為調制解調器提供控制信號用的。2.8251A的外部特性圖8.508251A引腳圖
1)
8251A與CPU的接口信號
8251A與CPU的接口信號可以分為五類,具體如下。
(1)雙向的數據信號線D7~D0825lA有8條數據線D7~D0,D7為最高位,D0為最低位。825lA通過這8根線和CPU的數據總線相連接,實際上,數據線上不只是傳輸數據,還傳輸CPU對825lA的編程命令字和825lA送往CPU的狀態(tài)信息。
(2)片選信號CSCS(輸入,11引腳)為片選信號,低電平有效,芯片被選中才能工作,如果8251A未被選中,數據線D7~D0將處于高阻狀態(tài),讀/寫信號對芯片都不起作用。
(3)讀/寫控制信號
RD(輸入,13引腳)為讀信號,低電平有效。當該信號有效時,并且CS也為低電平,CPU可以從8251A讀取數據或狀態(tài)信息。
WR(輸入,10引腳)為寫信號,低電平有效。當該信號有效時,并且CS也為低電平,CPU可以向8251寫入數據或控制字。C/D(輸入,12引腳)為控制/數據信號,分時復用。用來區(qū)分當前讀/寫的是數據還是控制信息或狀態(tài)信息。當C/D為高電平時,系統(tǒng)處理的是控制信息或狀態(tài)信息,從D7~D0端寫入8251A的必須是方式字、控制字或同步字符。當C/D為低電平時,寫入的是數據。
RESET(輸入,21引腳)為復位信號,高電平有效。當該信號為高時,8251A實現復位功能,內部所有的寄存器都被置為初始狀態(tài)。CLK(輸入,20引腳)為主時鐘信號,用于芯片內部的定時。對于同步方式,它的頻率必須大于發(fā)送時鐘TXC和接收時鐘RXC的30倍。對于異步方式,必須大于它們的4.5倍。
8251A的時鐘頻率規(guī)定在0.74~3.1MHz的范圍內。
8251A共有三種時鐘信號:CLK、TXC和RXC。其中發(fā)送時鐘和接收時鐘由波特率和波特率因子來決定。
(4)與發(fā)送有關的聯(lián)絡信號
TXRDY(輸入,15引腳)為發(fā)送器準備好信號,高電平有效。當該信號為高電平時,通知CPU,8251A已經準備好發(fā)送一個字符,表示CPU可以輸入數據。所謂發(fā)送器準備好,就是控制字的第0位TXEN為“1"時,使8251A允許發(fā)送,并且調制解調器已做好接收準備,發(fā)出信號使8251A的CTS信號變低為有效,因此TXRDY為輸出緩沖器空與CTS與TXEN。TXRDY可作為中斷申請信號,也可作為查詢方式的聯(lián)絡信號使用。
TXEMPTY(輸入,18引腳)為發(fā)送器空信號,控制8251A發(fā)送器發(fā)送字符的速度。對于同步方式,它的輸入時鐘頻率應等于發(fā)送數據的波特率,對于異步方式,它的頻率應等于發(fā)送波特率和波特率因子的乘積。
(5)與接收有關的聯(lián)絡信號。
RXRDY(輸出,14引腳)為接收器準備好信號,高電平有效。當該信號為高時,表示825lA已從外部設備或調制解調器中收到一個字符,等待CPU取走。它可以作為中斷請求信號或查詢聯(lián)絡信號與CPU聯(lián)系。SYNDET/BRKDET(輸入/輸出,16引腳)為同步檢測/斷缺檢測信號,高電平有效。在同步方式下,SYNDET執(zhí)行同步檢測功能,可以工作在輸入狀態(tài),也可以工作在輸出狀態(tài)。同步檢測分為內同步和外同步兩種方式。采用哪種同步方式要取決于8251A的工作方式,由初始化時寫入方式寄存器的方式字來決定。當8251A工作在內同步方式時,SYNDET作為輸出端,是在8251A內部檢測同步字符。如果8251A檢測到了所要求的一個或兩個同步字符時,SYNDET輸出高電平,表示已達到同步,后續(xù)收到的是有效數據。當8251A工作在外同步方式時,SYNDET作為輸入端。RXC(輸入,25引腳)為接收器時鐘信號,控制8251A接收字符的速度。和一樣,在同步方式時,它的頻率等于接收數據的波特率,并由調制解調器供給(近距離不用調制解調器,傳送時由用戶自行設置)。在異步方式時,時鐘頻率等于波特率和波特率因子的乘積。
2)
8251A與外部裝置之間的接口信號
8251A與外部裝置進行遠距離通信時,一般要通過調制解調器連接。連接的信號可大致分為數據信號和收發(fā)聯(lián)絡信號兩類。
(1)數據信號
TXD(輸出,19引腳)為發(fā)送數據信號端。CPU送入825lA的并行數據,在825lA內部轉換為串行數據,通過TXD端輸出。
RXD(輸入,3引腳)為接收數據信號端。RXD用來接收外部裝置通過傳輸線送來的串行數據,數據進入825lA后轉換為并行數據。
(2)發(fā)送數據時的聯(lián)絡信號
RTS(輸出,23引腳)為請求發(fā)送信號,低電平有效。這是8251A向調制解調器或外設發(fā)送的控制信息,初始化時由CPU向825lA寫控制命令字來設置。該信號有效時,表示CPU請求通過825lA向調制解調器發(fā)送數據。
CTS(輸入,17引腳)為發(fā)送允許信號,低電平有效。這是由調制解調器或外設送給8251A的信號,是RTS對的響應信號,只有當CTS為低電平時,825lA才能執(zhí)行發(fā)送操作。
(3)接收數據時的聯(lián)絡信號
DTR(輸出,24引腳)為數據終端準備好信號,低電平有效。是由8251A送出的一個通用的輸出信號,初始化時由CPU向8251A寫控制命令字來設置。該信號有效時,表示為接收數據做好了準備,CPU可以通過8251A從調制解調器接收數據。
DSR(輸入,22引腳)為數據裝置準備好信號,低電平有效。這是由調制解調器或外設向8251A送入的一個通用的輸入信號,是DTR的回答信號,CPU可以通過讀取狀態(tài)寄存器的方法來查詢DSR是否有效。
以上發(fā)送數據和接收數據的聯(lián)絡信號,對于遠距離串行通信時要通過調制解調器連接,實際上是和調制解調器之間的連接信號。如果近距離傳輸時,可不用調制解調器,而直接通過MCl488和MCl489來連接,外設不要求有聯(lián)絡信號時,這些信號可以不用。例如,RTS可以懸空,但CTS必須接低電平,否則發(fā)送器不工作。道理很簡單,這是由于發(fā)送器的工作條件是當CTS有效時,才能使TXRDY成為有效的高電平,使用時可根據實際的情況來決定。如果外設需要一對聯(lián)絡信號就起用一對,需要兩對就起用兩對。例如,DTR為有效電平可以作為一個CPU發(fā)出的選通信號,DSR有效可以作為外設的狀態(tài)信號。
使用MC1488和MC1489芯片時,傳輸時的電平是RS-232C標準電平,所能傳輸的最大距離是30m,一般不超過15m。數據傳輸的波特率低于20000波特。8.6.38251A的編程地址與初始化
1.8251A編程地址
從表8-13看到,8251A實際上只需要兩個端口地址:一個用于數據端口,一個用于控制端口。數據輸入端口和數據輸出端口可合用一個端口;狀態(tài)端口和控制端口也可合用一個端口。只用讀信號RD和寫WR信號即可區(qū)分是數據輸入還是數據輸出,是狀態(tài)端口還是控制端口,狀態(tài)端口只能讀不能寫。這樣在具體的硬件設計時可簡化電路連接。
由于825lA的D7~D0通常與數據總線的低8位相連,又由于低8位的數據線是和內存的偶地址相連,因而8251A的數據用偶地址傳送正好和內存的低8位數據相對應。讀寫時,當地址總線的A0=0時,必定選中偶地址;A0=1時,選定奇地址。因而對8251A編程時必須使A0總是為0。但C/端要求兩種狀態(tài),C/D=1要求選中數據輸入/輸出寄存器;C/D=0要求選中方式寄存器,同步字符寄存器、控制寄存器和狀態(tài)寄存器。C/D端要求有0和1兩種電平,為滿足這種要求,又要保持A0總是為0,因此將地址線的A0和C/D相連接,片選通過地址譯碼得到,RD、WR分別與控制總線的IOR和IOW相連。圖8.518251A異步通信方式的連接圖8.528251A同步通信方式的連接
異步方式時,TXRDY和RXRDY作為中斷申請信號使用,與外部中斷源連接;同步方式時,TXRDY和RXRDY與調制解調器連接。如果工作在查詢方式,均由CPU執(zhí)行輸出指令向奇地址端口寫入命令指令,使其開始進行輸入/輸出工作。
8251A初始化編程的流程如圖8.53所示。初始化編程主要是對8251A的方式寄存器、控制寄存器和狀態(tài)寄存器進行編程設置,下面做具體介紹。圖8.538251A初始化編程流程圖2.8251A的控制字與初始化
1)方式寄存器方式寄存器是8251A在初始化時,用來寫入方式選擇字用的。方式選擇有兩種:同步方式和異步方式。方式寄存器有8位,最低2位全為0時表示是同步方式,最低2位不全為0時表示是異步方式。具體格式如下。
(1)8251A工作在同步方式下 當825lA工作在同步方式下時,方式寄存器的格式如圖8.54所示。圖8.548251A同步方式下方式寄存器的格式
(1)D1D0=00是同步方式的標志特征,表示同步傳送時波特率因子為1,此時芯片上TXC和RXC引腳上的輸入時鐘頻率和波特率相等。
(2)D3D2(L2L1)是規(guī)定同步傳送時每個字符的位數,當L2L1對應為00、01、10、11時,分別表示傳輸字符的位數是5、6、7、8位。
(3)D4(PEN)是規(guī)定在傳輸數據時是否需要奇偶校驗位,該位為“1”表示有校驗位,為“0”則無校驗位。
(4)D5(EP)是用來規(guī)定校驗位的類型,該位為“0”表示是奇校驗,為“1”表示是偶校驗。
(5)D6(ESD)是用來規(guī)定同步的方式,該位為“0”表示是內同步,芯片的SYNDET引腳為輸出端;為“1”表示是外同步,SYNDET引腳為輸入端。
(6)D7(SCS)是用來規(guī)定同步字符的數目,該位為“0”表示兩個同步字符,為“1”表示一個同步字符。例如,要求825lA作為外同步通信接口,數據位8位,兩個同步字符,偶校驗,其方式選擇字應為十六進制的7CH(01111100B=7CH)。(2)8251A工作在異步方式下當8251A工作在異步方式下時,方式寄存器的格式如圖8.55所示。圖8.558251A異步方式下方式寄存器的格式(1)D1D0(B2B1)不全為0的情況表示是異步方式,當B2B1=01時,規(guī)定波特率的因子為1;B2B1=10時,規(guī)定波特率因子為16;B2B1=11時,規(guī)定波特率因子為64。
(2)D3D2(L2L1)是規(guī)定在異步傳送時每個字符的位數,與同步方式下的數據位數規(guī)定相同。
(3)D4(PEN)是規(guī)定在異步傳輸時是否需要校驗位,與同步方式下的規(guī)定相同。
(4)D5(EP)是用來規(guī)定異步方式時,數據校驗的類型,與同步方式下的規(guī)定相同。(5)D7D6(S2S1)是用來規(guī)定異步方式時,停止位的個數。為了和同步方式相區(qū)別,當D7D6=00時,沒有定義停止位的個數;當D7D6=01時,表示1個停止位;當D7D6=10時,表示1.5個停止位;當D7D6=11時,表示2個停止位。例如,要求8251A芯片作為異步通信,波特率為64,字符長度8位,奇校驗,2個停止位的方式選擇字應為十六進制的DFH(1101111lB=DFH)。
2)控制寄存器對8251A進行初始化時,按上面的方法寫入了方式選擇字后,接著要寫入的是命令字,由命令字來規(guī)定8251A的工作狀態(tài),才能啟動串行通信開始工作或置位。這樣就要對控制寄存器輸入控制字,控制寄存器的格式如圖8.56所示??刂萍拇嫫饕彩?位,每位的定義如下:
(1)D0(TXEN):允許發(fā)送選擇。只有當D0=l時,才允許8251A從發(fā)送端口發(fā)送數據。(2)D1(DTR):該位與調制解調器控制電路的DTR端有直接聯(lián)系,當工作在全雙工方式時,D0、D2位要同時置1,D1才能置1,由于DTR=1從而使STB端被置成有效的低電平,通知調制解調器或MC1488芯片等器件,CPU的數據終端已經就緒,可以接收數據了。
(3)D2(RxEN):允許接收選擇。只有當D2=1時,才允許825lA從接收端口接收數據。
(4)D3(SBRK):當該位被置1后,使串行數據發(fā)送管腳TXD變?yōu)榈碗娖剑敵觥?”信號,表示數據斷缺,而當處于正常通信狀態(tài)時,SBRK=0。(5)D4(ER):當該位被置1后,將消除狀態(tài)寄存器中的全部錯誤標志,PE、OE、FE這三位錯誤標志由狀態(tài)寄存器的D3、D4、D5來指示。
(6)D5(RTS):該位與調制解調器控制電路的請求發(fā)送信號RTS有直接聯(lián)系,當D5位被置1,由于RTS=1,從而使ACK輸出有效的低電平,通知調制解調器或MCl489芯片等器件,CPU將要通過825lA輸出數據。調制解調器控制電路的和的有效電平不是由8251A內部產生,而是通過對控制字的編程來設置,這樣可便于CPU與外設直接聯(lián)系。圖8.568251A的控制寄存器格式(7)D6(IR):當該位被置1后,使8251A內部復位。當對8251A初始化時,使用同一個奇地址,先寫入方式選擇字,接著寫入同步字符(異步方式時不寫入同步字符),最后寫入的才是控制字,這個順序不能改變,否則將出錯。但是,當初始化以后,如果再通過這個奇地址寫入的字,都將進入控制寄存器,因此控制字可以隨時寫入。如果要重新設置工作方式,寫入方式選擇字,必須先要將控制寄存器的D0位置1,也就是說內部復位的命令字為40H才能使8251A返回到初始化前的狀態(tài)。當然,用外部的復位命令RESET,也可使825lA復位,而在正常的傳輸過程中D6=0。(8)D7(EH):該位只對同步方式才起作用。當D7=l時表示開始搜索同步字符,但同時要求D2(RXEN)=l,D4(ER)=1,同步接收工作才開始進行。也就是說,寫同步接收控制字時必須使D7、D4、D2同時為1。
3)狀態(tài)寄存器狀態(tài)寄存器是反映8251A內部工作狀態(tài)的寄存器,只能讀出,不能寫入。CPU可用IN指令來讀取狀態(tài)寄存器的內容。狀態(tài)寄存器的格式如圖8.57所示。狀態(tài)寄存器也是8位,每位的定義如下:
(1)D0(TXRDY):D0=1是發(fā)送準備好標志,表明當前數據輸出緩沖器空。要注意的是,這里狀態(tài)位D0的TXRDY和芯片引腳上的TXRDY的信號不同,這是狀態(tài)位的TXRDY不受輸入信號CTS和控制位TXEN的影響;而芯片引腳上的TXRDY必須在數據輸出寄存器空,并且調制解調器控制電路的CTS端也為低電平時,控制寄存器的D0(TXEN)=1時才有效。(2)D1(RXRDY):接收器準備好信號,該位為“1”時,表明接口已接收到一個字符,當前正準備輸入CPU中。當CPU從8251A輸入一個字符時,RXRDY自動清0。
(3)D2:(TXEMPTY),同8251A的18腳說明。
(4)D6:(SYNDET/BRKDET),同8251A的16腳說明。(5)D7(DSR):數據終端準備好標志,當外設(調制解調器等)已準備好發(fā)送數據時,就向DSR端發(fā)出低電平信號,使DSR有效。此時DSR位被置1。上面Dl、D2、D6、D7這4位的狀態(tài)與8251A芯片外部同名管腳的狀態(tài)完全相同,反映這些管腳當前的狀態(tài)。
(6)D3(PE):奇偶出錯標志位,PE=1時,表示當前產生了奇偶錯,但不終止8251A工作。圖8.578251A的狀態(tài)寄存器格式(7)D4(OE):溢出出錯標志位,在接收字符時,如果數據輸入寄存器的內容沒有被CPU及時取走,下一個字符各位已從RXD端全部進入移位寄存器,然后進入數據輸入寄存器,這時,在數據輸入寄存器中,后一個字符覆蓋了前一個字符,因而出錯,這時D4位被置1。(8)D5(FE):幀格式出錯標志位,只適用于異步方式。在異步接收時,接收器根據方式寄存器規(guī)定的字符位數、有無奇偶校驗位、停止位位數等,都由計數器計數接收,若停止位不為0,說明幀格式錯位。字符出錯,此時FE=1。上面的PE=1,OE=1和FE=1只是記錄接收時的三種錯誤,并沒有終止8251A工作的功能,由CPU通過IN指令讀取狀態(tài)寄存器來發(fā)現錯誤。8.6.48251A應用舉例
1.同步方式下的初始化同步方式下8251A的工作特點是:發(fā)送方和接收方是同一時鐘源。也就是說數據和發(fā)送時鐘(或接收時鐘)是同步的,圖8.52是同步方式下的連接。檢測同步字符分為內同步方式和外同步方式兩種。如果是內同步方式,靠8251A自身檢測,檢測到同步
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 制造業(yè)項目標準合同模板
- 合同制優(yōu)化保獎服務套餐(7型)
- 裝修裝飾工程合同(三)
- 綠色通道綠化合同
- 租賃合同和解協(xié)議書格式示例
- 車輛質押借款正式合同
- 公司簽訂安保人員合同范本范例
- 小學生拓展思維作文課件
- 臨終關懷服務的倫理決策案例考核試卷
- 城市配送與物流配送環(huán)節(jié)的風險防范考核試卷
- 陪審員培訓刑事課件
- 新進廠生產經理工作開展規(guī)劃
- 出國實用英語口語課件
- 交房清水樣板間施工方案
- 【施工組織設計】內容完整性和編制水平
- 跨部門工作聯(lián)絡單
- DataOps實踐指南(1.0)-中文版-2023.07
- Vue.js前端開發(fā)實戰(zhàn)(第2版)全套完整教學課件
- 2023風力發(fā)電機組延壽評估技術規(guī)范
- 鞋業(yè)-品質培訓
- 小學思政課《愛國主義教育》
評論
0/150
提交評論