UART協議簡介:
UART是通用異步收發傳輸器(Universal Asynchronous Receiver/Transmitter),通常稱作UART,是一種異步收發傳輸器,是設備間進行異步通信的關鍵模塊。UART負責處理數據總線和串行口之間的串/并、并/串轉換,并規定了幀格式;通信雙方只要采用相同的幀格式和波特率,就能在未共享時鐘信號的情況下,僅用兩根信號線(Rx 和Tx)就可以完成通信過程,因此也稱為異步串行通信。

UART工作原理:
UART是異步通信,這也就代表著沒有時鐘信號進行數據的采樣同步,因此UART發送側需要將開始和停止位添加到正在傳輸的數據包中,這些位定義了數據包的開始和結束,因此接收UART知道何時開始讀取這些位。當接收UART檢測到起始位時,它將開始以稱為波特率的特定頻率讀取輸入位。波特率是數據傳輸速度的度量,以每秒比特數(bps)表示。 兩個UART必須以大約相同的波特率工作。發送和接收UART之間的波特率只能相差約10%。還必須將兩個UART配置為發送和接收相同的數據包結構。
UART協議應用,通常物理層只需要兩根傳輸線,一根用于發送,一根用于接收,從而實現全雙工通訊。對于單向傳輸,也可以只使用一根傳輸線。此類應用最典型的實例就是單片機的RX/TX端口互相連接,從而實現基于TTL電平的UART通訊。對于不同的傳輸距離以及可靠性的要求,替換不同的物理層實現既可以得到我們常見的RS232、RS485等通訊總線。