-
串口通訊
鎖定
- 中文名
- 串口通訊
- 外文名
- Serial Communication
- 定 義
- 外設和計算機間通過數據信號線
- 特 點
- 通信方式使用的數據線少
串口通訊基本簡介
串口通訊應用
隨着計算機系統的應用和微機網絡的發展,通信功能越來越顯得重要.這裏所説的通信是指計算機與外界的信息交換.因此,通信既包括計算機與外部設備之間,也包括計算機和計算機之間的信息交換.由於串行通信是在一根傳輸線上一位一位的傳送信息,所用的傳輸線少,並且可以藉助現成的電話網進行信息傳送,因此,特別適合於遠距離傳輸.對於那些與計算機相距不遠的人-機交換設備和串行存儲的外部設備如終端、打印機、邏輯分析儀、磁盤等,採用串行方式交換數據也很普遍.在實時控制和管理方面,採用多台微機處理機組成分級分佈控制系統中,各 CPU 之間的通信一般都是串行方式.所以串行接口是微機應用系統常用的接口。許多外設和計算機按串行方式進行通信,這裏所説的串行方式,是指外設與接口電路之間的信息傳送方式,實際上,CPU 與接口之間仍按並行方式工作.
串口通訊工作方式
由於 CPU 與接口之間按並行方式傳輸,接口與外設之間按串行方式傳輸,因此,在串行接口中,必須要有 " 接收移位寄存器 " (串→並)和 " 發送移位寄存器 " (並→串).
在數據輸入過程中,數據 1 位 1 位地從外設進入接口的 " 接收移位寄存器 ",當 " 接收移位寄存器 " 中已接收完 1 個字符的各位後,數據就從 " 接收移位寄存器 " 進入 " 數據輸入寄存器 " . CPU 從 " 數據輸入寄存器 " 中讀取接收到的字符.(並行讀取,即 D7~D0 同時被讀至累加器中). " 接收移位寄存器 " 的移位速度由 " 接收時鐘 " 確定.
在數據輸出過程中,CPU 把要輸出的字符(並行地)送入 " 數據輸出寄存器 "," 數據輸出寄存器 " 的內容傳輸到 " 發送移位寄存器 ",然後由 " 發送移位寄存器 " 移位,把數據 1 位 1 位地送到外設. " 發送移位寄存器 " 的移位速度由 " 發送時鐘 " 確定.
" 狀態寄存器 " 的各位稱為 " 狀態位 ",每一個狀態位都可以用來指示數據傳輸過程中的狀態或某種錯誤.例如,用狀態寄存器的 D5 位為 "1" 表示 " 數據輸出寄存器 " 空,用 D0 位表示 " 數據輸入寄存器滿 ",用 D2 位表示 " 奇偶檢驗錯 " 等.
能夠完成上述 " 串 <- -> 並 " 轉換功能的電路,通常稱為 " 通用異步收發器 " (UART :Universal Asynchronous Receiver and Transmitter),典型的芯片有:Intel 8250/8251,16550
串口通訊接口標準
⑴實現數據格式化:因為來自CPU的是普通的並行數據,所以,接口電路應具有實現不同串行通信方式下的數據格式化的任務。在異步通信方式下,接口自動生成起止式的幀數據格式。在面向字符的同步方式下,接口要在待傳送的數據塊前加上同步字符。
⑵進行串-並轉換:串行傳送,數據是一位一位串行傳送的,而計算機處理數據是並行數據。所以當數據由計算機送至數據發送器時,首先把串行數據轉換為並行數才能送入計算機處理。因此串並轉換是串行接口電路的重要任務。
⑹提供EIA-RS-232C接口標準所要求的信號線:遠距離通信採用MODEM時,需要9根信號線;近距離零MODEM方式,只需要3根信號線。這些信號線由接口電路提供,以便與MODEM或終端進行聯絡與控制。(理論性強)