串口通訊

串口通訊

串口通信(Serial Communication), 是指外設和計算機間,通過數據信號線 、地線、控制線等,按位進行傳輸數據的一種通訊方式。這種通信方式使用的數據線少,在遠距離通信中可以節約通信成本,但其傳輸速度比並行傳輸低。

基本簡介

套用

隨著計算機系統的套用和微機網路的發展,通信功能越來越顯得重要.這裡所說的通信是指計算機與外界的信息交換.因此,通信既包括計算機與外部設備之間,也包括計算機和計算機之間的信息交換.由於串列通信是在一根傳輸線上一位一位的傳送信息,所用的傳輸線少,並且可以藉助現成的電話網進行信息傳送,因此,特別適合於遠距離傳輸.對於那些與計算機相距不遠的人-機交換設備和串列存儲的外部設備如終端、印表機、邏輯分析儀、磁碟等,採用串列方式交換數據也很普遍.在實時控制和管理方面,採用多台微機處理機組成分級分布控制系統中,各 CPU 之間的通信一般都是串列方式.所以串列接口是微機套用系統常用的接口。許多外設和計算機按串列方式進行通信,這裡所說的串列方式,是指外設與接口電路之間的信息傳送方式,實際上,CPU 與接口之間仍按並行方式工作.

工作方式

由於 CPU 與接口之間按並行方式傳輸,接口與外設之間按串列方式傳輸,因此,在串列接口中,必須要有 " 接收移位暫存器 " (串→並)和 " 傳送移位暫存器 " (並→串). 在數據輸入過程中,數據 1 位 1 位地從外設進入接口的 " 接收移位暫存器 ",當 " 接收移位暫存器 " 中已接收完 1 個字元的各位後,數據就從 " 接收移位暫存器 " 進入 " 數據輸入暫存器 " . CPU 從 " 數據輸入暫存器 " 中讀取接收到的字元.(並行讀取,即 D7~D0 同時被讀至累加器中). " 接收移位暫存器 " 的移位速度由 " 接收時鐘 " 確定.

在數據輸出過程中,CPU 把要輸出的字元(並行地)送入 " 數據輸出暫存器 "," 數據輸出暫存器 " 的內容傳輸到 " 傳送移位暫存器 ",然後由 " 傳送移位暫存器 " 移位,把數據 1 位 1 位地送到外設. " 傳送移位暫存器 " 的移位速度由 " 傳送時鐘 " 確定.

接口中的 " 控制暫存器 " 用來容納 CPU 送給此接口的各種控制信息,這些控制信息決定接口的工作方式.

" 狀態暫存器 " 的各位稱為 " 狀態位 ",每一個狀態位都可以用來指示數據傳輸過程中的狀態或某種錯誤.例如,用狀態暫存器的 D5 位為 "1" 表示 " 數據輸出暫存器 " 空,用 D0 位表示 " 數據輸入暫存器滿 ",用 D2 位表示 " 奇偶檢驗錯 " 等.

能夠完成上述 " 串 <- -> 並 " 轉換功能的電路,通常稱為 " 通用異步收發器 " (UART :Universal Asynchronous Receiver and Transmitter),典型的晶片有:Intel 8250/8251,16550

接口標準

⑴實現數據格式化:因為來自CPU的是普通的並行數據,所以,接口電路應具有實現不同串列通信方式下的數據格式化的任務。在異步通信方式下,接口自動生成起止式的幀數據格式。在面向字元的同步方式下,接口要在待傳送的數據塊前加上同步字元。

⑵進行串-並轉換:串列傳送,數據是一位一位串列傳送的,而計算機處理數據是並行數據。所以當數據由計算機送至數據傳送器時,首先把串列數據轉換為並行數才能送入計算機處理。因此串並轉換是串列接口電路的重要任務。

⑶控制數據傳輸速率:串列通信接口電路應具有對數據傳輸速率——波特率進行選擇和控制的能力。

⑷進行錯誤檢測:在傳送時接口電路對傳送的字元數據自動生成奇偶校驗位或其他校驗碼。在接收時,接口電路檢查字元的奇偶校驗或其他校驗碼,確定是否發生傳送錯誤。

⑸進行TTL與EIA電平轉換:CPU和終端均採用TTL電平及正邏輯,它們與EIA採用的電平及負邏輯不兼容,需在接口電路中進行轉換。

⑹提供EIA-RS-232C接口標準所要求的信號線:遠距離通信採用MODEM時,需要9根信號線;近距離零MODEM方式,只需要3根信號線。這些信號線由接口電路提供,以便與MODEM或終端進行聯絡與控制。(理論性強)

電路組成

概述

為了完成上述串列接口的任務,串列通信接口電路一般由可程式的串列接口晶片、波特率發生器、EIA與TTL電平轉換器以及地址解碼電路組成。

簡介

其中,串列接口晶片,隨著大規模積體電路技術的發展,通用的同步(USRT)和異步(UART)接口晶片種類越來越多,如下表所示。它們的基本功能是類似的,都能實現上面提出的串列通信接口基本任務的大部分工作,且都是可程式的。採用這些晶片作為串列通信接口電路的核心晶片,會使電路結構比較簡單。

相關詞條

相關搜尋

熱門詞條

聯絡我們