




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第10章串行通信和可編程接口芯片8251A
10.1串行通信的基本概念微型計算機與一些常用的外部設備之間的數據交換,往往需要采用串行通訊方式。在遠程計算機通訊中,串行通訊更是一種不可缺少的通訊方式。串行通訊是指數據一位一位地順序傳送,只占用一條傳輸線,它可由兩種方式來實現:一種是將8位通道中的一位依靠軟件來實現串行數據傳送;另一種是通過專用的通訊接口,將并行數據轉換為串行數據。
在并行通訊中,數據有多少位就要有多少傳輸線,而串行通訊只需要一條傳輸線,所以串行通訊可以節省傳輸線。在數據位數較多,傳輸距離較長的情況下,這個優點更為突出。例如,將微型計算機的信息傳送到遠方的終端,或者傳送到大型計算中心,則常用通訊線路(電話線)進行傳送。這種串行傳送可以大大減少傳輸線,從而降低成本,是它的傳送速度沒有并行通訊快。隨著大規模集成電路技術的發展,通用的可編程的同步/異步接口芯片種類越來越多。常用的有Intel的8251A、Motorola的ACIA、Zilog的SIO等。
10.1.1數據傳送方向。在串行通訊中,數據通常在兩個站(如A和B)之間進行雙向傳送。這種傳送根據需要又分為單工、半雙工和全雙工傳送。①單工傳送。單工傳送方式是指在通訊時,只能由一方發送數據,一方接收數據的通訊方式。②半雙工傳送。半雙工傳送方式是指在通訊時,雙方都能接收或發送,但不能同時接收和發送的通訊方式。在這種傳送方式中,通訊雙方只能輪流地進行發送和接收,即A站發,B站接收;或B站發送,A站接收。③全雙工傳送。全雙工傳送方式是指可以同時在兩個站之間進行發送和接收的通訊方式。全雙工需要兩條傳輸線。數據傳送方式
(a)單工;(b)半雙工;(c)全雙工信號的調制和解調。調制解調器(Modem)是計算機在遠程通訊中必須采用的一種輔助的外部設備。計算機通訊是一種數字信號的通訊,數字信號通訊要求傳送的頻帶是很寬的,而計算機在遠程通訊時,通常通過電話線傳送,電話線不可能有這樣寬的頻帶。如果用數字信號直接通訊,那么經過電話線傳送,信號便會產生畸變。因此,在發送端,必須采用調制器把數字信號轉換為模擬信號;而在接收端,又必須用解調器檢測從發送端送來的模擬信號,再把它轉換成為數字信號。由此可知:調制解調器在發送端相當于D/A轉換器,而在接收端則相當于A/D轉換器。
10.1.2串行通訊的基本方式
串行通訊可分為異步通訊和同步通訊兩種方式。
(1)異步通訊。在異步通訊中,CPU與外部設備之間有兩項規定:①字符格式。字符格式即字符的編碼形式及規定。如規定每個串行字符由四個部分組成:1個起始位、5~8個數據位、1個奇偶校驗位以及1~2個停止位。起始位后面,緊跟著要傳送字符的最低位,每個字符的結束,是一個高電平的停止位。起始位至停止位構成一幀。相鄰兩個字符之間的間隔可以是任意長度的,以便使它有能力處理實時的串行數據。兩個相鄰字符之間的位叫空閑位。而下一個字符的開始,必然以高電平變成低電平的起始位的下降沿作為標志。②數據傳輸速率數據傳輸速率也稱比特率(BitRate)每秒傳輸的二進制位數bps字符中每個二進制位持續的時間長度都一樣,為數據傳輸速率的倒數當進行二進制數碼傳輸,且每位時間長度相等時,比特率還等于波特率(BaudRate)串行異步通信的數據傳輸速率每秒50、75、100、150、300、600、1200、2400、4800、9600、19200波特。現在,可以達到115200bps或更高串行通信時的數據、控制和狀態信息都使用同一根信號線傳送收發雙方必須遵守共同的通信協議(通信規程),才能解決傳送速率、信息格式、位同步、字符同步、數據校驗等問題串行異步通信以字符為單位進行傳輸,其通信協議是起止式異步通信協議起止式異步通信協議起始位——每個字符開始傳送的標志,起始位采用邏輯0電平起始位校驗位停止位空閑位數據位低位高位字符0/10/10/10/110111…數據位——數據位緊跟著起始位傳送。由5~8個二進制位組成,低位先傳送校驗位——用于校驗是否傳送正確;可選擇奇檢驗、偶校驗或不傳送校驗位停止位——表示該字符傳送結束。停止位采用邏輯1電平,可選擇1、1.5或2位空閑位——傳送字符之間的邏輯1電平,表示沒有進行傳送
(2)同步傳送。在異步傳送中,每一個字符都用起始位和停止位作為字符開始和結束的標志,占用了一些時間,因此在數據塊傳送時,為了提高速度,就要設法去掉這些標志,而采用同步傳送。此時,在數據塊開始處,要用同步字符來指明,同步字符通常由用戶自己設定,可用一個(或相同兩個)8位二進制碼作同步字符。同步傳送速度高于異步傳送速度,但它要求由時鐘來實現發送端及接收端之間的同步,所以,硬件電路比較復雜。以一個數據塊(幀)為傳輸單位,每個數據塊附加1個或2個同步字符,最后以校驗字符結束同步通信的數據傳輸效率和傳輸速率較高,但硬件電路比較復雜串行同步通信主要應用在網絡當中~~~~同步字符數據數據數據校驗字符同步方式是指發送和接收是同一接收源。由統一的時鐘控制,字符一個接一個傳送;沒有字符時,沒有字符時,也要發送專用的“空閑“字符或同步字符。同步傳輸的特征是:在每組信息的開始(稱幀頭)要加上1-2個同步字符,后面跟5-8個字符數據。同步通信數據格式如下:同步字符1同步字符2字符數據10.1.4異步串行接口芯片UART
串行接口的基本結構主要是異步接收/發送器(UART),它不僅包括并行數據和串行數據之間的相互轉換,還有檢測串行通信在傳送過程中可能發生錯誤的邏輯部件。
10.1.5調制解調器調制(Modulating)把數字信號轉換為電話線路傳送的模擬信號解調(Demodulating)將電話線路的模擬信號轉換為數字信號調制解調器MODEM具有調制和解調功能的器件合制在一個裝置三種調制方式根據載波Acos(t+)的三個參數:幅度、頻率、相位,產生常用的三種調制技術:幅移鍵控法Amplitude-ShiftKeying(ASK)頻移鍵控法Frequency-ShiftKeying(FSK)相移鍵控法Phase-ShiftKeying(PSK)ASK(又稱為調幅)
用載波信號的不同幅度代表‘1’和‘0’FSK(又稱為調頻)
用載波信號的不同頻率代表‘1’和‘0’PSK(又稱為調相)
用載波信號的相位變化代表‘1’和‘0’(有變化為’1’,無變化為’0’)
10.2可編程串行通信接口8251AIntel8251A是可編程的串行通信接口芯片,它的主要特點如下:①可用于串行異步通信,也可用于串行同步通信。②對于異步通信,可設定停止位為1位、1位半或2位,數據位可在5-8位之間選擇。③對于同步通信,可設為單同步、雙同步或者外同步,同步字符可由用戶自己設定。④異步通信的時鐘頻率可設為波特率的1倍、16倍或64倍。⑤可以設定奇偶校驗的方式,也可以不校驗。校驗位的插入、檢出及檢錯都由芯片本身完成。⑥在異步通信時,波特率的可選范圍為0~19.2千波特;在同步通信時,波特率的可選范圍為0~64千波特。⑦提供與外部設備特別是調制解調器的聯絡信號,便于直接和通信線路相連接。⑧接收、發送數據分別有各自的緩沖器,可以進行全雙工通信。異步方式接收方對數據的檢測內部結構
發送和接收電路調制解調控制電路
總線接口部分8251A的外部引腳
(1)數據總線緩沖器。這是三態雙向的緩沖器,引腳D0~D7是8251A和CPU接口的三態雙向數據總線,用于向CPU傳遞命令、數據或狀態信息。與CPU互相交換的數據和控制字就存放在這個區域,共有三個緩沖器。分別為狀態緩沖器、接收數據緩沖器和發送數據/命令緩沖器。狀態緩沖器用來存放8251A的內部工作狀態,供CPU查詢;接收數據緩沖器用來存放接收器已經裝配好的字符,準備送給CPU;發送數據/命令緩沖器用來存入CPU送入8251A的數據或命令。
(2)讀/寫控制邏輯。讀/寫控制邏輯接收來自CPU的控制信號,對數據在內部總線上的傳送方向進行控制。
(3)接收器及接收控制。接收器從RXD引腳接收串行數據,按指定的方式變成并行數據。在異步方式下,當接收器成功地接收到起始位后,8251A便接收數據位、校驗位和停止位,接著將并行的數據通內部總線送入數據緩沖器。
(4)發送器及發送控制。發送器從CPU接收并行數據,加上適當的字符格式信號后,再將其轉換成串行的數據從TXD引腳發送出去。
(5)調制解調控制器。該模塊提供和調制解調器的聯絡信號,MODEM控制部分有四條信號線,該四條信號線一般用于與MODEM相連時的聯絡控制信號。但是它們也可以用作與外設聯系的標準信號使用。
8251A的外部引腳
(1)與CPU接口的引腳。
D7~D0:數據線。
CLK:時鐘信號輸入線,用于產生8251A內部時序。CLK的周期為0.42~1.35μs。CLK的頻率至少應是接收、發送時鐘的30倍(對同步方式)或4.5倍(對異步方式)。
RESET:復位信號輸入線,高電平有效。復位后8251A處于空閑狀態直至被初始化編程。:片選信號輸入線,低電平有效。僅當為低電平時,CPU才能對8251A操作。:信息類型信號輸入線。為0時傳輸的是數據,為1時傳輸的是控制字或狀態信息。:讀選通信號輸入線,低電平有效。:寫選通信號輸入線,低電平有效。
CPU對8251A的讀寫控制如表
(2)接收部分
RXD:串行數據輸入線,高電平表示數字1,低電平表示數字0。
RXRDY:接收準備好狀態輸入線,高電平有效。當接收器接到一個字符并準備送給CPU時,RXRDY為1;當字符被CPU讀取后RXRDY恢復為0。RXRDY可作為8251A向CPU申請接收中斷的請求源。:接收器時鐘輸入線。它控制接收器接收字符的速率,在上升沿采集串行數據輸入線的頻率應等于波特率(同步方式)或等于波特率的1倍、16倍或64倍(異步方式)。SYNDET/BD:同步狀態輸出線或者外同步信號輸入線。此線僅對同步方式有意義。在同步方式中,若程序設定8251A為外同步接收,則SYNDET/BD腳用于輸入外同步信號,SYNDET/BD腳上的電平正跳變啟動接收數據。若程序設定8251A內同步接收,則8251A先搜索同步字(同步字事先由程序裝在同步字符寄存器中)。每當RXD線上收到一位信息就移入接收寄存器并和同步字符寄存器內容比較,若不等則再收一位再比較,直到兩者相等。此時SYNDET/BD輸出高電平,表示己搜索到同步字,接下來便把接收到的數據逐個地裝入接收數據寄存器。8251A同步通信應用(3)發送部分
TXD:發送數據輸出線。CPU并行輸入給8251A的數據從這個引腳串行發送出去。
TXRDY:發送準備好狀態輸出線,高電平有效。當發送寄存器空閑且允許發送(腳電平為低、命令字中TXEN位為1)時,TXRDY為高電平。當CPU給8251A寫入一個字符后TXRDY恢復為低電平。TXRDY可作為8251A向CPU申請發送中斷的請求源。
TXEMPT:發送緩沖器空閑狀態輸出線。高電平有效,TXEMPT=1,表示發送緩沖器中沒有要發送的字符,當CPU將要發送的數據寫入8251A后,TXEMPT自動復位。:發送器時鐘輸入線,在的下降沿數據由8251A移位輸出。對頻率的要求同
發送器的工作過程:在異步方式中,發送器在數據前加上起始位,并根據程序的設定在數據后加上校驗位和停止位,然后作為一幀信息從TXD腳逐位發送數據。在同步方式中,發送器先送同步字符,然后逐位地發送數據。若CPU沒有及時把數據寫入發送緩沖器,則8251A用同步字符填充,直至CPU寫入新的數據。
(4)與外設或調制解調器接口:
:數據設備準備好狀態輸入線,低電平有效。當調制解調器準備好時,有效,表示Modem(或DCE)已準備就緒。CPU可通過讀取狀態寄存器的D7位檢測該信號。:數據終端準備好狀態輸出線,低電平有效。當8251A命令字位D1為1時,有效,用于向調制解調器表示數據終端已準備好。:請求發送信號輸出線,低電平有效。當8251A命令字位D5為1時,有效,請求調制解調器作好發送準備(建立載波)。:清除發送(允許傳送)信號輸入線,低電平有效。當調制解調器作好送數準備時,有效,作為對8251A的信號的響應。如果8251A不使用調制解調器而直接和外界通訊,一般應將、腳接地。接收器的工作過程:在異步方式中,當接收器接收到有效的起始位后,便接收數據位、奇偶校驗位和停止位。然后將數據送入寄存器,此時RXRDY輸出高電平,表示已收到一字符,CPU可以來讀取。復位操作輸出第一個同步字符輸出方式字輸出第二個同步字符雙同步?輸出命令字傳送數據傳遞完?復位?同步方式?是是是是否否否10.2.28251A的編程1.8251A的編程流程圖方式字的格式2.方式字;
方式字確定8251A的通訊方式(同步/異步)、校驗方式(奇校驗、偶校驗、不校驗)、數據位數(5、6、7或8位)及波特率參數等。它應在復位后寫入,且只需寫入一次。命令字的格式3.命令字。命令字使8251A處于規定的狀態以準備發送或接收數據。它應在寫入方式字后寫入,用于控制8251A的工作,可以多次寫入。
方式字和命令字本身無特征標志,也沒有獨立的端口地址,8251A是根據寫入先后次序來區分這兩者的:先寫入者為方式字,后寫入者為命令字。所以CPU在對8251A初始化編程時必須按一定的先后順序寫入方式字和命令字。
4狀態寄存器。狀態寄存器存放8251A的狀態信息,供CPU查詢,狀態字各位的意義如圖所示。
DSR:數據設備準備好標志。其狀態同腳。
SYNDET:同步標志。
FE:異步通訊幀出錯標志。為1表示未檢測到字符末尾的有效停止位,但FE錯并不禁止8251A工作。FE標志由命令控制字中的ER位清除。
OE:溢出標志。接收器內的字符尚未被CPU讀走時又有新的字符裝入,則OE置1,此時原來的字符丟失,但并不禁止8251A工作,OE標志由命令控制字中的ER位清除。
PE:奇偶錯標志。奇偶錯時PE置1,但此時并不禁止8251A工作,PE標志由命令控制字中的ER位清除。
TXE:發送緩沖器空標志。其狀態同TXE腳。
RXRDY:接收準備好標志。其狀態同RXRDY腳。
TXRDY:發送準備好標志。含義同TXRDY引腳。只要發送緩沖器空,就置位該位。而引腳TXRDY除發送緩沖器空外,還要滿足TXE=1,CTS=0才置位。狀態字
10.2.38251A的初始化編程舉例像所有的可編程器件一樣,8251A在使用前也要進行初始化。初始化在8251A處于復位狀態時開始。其過程為:首先輸入方式控制字,以決定通信方式、數據位數、校驗方式等若是同步通信方式則緊接著輸入一個或兩個同步字符,若是異步方式則這一步可省略,最后送入命令控制字,就可以開始發送或接收數據了。初始化過程的信息全部寫入控制端口特征是C/=1,即地址線A0=1的地址。由于各個控制字沒有特征位,所以寫入的順序不能出錯,否則就會張冠李戴,達不到初始化的目的。當8251A與CPU連接時,至少要占用兩個端口地址,即控制端口(C/=1)和數據端口(C/=0)。在使用8251A時需要一個外部時鐘源提供、
和CLK信號。和由波特率以及時鐘頻率與波特率的倍率決定。CLK則在()頻率的基礎上增高若干倍。
8251A與CPU通常采用查詢或中斷方式交換數據。若采用中斷方式,兩個狀態信號TXRDY和RXRDY通過一個非門接到CPU的外中斷輸入。其余的、、RESET都是同名端相連。在編程時,對8251A初始化,輸入命令字后就可進行數據傳送。在得到中斷申請后,通過調用狀態字來檢測是接收申請(RXRDY=1)還是發送申請(TXRDY=1),然后轉至相應的程序模塊。1、異步方式下的初始化例:要求異步方式下,波特率因子為16,一位停止位,則方式選擇字為01011101B=5DH,在異步方式下輸入50個字符,采用查詢狀態字的方法,在程序中需對狀態寄存器的RxRDY位進行測試,查詢8251A是否從外設接收一個字符,如果收到,RxRDY位變為有效的“1“,CPU用輸入指令從偶地址口取回數據送入內存緩沖區中,當CPU讀取字符后,RxRDY自動復位為“0“,除檢測RxRDY位以外還要栓測D3(PE),D4(OE),D5(FE)位是否出錯,若出錯后轉錯誤處理程序。程序如下:異步方式下的初始化(程序)
MOV AL,40H OUT PortE,AL ;復位8251A MOV AL,50H OUT PortE,AL ;設置異步方式選擇字
MOV AL,37EH OUT PortE,AL ;控制字寫入奇地址PortE MOV DI,0 MOV CX,32H ;計數初值50個字符Input: IN,AL,PortE ;讀取狀態字
TEST AL,02H ;測試狀態字第2位RxRDY JZ Input ;未收到字符則重新取狀態字
IN AL,Port0 ;RxRDY有效,從偶地址口輸入數據
MOV DX,Buffer ;緩沖區首址送DX MOV [DX+DI],AL ;將字符送入緩沖區
INC DI ;緩沖區指針加1 IN AL,PortE ; 再讀取狀態字
TEST AL,38H ;測試有無三種錯誤
JNZ ERROR LOOP Input JMP EXITERROR:EXIT:2、同步方式下的初始化例如:要求2個同步字符,外同步,奇校檢,每字節8位。則方式選擇字為01011100B=5CH,第一個同步字符為A5H,第二個同步字符為E7H。 編程初始化時,先用內部復位命令,將40H送入8251A奇地址,復位后重新寫入奇地址,程序如下:
MOV AL,40H OUT PortE,AL ;復位8251A MOV AL,5CH OUT PortE,AL ;設置方式選擇字
MOV AL,0A5EH OUT PortE,AL ;寫入第一個同步字符
MOV AL,07EH OUT PortE,AL ;寫入第一個同步字符
MOV AL,0B7H OUT PortE,AL ;設置控制源,啟動發送器和接收器10.3RS-232C串行接口標準美國電子工業協會EIA制定的通用標準串行接口1962年公布,1969年修訂1987年1月正式改名為EIA-232D設計目的是用于連接調制解調器現已成為數據終端設備DTE(例如計算機)與數據通信設備DCE(例如調制解調器)的標準接口可實現遠距離通信,也可近距離連接兩臺微機屬于網絡層次結構中的最低層:物理層RS-232C的引腳定義232C接口標準使用一個25針連接器絕大多數設備只使用其中9個信號,所以就有了9針連接器
現在的臺式PC機一般至少有兩個RS-232串行口COM1和COM2,通常COM1使用的是9針D形連接器,而COM2使用的是老式的DB25針連接器。RS-232C接口RS-232C的引腳RTS:請求發送當數據終端設備準備好送出數據時,就發出有效的RTS信號,用于通知數據通信設備準備接收數據CTS:清除發送(允許發送)當數據通信設備已準備好接收數據終端設備的傳送數據時,發出CTS有效信號來響應RTS信號RTS和CTS是數據終端設備與數據通信設備間一對用于數據發送的聯絡信號DTR:數據終端準備好該信號就有效,表明數據終端設備準備就緒DSR:數據裝置準備好通常表示數據通信設備(即數據裝置)準備好,并可以進行數據傳輸方式DTR和DSR也可用做數據終端設備與數據通信設備間的聯絡信號,例如應答數據接收TxD:發送數據串行數據的發送端RxD:接收數據串行數據的接收端GND:信號地為所有的信號提供一個公共的參考電平CD:載波檢測(DCD)當本地調制解調器接收到來自對方的載波信號時,該引腳向數據終端設備提供有效信號RI:振鈴指示當調制解調器接收到對方的撥號信號期間,該引腳信號作為電話鈴響的指示、保持有效保護地(機殼地)起屏蔽保護作用的接地端,一般應參照設備的使用規定,連接到設備的外殼或大地TxC:發送器時鐘控制數據終端發送串行數據的時鐘信號RxC:接收器時鐘控制數據終端接收串行數據的時鐘信號RS-232C的電氣特性232C接口采用EIA電平高電平為+3V~+15V低電平為-3V~-15V實際常用±12V或±15V標準TTL電平高電平:+2.4V~+5V低電平:0V~0.4V電平轉換,邏輯轉換RS-232C的連接微機利用232C接口連接調制解調器,用于實現通過電話線路的遠距離通信微機利用232C接口直接連接進行短距離通信。這種連接不使用調制解調器,所以被稱為零調制解調器(NullModem)連接連接調制解調器電話線MODEM微機2345678202223456782022MODEM23456782022數據裝置準備好DSR數據終端準備好DTR發送數據TxD接收數據RxD請求發送RTS允許發送CTS信號地GND載波檢測CD振鈴指示RI微機23456782022(DCE)(DTE)不使用聯絡信號的3線相連方式微機TxDRxDGND微機為了交換信息,TxD和RxD應當交叉連接程序中不必使RTS和DTR有效也不應檢測CTS和DSR是否有效
RS-232C串口通信接線方法(三線制)使用聯絡信號的多線相連方式通信比較可靠,所用連線較多,不如前者經濟
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030中國認證檢驗檢測行業市場發展現狀及發展趨勢與投資前景研究報告
- 2025-2030中國視頻會議行業市場發展趨勢與前景展望戰略研究報告
- 2025-2030中國補腎藥物行業市場發展分析及發展趨勢與投資前景研究報告
- 2025-2030中國蛋白酪氨酸激酶SYK行業市場現狀供需分析及投資評估規劃分析研究報告
- 芭蕾基礎訓練對拉丁舞技術動作質量的影響研究
- 2025-2030中國自動售貨機行業市場發展分析及競爭策略與投資前景研究報告
- 私人教師一對一輔導服務合同
- 企業并購重組資金籌措協議
- 社區健身器材維護保養服務合同
- 交通客運票務協議
- 2025年高考思辨作文備考之17例高級思辨素材
- (甘肅二診)2025年甘肅省高三月考試卷(4月)物理試卷(含官方答案)
- 2025年中國二氧化碳市場運行態勢及行業發展前景預測報告
- 格構梁班組合同
- 福建省泉州市20023年第29屆WMO競賽二年級數學下學期競賽試卷
- 2025年安全生產有限空間作業應急處理能力試題集試卷
- 內蒙古赤峰山金紅嶺有色礦業有限責任公司招聘考試真題2024
- 蘇州卷-2025年中考第一次模擬考試英語試卷(含答案解析)
- 防菌材料創新-深度研究
- 2024山西三支一扶真題及答案
- 農莊合作協議書范本
評論
0/150
提交評論