嵌入式--UART協議

協議簡介

 串口通訊(Serial Communication),是指外設和計算機間,通過數據信號線、地線等,按位進行傳輸數據的一種通訊方式。
串口是一種接口標準,它規定了接口的電氣標準,沒有規定接口插件電纜以及使用的協議。
串口是異步通信,異步通信有兩個關鍵:、

  • 數據單元-幀:通信雙方約定好的數據格式;
  • 波特率:決定了‘幀’裏每一位的時間長度。

異步通信的特點:不要求收發雙方時鐘的嚴格一致,實現容易,設備開銷較小,但每個字符要附加2~3位用於起止位,各幀之間還有間隔,因此傳輸效率不高。

在這裏插入圖片描述
 一個字符一個字符地傳輸,每個字符一位一位地傳輸,並且傳輸一個字符時,總是以“起始位”開始,以“停止位”結束,字符之間沒有固定的時間間隔要求。
 每一個字符的前面都有一位起始位(低電平),字符本身由7位數據位組成,接着字符後面是一位校驗位(檢驗位可以是奇校驗、偶校驗或無校驗位),最後是一位或一位半或二位停止位,停止位後面是不定長的空閒位,停止位和空閒位都規定爲高電平。實際傳輸時每一位的信號寬度與波特率有關,波特率越高,寬度越小,在進行傳輸之前,雙方一定要使用同一個波特率設置。
在這裏插入圖片描述

通信方式

在這裏插入圖片描述在這裏插入圖片描述

1.起始位:先發出一個邏輯”0”的信號,表示傳輸字符的開始。
2.數據位:緊接着起始位之後。資料位的個數可以是4、5、6、7、8等,構成一個字符。通常採用ASCII碼。從最低位開始傳送,靠時鐘定位。
3.奇偶校驗位:資料位加上這一位後,使得“1”的位數應爲偶數(偶校驗)或奇數(奇校驗),以此來校驗資料傳送的正確性。
4.停止位:它是一個字符數據的結束標誌。可以是1位、1.5位、2位的高電平。
5.空閒位:處於邏輯“1”狀態,表示當前線路上沒有資料傳送。

電路連接

電平標準

傳輸速率

如果串口傳輸速率爲115200bps意味着每分鐘最多可傳送多少個ASCII碼字符?
條件:

  • 波特率:115200
  • 停止位:1
  • 起始位:1
  • 校驗位:0(無)

1、無校驗位
因爲沒有校驗位,所以除以 10,得到的是每秒字節數:

  • 波特率115200 = 115200(位/秒)/(10) = 11520Byte = 11520 (字節/秒)

再除以 1024,就是每秒 KB 數:

  • 波特率115200 = 11520Byte/1024= 11.25 (KB/秒)

2、有校驗位
如果有一位奇偶校驗位,就應該除以 11,得到的是每秒字節數。

  • 波特率115200 = 115200(位/秒)/(11) = 10472Byte = 10472 (字節/秒)

最後,再除以 1024,就是每秒 KB 數:

  • 波特率115200 = 10472Byte/1024 = 10.23 (KB/秒)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章