串行通訊簡單認識
串行通訊的基本概念:與外界的資訊交換稱為通訊。基本的通訊方式有并行通訊和串行通訊兩種。
一條資訊的各位資料被同時傳送的通訊方式稱為并行通訊。并行通訊的特點是:各資料位同時傳送,傳送速度快、效率高,但有多少資料位就需多少根資料線,是以傳送成本高,且隻适用于近距離(相距數米)的通訊。
一條資訊的各位資料被逐位按順序傳送的通訊方式稱為串行通訊。串行通訊的特點是:資料位傳送,傳按位順序進行,最少隻需一根傳輸線即可完成,成本低但送速度慢。串行通訊的距離可以從幾米到幾千米。
根據資訊的傳送方向,串行通訊可以進一步分為單工、半雙工和全雙工三種。資訊隻能單向傳送為單工;資訊能雙向傳送但不能同時雙向傳送稱為半雙工;資訊能夠同時雙向傳送則稱為全雙工。
串行通訊又分為異步通訊和同步通訊兩種方式。在單片機中,主要使用異步通訊方式。
MCS_51單片機有一個全雙工串行口。全雙工的串行通訊隻需要一根輸出線和一根輸入線。資料的輸出又稱發送資料(TXD),資料的輸入又稱接收資料(RXD)。串行通訊中主要有兩個技術問題,一個是資料傳送、另一個是資料轉換。資料傳送主要解決傳送中的标準、格式及工作方式等問題。資料轉換是指資料的串并行轉換。具體說,在發送端,要把并行資料轉換為串行資料;而在接收端,卻要把接收到的串行資料轉換為并行資料。
單工、半雙工和全雙工的定義
如果在通信過程的任意時刻,資訊隻能由一方A傳到另一方B,則稱為單工。
如果在任意時刻,資訊既可由A傳到B,又能由B傳A,但隻能由一個方向上的傳輸存在,稱為半雙工傳輸。
如果在任意時刻,線路上存在A到B和B到A的雙向信号傳輸,則稱為全雙工。
電話線就是二線全雙工信道。 由于采用了回波抵消技術,雙向的傳輸信号不緻混淆不清。雙工信道有時也将收、發信道分開,采用分離的線路或頻帶傳輸相反方向的信号,如回線傳輸。
--------> <--------> -------->
A---------B A----------B A---------B
<--------
單工 半雙工 全雙工
< 單工 半雙工 全雙工
序列槽通訊—全雙工和半雙工方式
在串行通信中,資料通常是在兩個站(如終端和微機)之間進行傳送,按照資料流的方向可分成三種基本的傳送方式:全雙工、半雙工、和單工。但單工目前已很少采用,下面僅介紹前兩種方式。
1、全雙工方式(full duplex)
當資料的發送和接收分流,分别由兩根不同的傳輸線傳送時,通信雙方都能在同一時刻進行發送和接收操作,這樣的傳送方式就是全雙工制,如圖1所示。在全雙工方式下,通信系統的每一端都設定了發送器和接收器,是以,能控制資料同時在兩個方向上傳送。全雙工方式無需進行方向的切換,是以,沒有切換操作所産生的時間延遲,這對那些不能有時間延誤的互動式應用(例如遠端監測和控制系統)十分有利。這種方式要求通訊雙方均有發送器和接收器,同時,需要2根資料線傳送資料信号。(可能還需要控制線和狀态線,以及地線)。
圖1
比如,計算機主機用串行接口連接配接顯示終端,而顯示終端帶有鍵盤。這樣,一方面鍵盤上輸入的字元送到主機記憶體;另一方面,主機記憶體的資訊可以送到螢幕顯示。通常,往鍵盤上打入1個字元以後,先不顯示,計算機主機收到字元後,立即回送到終端,然後終端再把這個字元顯示出來。這樣,前一個字元的回送過程和後一個字元的輸入過程是同時進行的,即工作于全雙工方式。
2、半雙式方式(half duplex)
若使用同一根傳輸線既作接收又作發送,雖然資料可以在兩個方向上傳送,但通信雙方不能同時收發資料,這樣的傳送方式就是半雙工制,如圖2所示。采用半雙工方式時,通信系統每一端的發送器和接收器,通過收/發開關轉接到通信線上,進行方向的切換,是以,會産生時間延遲。收/發開關實際上是由軟體控制的電子開關。
圖2
當計算機主機用串行接口連接配接顯示終端時,在半雙工方式中,輸入過程和輸出過程使用同一通路。有些計算機和顯示終端之間采用半雙工方式工作,這時,從鍵盤打入的字元在發送到主機的同時就被送到終端上顯示出來,而不是用回送的辦法,是以避免了接收過程和發送過程同時進行的情況。
目前多數終端和串行接口都為半雙工方式提供了換向能力,也為全雙工方式提供了兩條獨立的引腳。在實際使用時,一般并不需要通信雙方同時既發送又接收,像列印機這類的單向傳送裝置,半雙工甚至單工就能勝任,也無需倒向。