最新免费av在线观看,亚洲综合一区成人在线,中文字幕精品无码一区二区三区,中文人妻av高清一区二区,中文字幕乱偷无码av先锋

嵌入式通信 UART 大揭秘:經(jīng)典面試題深度剖析

出處:網(wǎng)絡(luò)整理 發(fā)布于:2025-06-12 16:35:20

  在嵌入式通信領(lǐng)域,UART(通用異步收發(fā)器)是一個非常重要的概念,也是面試中經(jīng)常會涉及到的考點。下面我們將詳細探討關(guān)于 UART 的一系列常見面試問題。
  1. UART 和 USART 的區(qū)別
  UART 即通用異步收發(fā)器,只支持異步通信;而 USART 即通用同步異步收發(fā)器,既支持同步通信,又支持異步通信。兩者在硬件和數(shù)據(jù)傳輸方面存在明顯差異。
  硬件方面
  時鐘信號:UART 不需要外部時鐘信號,它依靠波特率發(fā)生器生成時鐘。而 USART 在同步模式下需要外部提供時鐘信號,用于同步數(shù)據(jù)傳輸。例如,在一些對數(shù)據(jù)同步要求較高的工業(yè)控制場景中,USART 的同步模式就能夠發(fā)揮重要作用。
  引腳需求:UART 通常只需數(shù)據(jù)線和地線等基本引腳。USART 在同步通信時,除了數(shù)據(jù)線,還需要時鐘線來傳輸時鐘信號。這使得 USART 的硬件連接相對復雜,但也為其實現(xiàn)同步通信提供了可能。
  數(shù)據(jù)傳輸方面
  數(shù)據(jù)幀結(jié)構(gòu):UART 數(shù)據(jù)幀一般由起始位、數(shù)據(jù)位、校驗位和停止位組成,結(jié)構(gòu)相對固定。USART 的數(shù)據(jù)幀結(jié)構(gòu)更靈活,數(shù)據(jù)位可配置為 5 - 9 位,停止位可選擇 1 - 2 位。這種靈活性使得 USART 能夠適應(yīng)更多不同類型的數(shù)據(jù)傳輸需求。
  傳輸速率:UART 數(shù)據(jù)傳輸速率相對較低,通常在 115200bps 以下。USART 由于支持同步通信,數(shù)據(jù)傳輸速率較高,通常可高達 2Mbps。在需要高速數(shù)據(jù)傳輸?shù)膽?yīng)用中,如高速數(shù)據(jù)采集系統(tǒng),USART 就具有明顯的優(yōu)勢。
  傳輸模式:UART 采用異步傳輸模式,發(fā)送方和接收方?jīng)]有公共時鐘,依靠約定的波特率來保持數(shù)據(jù)同步。USART 有同步和異步兩種傳輸模式,用戶可以根據(jù)具體的應(yīng)用場景選擇合適的傳輸模式。

  2. UART 要配置那些參數(shù)

  UART 的配置參數(shù)對于實現(xiàn)正確的數(shù)據(jù)傳輸至關(guān)重要,主要包括以下幾個方面:
  波特率:指單位時間內(nèi)傳輸?shù)亩M制位數(shù),常見有 9600bps、115200bps 等。發(fā)送方和接收方需設(shè)置相同波特率,確保數(shù)據(jù)位的采樣和發(fā)送頻率一致,實現(xiàn)正確的數(shù)據(jù)傳輸。例如,在一個簡單的單片機與電腦的串口通信中,雙方都設(shè)置為 9600bps,才能保證數(shù)據(jù)的準確傳輸。
  數(shù)據(jù)位:指每次傳輸數(shù)據(jù)的位數(shù),一般有 5 位、6 位、7 位、8 位或 9 位。它決定了能傳輸?shù)挠行?shù)據(jù)量,與被傳輸?shù)臄?shù)據(jù)類型和協(xié)議相關(guān),如 ASCII 碼常用 7 位或 8 位數(shù)據(jù)位。
  校驗位:用于數(shù)據(jù)傳輸校驗,有奇校驗、偶校驗、無校驗等方式。奇校驗保證數(shù)據(jù)位和校驗位中 “1” 的個數(shù)為奇數(shù),偶校驗則為偶數(shù)。接收方通過校驗判斷數(shù)據(jù)是否傳輸錯誤。在一些對數(shù)據(jù)準確性要求較高的通信中,如金融數(shù)據(jù)傳輸,通常會采用校驗位來保證數(shù)據(jù)的準確性。
  停止位:表示數(shù)據(jù)幀結(jié)束的標志位,位數(shù)可為 1 位、1.5 位或 2 位。使接收方有時間處理數(shù)據(jù)并準備接收下一幀數(shù)據(jù),不同通信設(shè)備可能需要不同的停止位設(shè)置。
  流控制:用于協(xié)調(diào)數(shù)據(jù)發(fā)送方和接收方的速率,有硬件流控制(RTS/CTS)和軟件流控制(XON/XOFF)。硬件流控制通過 RTS、CTS 信號控制數(shù)據(jù)傳輸;軟件流控制用特定字符(如 XON、XOFF)通知對方暫停或繼續(xù)發(fā)送數(shù)據(jù),防止數(shù)據(jù)丟失。在一些大數(shù)據(jù)量傳輸?shù)膱鼍爸校骺刂颇軌蛴行У乇苊鈹?shù)據(jù)丟失和傳輸錯誤。

  3. UART 通信時序

  UART 的通信時序包括多個階段,下面為你詳細介紹:
  空閑狀態(tài):在沒有數(shù)據(jù)傳輸時,UART 的數(shù)據(jù)線處于高電平狀態(tài),代表邏輯 “1”,此時總線處于空閑狀態(tài)。
  起始位:當發(fā)送方準備發(fā)送數(shù)據(jù)時,首先會將數(shù)據(jù)線拉低,產(chǎn)生一個邏輯 “0” 信號,持續(xù)時間為一個波特周期,以此來表示數(shù)據(jù)傳輸?shù)拈_始,接收方檢測到這個下降沿后,就知道有數(shù)據(jù)要傳輸了。
  數(shù)據(jù)位:起始位之后是要傳輸?shù)臄?shù)據(jù)位,數(shù)據(jù)位可以是 5 位、6 位、7 位、8 位或 9 位等,具體位數(shù)由通信雙方事先約定。數(shù)據(jù)位按照低位在前、高位在后的順序依次發(fā)送,每個數(shù)據(jù)位的持續(xù)時間也是一個波特周期。
  校驗位:校驗位緊跟在數(shù)據(jù)位之后,用于驗證數(shù)據(jù)傳輸?shù)恼_性,可選奇校驗、偶校驗、0 校驗、1 校驗或無校驗。若采用奇校驗,會保證數(shù)據(jù)位和校驗位中 “1” 的個數(shù)為奇數(shù);若為偶校驗,則保證 “1” 的個數(shù)為偶數(shù)。校驗位的持續(xù)時間同樣為一個波特周期。
  停止位:停止位位于數(shù)據(jù)幀的末尾,用于表示一幀數(shù)據(jù)的結(jié)束,通常為邏輯 “1”,可以是 1 位、1.5 位或 2 位,其持續(xù)時間相應(yīng)為一個、一個半或兩個波特周期。停止位的作用是給接收方提供一個數(shù)據(jù)接收完成的標志,同時也為雙方的時鐘同步提供一個短暫的調(diào)整時間。
  空閑位:在一幀數(shù)據(jù)傳輸完成后,總線會自動回到高電平狀態(tài),形成空閑位,等待下數(shù)據(jù)傳輸?shù)拈_始。
  下面以傳輸字節(jié)數(shù)據(jù) 0x55(二進制為 01010101)為例,假設(shè)采用 1 位起始位、8 位數(shù)據(jù)位、偶校驗、1 位停止位,波特率為 9600bps,其時序如下:首先是起始位的低電平,持續(xù)約 104.2μs(1/9600s);然后依次發(fā)送數(shù)據(jù)位的 10101010,每個數(shù)據(jù)位持續(xù) 104.2μs;接著是偶校驗位為 0,持續(xù) 104.2μs;是停止位的高電平,持續(xù) 104.2μs。
  4. UART 的 RX 引腳為什么要上拉
  UART 的 RX 引腳進行上拉操作主要有以下幾個原因:
  抗干擾:當 RX 引腳配置為浮空輸入模式時,輸入阻抗高,抗干擾能力弱,易受外部電磁干擾和系統(tǒng)內(nèi)部干擾,如靠近 TX 引腳或 RS485 的 DE 引腳時,易被干擾。上拉后,引腳默認處于高電平,干擾信號需將電平拉低到一定程度才會影響數(shù)據(jù)接收,能增強抗干擾能力。
  確定默認狀態(tài):在沒有數(shù)據(jù)傳輸時,將 RX 引腳設(shè)置為上拉,使其處于確定的高電平狀態(tài),代表邏輯 “1”。這樣接收方可以明確當前沒有數(shù)據(jù)輸入,避免因引腳狀態(tài)不確定而產(chǎn)生誤判,認為有數(shù)據(jù)或出現(xiàn)錯誤的數(shù)據(jù)起始信號等。
  匹配電平:在某些通信場景中,發(fā)送方輸出的高電平可能與接收方 RX 引腳的輸入高電平閾值存在差異。上拉電阻可以幫助調(diào)整 RX 引腳的電平,使其更好地匹配發(fā)送方的輸出電平,確保接收方能夠正確識別發(fā)送方發(fā)送的邏輯 “1” 信號。
  解決未連接問題:當 UART 接口未連接到發(fā)送設(shè)備時,若 RX 引腳無上拉,其狀態(tài)可能不確定,會導致 UART 控制器產(chǎn)生誤判,出現(xiàn)通信錯誤。上拉電阻能使未連接時 RX 引腳為高電平,避免此類問題。
  5. 串口如何接受不定長數(shù)據(jù)
  串口接收不定長數(shù)據(jù)可以采用以下幾種方法:
  基于特定結(jié)束標志:在發(fā)送數(shù)據(jù)時,在數(shù)據(jù)末尾添加一個特定的字符或字符序列作為結(jié)束標志。接收方在接收數(shù)據(jù)時,不斷讀取串口數(shù)據(jù),直到接收到這個結(jié)束標志,就認為數(shù)據(jù)接收完成。例如,假設(shè)結(jié)束標志為 “\r\n”,接收程序使用循環(huán)不斷讀取串口數(shù)據(jù),將數(shù)據(jù)存儲在緩沖區(qū)中,當檢測到 “\r\n” 時,說明一幀數(shù)據(jù)接收完畢,然后對緩沖區(qū)中的數(shù)據(jù)進行處理。
  基于定時器超時:啟動一個定時器,在接收數(shù)據(jù)的過程中,每接收到一個字節(jié)的數(shù)據(jù),就重置定時器。如果在一定時間內(nèi)沒有接收到新的數(shù)據(jù),定時器就會超時,此時認為數(shù)據(jù)接收完成。例如,設(shè)定定時器超時時間為 100 毫秒,當開始接收數(shù)據(jù)時啟動定時器,每接收到一個字節(jié),就將定時器重新設(shè)置為初始值。若 100 毫秒內(nèi)沒有新數(shù)據(jù)到來,定時器超時,觸發(fā)接收完成事件,對已接收的數(shù)據(jù)進行處理。
  基于協(xié)議規(guī)定的長度字段:在數(shù)據(jù)幀的開頭或其他固定位置設(shè)置一個字段,用于表示數(shù)據(jù)幀的長度。接收方首先讀取這個長度字段,然后根據(jù)長度字段的值來確定需要接收的數(shù)據(jù)字節(jié)數(shù),按照這個數(shù)量進行數(shù)據(jù)接收。例如,假設(shè)數(shù)據(jù)幀的前兩個字節(jié)表示數(shù)據(jù)長度,接收方先讀取這兩個字節(jié),解析出數(shù)據(jù)長度為 N,然后繼續(xù)從串口讀取 N 個字節(jié)的數(shù)據(jù),完成數(shù)據(jù)接收后進行處理。
  基于狀態(tài)機:根據(jù)串口數(shù)據(jù)的格式和通信協(xié)議,設(shè)計一個狀態(tài)機。狀態(tài)機根據(jù)接收到的數(shù)據(jù)和當前狀態(tài)進行狀態(tài)轉(zhuǎn)換,當狀態(tài)機達到特定的結(jié)束狀態(tài)時,認為數(shù)據(jù)接收完成。例如,初始狀態(tài)為等待起始標志,接收到起始標志后進入數(shù)據(jù)接收狀態(tài),在數(shù)據(jù)接收狀態(tài)中根據(jù)協(xié)議規(guī)則判斷是否接收完所有數(shù)據(jù),若接收完則進入結(jié)束狀態(tài),觸發(fā)數(shù)據(jù)處理操作。

