複製鏈接
請複製以下鏈接發送給好友

串口通訊

鎖定
串口通信(Serial Communication), 是指外設和計算機間,通過數據信號線 、地線、控制線等,按位進行傳輸數據的一種通訊方式。這種通信方式使用的數據線少,在遠距離通信中可以節約通信成本,但其傳輸速度比並行傳輸低。
中文名
串口通訊
外文名
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的是普通的並行數據,所以,接口電路應具有實現不同串行通信方式下的數據格式化的任務。在異步通信方式下,接口自動生成起止式的幀數據格式。在面向字符的同步方式下,接口要在待傳送的數據塊前加上同步字符。
⑵進行串-並轉換:串行傳送,數據是一位一位串行傳送的,而計算機處理數據是並行數據。所以當數據由計算機送至數據發送器時,首先把串行數據轉換為並行數才能送入計算機處理。因此串並轉換是串行接口電路的重要任務。
⑶控制數據傳輸速率:串行通信接口電路應具有對數據傳輸速率——波特率進行選擇和控制的能力。
⑷進行錯誤檢測:在發送時接口電路對傳送的字符數據自動生成奇偶校驗位或其他校驗碼。在接收時,接口電路檢查字符的奇偶校驗或其他校驗碼,確定是否發生傳送錯誤。
⑸進行TTLEIA電平轉換:CPU和終端均採用TTL電平正邏輯,它們與EIA採用的電平及負邏輯不兼容,需在接口電路中進行轉換。
⑹提供EIA-RS-232C接口標準所要求的信號線:遠距離通信採用MODEM時,需要9根信號線;近距離零MODEM方式,只需要3根信號線。這些信號線由接口電路提供,以便與MODEM或終端進行聯絡與控制。(理論性強)

串口通訊電路組成

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

串口通訊簡介

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