串口通訊

按位進行傳輸數據的通訊方式

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

基本簡介


應用

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

工作方式

  按式傳輸,設按串式傳輸,,串,必須 " 收移位寄存器 " (串→並)和 " 發送移位寄存器 " (並→串). 在數據輸入過程中,數據 1 位 1 位地從外設進入介面的 " 接收移位寄存器 ",當 " 接收移位寄存器 " 中已接收完 1 個字元的各位后,數據就從 " 接收移位寄存器 " 進入 " 數據輸入寄存器 " . CPU 從 " 數據輸入寄存器 " 中讀取接收到的字元.(并行讀取,即 D7~D0 同時被讀至累加器中). " 接收移位寄存器 " 的移位速度由 " 接收時鐘 " 確定.
據輸程, 輸符()送 " 據輸寄存器 "," 據輸寄存器 " 容傳輸 " 送移寄存器 ", " 送移寄存器 " 移,據    送設. " 送移寄存器 " 移速 " 送鍾 " 確.
介面中的 " 控制寄存器 " 用來容納 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)介面晶元種類越來越多,如下表所示。它們的基本功能是類似的,都能實現上面提出的串列通信介面基本任務的大部分工作,且都是可編程的。採用這些晶元作為串列通信介面電路的核心晶元,會使電路結構比較簡單。