版權(quán)與免責聲明

凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場網(wǎng),轉(zhuǎn)載請必須注明維庫電子市場網(wǎng),http://www.udpf.com.cn,違反者本網(wǎng)將追究相關(guān)法律責任。

本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點或證實其內(nèi)容的真實性,不承擔此類作品侵權(quán)行為的直接責任及連帶責任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉(zhuǎn)載時,必須保留本網(wǎng)注明的作品出處,并自負版權(quán)等法律責任。

如涉及作品內(nèi)容、版權(quán)等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。

2023全國大學生嵌入式芯片與系統(tǒng)設(shè)計競賽,海思賽道,工程機械遠程管理與安全檢測系統(tǒng)
廣告
OEM清單文件: OEM清單文件
*公司名:
*聯(lián)系人:
*手機號碼:
QQ:
有效期:

掃碼下載APP,
一鍵連接廣大的電子世界。

在線人工客服

買家服務(wù):
賣家服務(wù):
技術(shù)客服:

0571-85317607

網(wǎng)站技術(shù)支持

13606545031

客服在線時間周一至周五
9:00-17:30

關(guān)注官方微信號,
第一時間獲取資訊。

建議反饋

聯(lián)系人:

聯(lián)系方式:

按住滑塊,拖拽到最右邊
>>
感謝您向阿庫提出的寶貴意見,您的參與是維庫提升服務(wù)的動力!意見一經(jīng)采納,將有感恩紅包奉上哦!