最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

一文看懂 UART 通信協(xié)議

2022-07-11 15:06 作者:信盈達  | 我要投稿

UART 通信簡介

UART即通用異步收發(fā)器,是一種通用的串行、異步通信總線,該總線有兩條數(shù)據(jù)線,可以實現(xiàn)全雙工的發(fā)送和接收,在嵌入式系統(tǒng)中常用于主機與輔助設(shè)備之間的通信。在UART通信中,兩個UART直接相互通信。發(fā)送UART將來自控制設(shè)備(如CPU)的并行數(shù)據(jù)轉(zhuǎn)換為串行形式,將其串行傳輸?shù)浇邮誙ART,然后UART將串行數(shù)據(jù)轉(zhuǎn)換回接收設(shè)備的并行數(shù)據(jù)。在兩個UART之間傳輸數(shù)據(jù)只需要兩根線。數(shù)據(jù)從發(fā)送 UART 的 Tx 引腳流向接收 UART 的 Rx 引腳:

UART異步傳輸數(shù)據(jù),這意味著沒有時鐘信號將發(fā)送UART的位輸出同步到接收UART的位采樣。發(fā)送UART不是時鐘信號,而是將開始位和停止位添加到正在傳輸?shù)臄?shù)據(jù)包中。這些位定義了數(shù)據(jù)包的開始和結(jié)束,因此接收UART知道何時開始讀取位。


當(dāng)接收UART檢測到起始位時,它開始以稱為波特率的特定頻率讀取傳入位。波特率是數(shù)據(jù)傳輸速度的度量,以每秒比特數(shù)(bps)表示。 兩個 UART 必須以大約相同的波特率運行。在位的時序偏離太遠之前,發(fā)送和接收 UART 之間的波特率只能相差約 10%。還必須將兩個 UART 配置為傳輸和接收相同的數(shù)據(jù)包結(jié)構(gòu)。

UART工作原理

將要傳輸數(shù)據(jù)的UART從數(shù)據(jù)總線接收數(shù)據(jù)。數(shù)據(jù)總線用于通過另一個設(shè)備(如CPU,內(nèi)存或微控制器)將數(shù)據(jù)發(fā)送到UART。數(shù)據(jù)以并行形式從數(shù)據(jù)總線傳輸?shù)絺鬏擴ART。在發(fā)送UART從數(shù)據(jù)總線獲取并行數(shù)據(jù)后,它會添加一個起始位、一個奇偶校驗位和一個停止位,從而創(chuàng)建數(shù)據(jù)包。接下來,數(shù)據(jù)包在Tx引腳上逐位串行輸出。接收UART在其Rx引腳上逐位讀取數(shù)據(jù)包。然后,接收的UART將數(shù)據(jù)轉(zhuǎn)換回并行形式,并刪除起始位、奇偶校驗位和停止位。最后,接收UART將數(shù)據(jù)包并行傳輸?shù)浇邮斩说臄?shù)據(jù)總線:

UART傳輸?shù)臄?shù)據(jù)被組織成數(shù)據(jù)包。每個數(shù)據(jù)包包含 1 個起始位、5 到 9 個數(shù)據(jù)位(取決于 UART)、一個可選的奇偶校驗位以及 1 個或 2 個停止位:

起始位

UART數(shù)據(jù)傳輸線在不傳輸數(shù)據(jù)也就是處于空閑時通常保持在高電平。為了開始數(shù)據(jù)傳輸,發(fā)送UART將傳輸線從高電平拉到低電平一個時鐘周期。當(dāng)接收UART檢測到從高到低的電壓轉(zhuǎn)換時,它開始以波特率的頻率讀取數(shù)據(jù)幀中的位。


數(shù)據(jù)幀

數(shù)據(jù)框包含正在傳輸?shù)膶嶋H數(shù)據(jù)。如果使用奇偶校驗位,則長度可以是 5 位到 8 位。如果未使用奇偶校驗位,則數(shù)據(jù)幀的長度可以為 5 位到 9 位。在大多數(shù)情況下,數(shù)據(jù)從數(shù)據(jù)幀中的最低位開始發(fā)送。


