串行通信及其接口技術---8251A

串行通信和串行接口

微機與I/O設備的接口按照數據傳輸方式的不同可分爲:並行接口和串行接口兩種。
在這裏插入圖片描述
串行通信:將數據分解成二進制位用一條信號線,一位一位順序傳輸的方式。在傳輸過程中,每一位數據佔據一個固定的時間長度。

串行總線通信過程的顯著特點是:通信線路少,佈線簡便易行,施工方便,結構靈活,系統間協商協議,自由度及靈活度較高。由於數據線少,抗干擾能力強,所有適用於遠程,費用低,適用於長距離,中低速通信。
優點:節省傳輸線,這是顯而易見的。
缺點:數據傳送效率低。與並行通信比,這也這是顯而易見的。

全雙工:雙根傳輸線,數據的發送和接收採用不同的通道,能夠同時發送和接收
半雙工:單根傳輸線,數據的發送和接收採用同一的通道,不能同時發送和接收
單工:單根傳輸線只能在一個方向傳輸數據,只用作發送或只用作接收

同步通信:

一種連續串行傳送數據的通信方式,一次通信只傳送一幀信息。收發雙方採用同一個時鐘信號來定時
它們均由同步字符、數據字符和校驗字符(CRC)組成。其中同步字符位於幀開頭,用於確認數據字符的開始。數據字符在同步字符之後,個數沒有限制,由所需傳輸的數據塊長度來決定;校驗字符有1到2個,用於接收端對接收到的字符序列進行正確性的校驗。
同步通信的缺點:是要求發送時鐘和接收時鐘保持嚴格的同步。
多個字符組成一個數據塊(或稱信息幀、信息組),在每一個數據塊前附加一個或兩個同步字符或標識符,最後以校驗字符結束在傳送過程中發送端和接收端使用同一時鐘信號進行控制使每一位數據均保持位同步。同步通信一個信息幀含有多個或上千字符。

異步通信:在異步通信中有兩個比較重要的指標:字符幀格式和波特率。收發雙方不用統一的時鐘來定時

接收端檢測到傳輸線上發送過來的低電平邏輯"0"(即字符幀起始位)時,確定發送端已開始發送數據,每當接收端收到字符幀中的停止位時,就知道一幀字符已經發送完畢。

每個字符一位一位地傳輸,傳輸一個字符時,以起始位開始,然後傳輸字符本身各位,接着傳輸校驗位,最後以停止位結束該字符的傳輸。
一次傳輸的起始位、字符各位、校驗位、停止位構成一組完整的信息,稱爲異步通信的一個信息幀(Frame),只含一個字符。
幀與幀之間可有任意個空閒位。爲了保證異步通信的正確,必須在收發雙方通信前約定字符格式、傳送速率、時鐘和校驗方式等。

傳輸速率

在串行通訊中,用波特率來描述數據的傳輸速率。即每秒鐘傳送的二進制位數,簡寫爲bps
串行通信無論收發都必須有時鐘脈衝信號對傳送的數據進行定位和同步控制。接收時鐘/發送時鐘是波特率的倍數——波特率因子
時鐘頻率=波特率因子*波特率

串行接口

串行接口部件4個主要寄存器:
控制寄存器
狀態寄存器
數據輸入寄存器
數據輸出寄存器
串、並行數據轉換:
輸入時,串行輸入並行輸出移位寄存器將接收的1個字符移位得到並行數據,並將之送到數據輸入寄存器
輸出時,數據寄存器將接收的並行數據傳輸給移位寄存器,然後將其轉換成串行數據
在這裏插入圖片描述

可編程串行通信接口8251A

8251A的基本性能

  1. 通過編程,8251A可以工作在同步方式,波特率0~ 64K,也可以工作在異步方式,波特率0~19.2K;
  2. 同步方式下可以用5~8位來表示字符,允許增加1位奇偶校驗位,能自動檢測同步字符,實現收發同步;
  3. 異步方式下用5~8位來表示字符,1位可選的奇偶校驗位,1位啓動位,根據需要可設置1、1.5或2位停止位;
  4. 全雙工、雙緩衝的發送器和接收器;
  5. 具有奇偶、溢出和幀錯誤檢測功能;
  6. 輸入輸出電路爲TTL電平。
    在這裏插入圖片描述

8251A的發送和接收

  • 異步接收方式:將RXD線上的低電平作爲起始位,並開始計數。當計數到半位的傳輸時間,再次檢測RXD,若仍未低電平,則確認收到有效起始位
  • 異步發送方式:當控制寄存器中發送允許位TXEN位爲1且CTS#有效,則開始發送
  • 同步接收方式:8251A先搜索同步字符,將RXD線上的數據送入移位寄存器,然後將得到的字符與同步字符寄存器內容相比較。若相等,則SYNDET輸出高電平表示同步字符已經找到。
  • 同步發送方式:當控制寄存器中TXEN位爲1且CTS#有效,則開始發送。先傳送同步字符,後傳送數據塊。

異步接收方式

(1)檢測起始位
在這裏插入圖片描述
設數據接收時鐘頻率是數據傳輸頻率的16倍
(2)8251A進行常規採樣並進行字符裝配
在這裏插入圖片描述每隔一字符(設16個脈衝)傳輸時間,對RxD進行一次採樣,數據送移位寄存器移位,並進行奇偶校驗和去掉停止位,得到並行數據。
(3)通知CPU接收數據
並行數據經過內部數據總線送接收數據緩衝器,並置RxRDY有效,通知CPU已收到一個數據,可以取用。

異步發送方式

(1)程序置TxEN(允許發送)有效
檢測到外設送來的CTS(請求發送信號的響應信號)有效,開始發送。
(2)8251A由TxD線把串行數據送出。
8251A從CPU接收到一個數據,移位形成串行數據,再加上起始位、奇偶校驗位以及停止位,由TxD把數據送出。
注:數據及起始位、校驗位、停止位總是在發送時鐘TxC的下降沿從8251A發出,數據傳輸的波特率爲發送時鐘頻率的1、1/16或者1/64,具體決定於編程時給出的波特率因子。

同步接收方式

(1)搜索同步字符

內同步:

單同步字符
8251檢測RxD線,當RxD線出現一數據位時,接收送移位寄存器移位,並與同步字符寄存器的內容比較,如不等,繼續接收,比較。相等時,8251A的SYNDET引腳爲高電平,表示同步已經實現。
雙同步字符
檢測到第一個同步字符後,再繼續檢測此後輸入的移位寄存器的內容是否與第二個同步字符寄存器的內容相同,不同重新比較第一個同步字符;相同,則認爲同步已經實現。
外同步:通過在同步輸入端SYNDET加一高電位實現同步。當SYNDET端出現一個高電平,並且維持一時鐘接收週期,8251A認爲已經完成同步。
(2)數據的同步傳輸
接收器利用時鐘信號對RxD採樣,把收到的數據送移位寄存器。當收到的數據位達到規定的一個字符位數時,將移位寄存器的內容送輸入緩衝寄存器,且發出RxRDY信號,表示收到一數據。

同步發送方式

(1)程序置TxEN(允許發送)有效
檢測到外設送來的CTS(請求發送信號的響應信號)有效,開始發送。
(2)發送同步字符
根據編程要求,發送器先發送一個或兩個同步字符。
(3)發送數據塊
發送數據塊時,發送器根據要求對數據塊中的數據加上奇偶校驗位或不加。

8251A的外部信號

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章