通用異步收發(fā)傳輸器是一種串行異步收發(fā)協(xié)議,應(yīng)用十分廣泛。UART工作原理是將數(shù)據(jù)的二進(jìn)制位一位一位的進(jìn)行傳輸。在UART通訊協(xié)議中信號(hào)線上的狀態(tài)位高電平代表’1’低電平代表’0’。當(dāng)然兩個(gè)設(shè)備使用UART串口通訊時(shí),必須先約定好傳輸速率和一些數(shù)據(jù)位。
第一節(jié) 硬件連接
硬件連接比較簡(jiǎn)單,僅需要3條線,注意連接時(shí)兩個(gè)設(shè)備UART電平,如電平范圍不一致請(qǐng)做電平轉(zhuǎn)換后再連接,如下圖所示:

TX:發(fā)送數(shù)據(jù)端,要接對(duì)面設(shè)備的RX
RX:接收數(shù)據(jù)端,要接對(duì)面設(shè)備的TX
GND:保證兩設(shè)備共地,有統(tǒng)一的參考平面
第二節(jié) 軟件通信協(xié)議
UART作為異步串口通信協(xié)議的一種,工作原理是將數(shù)據(jù)的字節(jié)一位接一位地傳輸。協(xié)議如下:

A.空閑位:
UART協(xié)議規(guī)定,當(dāng)總線處于空閑狀態(tài)時(shí)信號(hào)線的狀態(tài)為‘1’即高電平。
B.起始位:
開始進(jìn)行數(shù)據(jù)傳輸時(shí)發(fā)送方要先發(fā)出一個(gè)低電平’0’來表示傳輸字符的開始。因?yàn)榭臻e位一直是高電平所以開始第一次通訊時(shí)先發(fā)送一個(gè)明顯區(qū)別于空閑狀態(tài)的信號(hào)即為低電平。
C.數(shù)據(jù)位:
起始位之后就是要傳輸?shù)臄?shù)據(jù),數(shù)據(jù)可以是5,6,7,8,9位,構(gòu)成一個(gè)字符,一般都是8位。先發(fā)送最低位最后發(fā)送最高位。
D.奇偶校驗(yàn)位:
數(shù)據(jù)位傳送完成后,要進(jìn)行奇偶校驗(yàn),校驗(yàn)位其實(shí)是調(diào)整個(gè)數(shù),串口校驗(yàn)分幾種方式:
D.1.無校驗(yàn)(no parity)
D.2.奇校驗(yàn)(odd parity):如果數(shù)據(jù)位中’1’的數(shù)目是偶數(shù),則校驗(yàn)位為’1’,如果’1’的數(shù)目是奇數(shù),校驗(yàn)位為’0’。
D.3.偶校驗(yàn)(even parity):如果數(shù)據(jù)為中’1’的數(shù)目是偶數(shù),則校驗(yàn)位為’0’,如果為奇數(shù),校驗(yàn)位為’1’。
D.4.mark parity:校驗(yàn)位始終為1。
D.5.space parity:校驗(yàn)位始終為0。
E.停止位:
數(shù)據(jù)結(jié)束標(biāo)志,可以是1位,1.5位,2位的高電平。
F.波特率:
數(shù)據(jù)傳輸速率使用波特率來表示,單位bps(bits per second),常見的波特率9600bps,115200bps等等,其他標(biāo)準(zhǔn)的波特率是1200,2400,4800,19200,38400,57600。舉個(gè)例子,如果串口波特率設(shè)置為9600bps,那么傳輸一個(gè)比特需要的時(shí)間是1/9600≈104.2us。

以9600 8N1(9600波特率,8個(gè)數(shù)據(jù)位,沒有校驗(yàn)位,1位停止位)為例,這是目前最常用的串口配置,現(xiàn)在我們傳輸’O’'K’兩個(gè)ASCII值,'O’的ASCII為79,對(duì)應(yīng)的二進(jìn)制數(shù)據(jù)為01001111 ,'K’對(duì)應(yīng)的二進(jìn)制數(shù)據(jù)為01001011 ,傳輸?shù)母袷綌?shù)據(jù)如下圖所示:

串口波特率為9600,1bit傳輸時(shí)間大約為104us,傳送一個(gè)數(shù)據(jù)實(shí)際是10個(gè)比特(開始位,8個(gè)數(shù)據(jù)位,停止位),一個(gè)bytes傳輸速率實(shí)際為9600*8/10=7680bps。
-
嵌入式
+關(guān)注
關(guān)注
5199文章
20454瀏覽量
334237 -
通信
+關(guān)注
關(guān)注
18文章
6392瀏覽量
140067 -
串口
+關(guān)注
關(guān)注
15文章
1619瀏覽量
82863
發(fā)布評(píng)論請(qǐng)先 登錄
【「Altium Designer 25 電路設(shè)計(jì)精進(jìn)實(shí)踐」閱讀體驗(yàn)】+本書概覽與內(nèi)容特點(diǎn)介紹
系統(tǒng)嵌入式的學(xué)習(xí)路線
嵌入式應(yīng)掌握的幾種能力
CW32嵌入式軟件開發(fā)的必備知識(shí)
【「高速數(shù)字設(shè)計(jì)(基礎(chǔ)篇)」閱讀體驗(yàn)】第六章 去耦電容的容量需求分析
入行嵌入式應(yīng)該怎么準(zhǔn)備?
2025“芯原杯”全國(guó)嵌入式軟件開發(fā)大賽圓滿落幕
【「DeepSeek 核心技術(shù)揭秘」閱讀體驗(yàn)】--全書概覽
【好書推薦】RT-Thread第17本相關(guān)書籍!嵌入式系統(tǒng)原理與開發(fā)
飛凌嵌入式ElfBoard ELF 1板卡-uboot移植之IOMUX介紹
第六章 外部中斷
第六章 GPIO輸入——按鍵檢測(cè)
【藍(lán)橋杯嵌入式】第六章 串口通信理論知識(shí)
評(píng)論