奇偶校驗位

奇偶校驗位的目的是檢查數(shù)據(jù)幀在發(fā)送到接收有沒有發(fā)生數(shù)據(jù)錯誤,奇偶校驗描述數(shù)字的偶數(shù)或奇數(shù)。奇偶校驗位是接收UART的一種方式,用于判斷在傳輸過程中是否有數(shù)據(jù)發(fā)生了變化。接收的UART讀取數(shù)據(jù)幀后,它會計算值為1的位數(shù),并檢查總數(shù)是偶數(shù)還是奇數(shù)。如果奇偶校驗位為 0(偶數(shù)奇偶校驗),則數(shù)據(jù)幀中的 1 位應(yīng)加起來為偶數(shù)。如果奇偶校驗位為 1(奇數(shù)奇偶校驗),則數(shù)據(jù)幀中的 1 位應(yīng)加起來為奇數(shù)。當(dāng)奇偶校驗位與數(shù)據(jù)匹配時,UART 知道傳輸沒有錯誤。但是,如果奇偶校驗位為 0,并且總數(shù)為奇數(shù);或者奇偶校驗位是1,而總數(shù)是偶數(shù),UART知道數(shù)據(jù)幀中的位已經(jīng)改變。


停止位

為了發(fā)出數(shù)據(jù)包結(jié)束的信號,發(fā)送UART將數(shù)據(jù)傳輸線從低電平轉(zhuǎn)換到高電平至少要持續(xù)兩個位的時間。


UART 傳輸?shù)牟襟E

1. 發(fā)送UART從數(shù)據(jù)總線并行接收數(shù)據(jù):

2. 發(fā)送 UART 將起始位、偶校驗位和停止位添加到數(shù)據(jù)幀中:

3. 整個數(shù)據(jù)包從發(fā)送 UART 以串行方式發(fā)送到接收 UART。接收UART以預(yù)配置的波特率對數(shù)據(jù)線進行采樣:

4. 接收 UART 從數(shù)據(jù)幀中丟棄起始位、奇偶校驗位和停止位:

5. 接收UART將串行數(shù)據(jù)轉(zhuǎn)換回并行,并將其傳輸?shù)浇邮斩说臄?shù)據(jù)總線:

UART的優(yōu)缺點

沒有一個通信協(xié)議是完美的,但UART非常擅長它所做的事情。以下是一些優(yōu)缺點:


優(yōu)點

僅使用兩根線

無需時鐘信號

具有奇偶校驗位以便檢查數(shù)據(jù)是否有誤

數(shù)據(jù)包的結(jié)構(gòu)可以更改,只需在兩端添加必要的位


缺點

數(shù)據(jù)幀的大小限制為最大9位

不支持多個主機或者從機

每個UART的波特率必須在彼此的10%以內(nèi)


版權(quán)聲明:本文為CSDN博主「Linest-5」的原創(chuàng)文章。版權(quán)歸原作者所有,如有侵權(quán),請聯(lián)系刪除。

原文鏈接:https://blog.csdn.net/m0_61298445/article/details/124123456

一文看懂 UART 通信協(xié)議的評論 (共 條)

分享到微博請遵守國家法律
宜兰县| 涡阳县| 深泽县| 陆丰市| 合肥市| 高陵县| 襄汾县| 黄浦区| 偏关县| 泰安市| 荔波县| 新平| 准格尔旗| 措勤县| 池州市| 平顶山市| 获嘉县| 正阳县| 阳西县| 莒南县| 象州县| 凤冈县| 永善县| 静海县| 肇源县| 常德市| 太保市| 平塘县| 侯马市| 凤台县| 买车| 犍为县| 福安市| 营口市| 保山市| 开鲁县| 三穗县| 万载县| 正镶白旗| 武宣县| 渭南市|