0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

確定UART通信的時(shí)鐘精度要求

星星科技指導(dǎo)員 ? 來(lái)源:TI ? 作者:TI ? 2023-03-30 11:18 ? 次閱讀

本應(yīng)用筆記討論了UART中常用串行異步通信協(xié)議的時(shí)序要求。本文介紹如何確定異步鏈路兩端UART時(shí)鐘源的容差。

背景

RS-232規(guī)范可以追溯到1962年,當(dāng)時(shí)它由電子工業(yè)聯(lián)盟(EIA)首次發(fā)布。該規(guī)范隨著時(shí)間的推移而變化,納入了更高的數(shù)據(jù)速率,并縮小了電信行業(yè)協(xié)會(huì) (TIA)、國(guó)際電信聯(lián)盟 (ITU) 和國(guó)際標(biāo)準(zhǔn)組織 (ISO) 要求之間的兼容性差距。RS-232規(guī)范的當(dāng)前版本是EIA/TIA-232-F,于1997年<>月發(fā)布。

RS-232受益于1970年代后期MSI IC的可用性,MSI IC具有以合理成本處理規(guī)范的復(fù)雜性。這些IC是通用異步接收發(fā)送器(UART)。許多大規(guī)模集成(LSI)IC(包括微控制器)現(xiàn)在都包含該功能。

通常情況下,UART的可用性促使業(yè)界以非RS-232的方式使用RS-232串行協(xié)議。常見示例包括RS-485傳輸、光隔離傳輸和使用單端物理層(即0至3.3V而不是±5V或±10V)的傳輸。本文介紹串行接口的一般時(shí)序方面,而不是握手或物理層的應(yīng)用細(xì)微差別。因此,應(yīng)用筆記適用于所有通用UART應(yīng)用。

UART定時(shí)

典型的UART幀如圖1所示。它包括一個(gè)起始位、8個(gè)數(shù)據(jù)位和一個(gè)停止位。在RS-232應(yīng)用中也可以使用其他變體。例如,數(shù)據(jù)包可以是 5、6 或 7 位長(zhǎng),可以有 2 個(gè) STOP 位,或者可以在數(shù)據(jù)包和 STOP 位之間插入一個(gè)奇偶校驗(yàn)位以進(jìn)行基本錯(cuò)誤檢測(cè)。圖1顯示了UART的發(fā)射數(shù)據(jù)(TXD)或接收數(shù)據(jù)(RXD)引腳上的信令。RS-232總線驅(qū)動(dòng)器反相和電平轉(zhuǎn)換,因此邏輯1是總線上的負(fù)電壓,邏輯0是正電壓。

pYYBAGQk_36AV1LsAAAN1UwaGjw195.gif

圖1.典型的 UART 數(shù)據(jù)框。

當(dāng)兩個(gè)UART通信時(shí),發(fā)射器和接收器都知道信令速度。接收方不知道何時(shí)發(fā)送數(shù)據(jù)包(沒有接收方時(shí)鐘);因此,該協(xié)議被稱為“異步”。接收器電路相應(yīng)地比發(fā)射器電路復(fù)雜。發(fā)射器只需以定義的比特率輸出一幀數(shù)據(jù)。相反,接收器必須識(shí)別幀的開始以同步自身,從而確定比特流的最佳數(shù)據(jù)采樣點(diǎn)。

圖2顯示了UART接收器將自身同步到接收幀的常用方法。接收UART使用的時(shí)鐘是數(shù)據(jù)速率的16倍。新幀由/START位開頭的下降沿識(shí)別。當(dāng)信號(hào)從高電平有效STOP位或總線空閑狀態(tài)發(fā)生變化時(shí),就會(huì)發(fā)生這種情況。接收UART在此下降沿上重置其計(jì)數(shù)器,預(yù)期中間START位在8個(gè)時(shí)鐘周期后出現(xiàn),并預(yù)計(jì)此后每個(gè)后續(xù)位的中點(diǎn)每16個(gè)時(shí)鐘周期出現(xiàn)一次。START位通常在位時(shí)間中間采樣,以檢查電平是否仍然很低,并確保檢測(cè)到的下降沿是起始位,而不是噪聲尖峰。另一個(gè)改進(jìn)是對(duì) START 位進(jìn)行三次采樣(時(shí)鐘計(jì)數(shù)為 7、8 和 9,共 16 次),而不是僅在中間位位置采樣(8 次中的時(shí)鐘計(jì)數(shù)為 16)。

poYBAGQk_3-AWCqhAAAUbUIu1eg617.gif

圖2.UART接收幀同步和數(shù)據(jù)采樣點(diǎn)。

定時(shí)精度

接收UART時(shí)鐘必須有多準(zhǔn)確才能正確接收數(shù)據(jù)?由于絕對(duì)時(shí)鐘速率對(duì)于準(zhǔn)確接收并不重要,因此更好的問題是詢問發(fā)射和接收UART時(shí)鐘的差異有多大。首先要理解的是,由于UART接收器將自身同步到每一幀的開頭,因此我們只關(guān)心一幀期間的準(zhǔn)確數(shù)據(jù)采樣。除了幀的 STOP 位之外,不會(huì)累積任何誤差,這簡(jiǎn)化了分析,因?yàn)槲覀冎恍枰谧顗那闆r下考慮一幀。

我們什么時(shí)候會(huì)因?yàn)榘l(fā)射-接收時(shí)鐘不匹配而出現(xiàn)時(shí)序錯(cuò)誤?我們的目標(biāo)是在中點(diǎn)對(duì)每個(gè)位進(jìn)行采樣(圖 2)。如果我們過(guò)早或過(guò)晚采樣半個(gè)位周期,我們將在位轉(zhuǎn)換處采樣并出現(xiàn)問題(圖 3)。

pYYBAGQk_4CARS2uAAANp0bPcJM356.gif

圖3.UART接收采樣范圍。

實(shí)際上,我們無(wú)法可靠地在接近位轉(zhuǎn)移點(diǎn)的地方采樣。造成這種情況的主要原因是傳輸上升和下降時(shí)間有限(通常很慢)。如果使用電容過(guò)大的電纜,這些時(shí)間會(huì)變得更慢。長(zhǎng)總線會(huì)產(chǎn)生高衰減,從而降低噪聲容限,并使在位電平建立時(shí)采樣變得更加重要。

很難定量評(píng)估比特周期內(nèi)最壞情況下可接受的采樣范圍。EIA/TIA-232-F確實(shí)規(guī)定了傳輸?shù)?%比特周期最大壓擺時(shí)間,但這對(duì)于192kbps的長(zhǎng)運(yùn)行很難實(shí)現(xiàn)。但出于本應(yīng)用筆記的目的,我們定義兩個(gè)數(shù)據(jù)路徑場(chǎng)景??紤]一個(gè)“令人討厭”的情況,它只能在中間50%的位時(shí)間內(nèi)可靠地采樣(圖4)。這可能相當(dāng)于長(zhǎng)時(shí)間的電容式RS-232運(yùn)行?!罢!眻?chǎng)景可以在中間75%的位時(shí)間內(nèi)采樣(圖5)。這相當(dāng)于設(shè)備機(jī)箱內(nèi)相對(duì)良性的總線(例如具有緩沖CMOS邏輯電平的米長(zhǎng)總線或RS-485差分對(duì))。

pYYBAGQlB4SAVOP2AAAfYv1C9Eo958.png

圖4.UART“討厭的鏈接”在50%的位時(shí)間內(nèi)可靠地采樣。

pYYBAGQk_4KAJQ_IAAAKnSVoToA607.gif

圖5.UART“正常鏈路”在75%的位時(shí)間內(nèi)可靠地采樣。

對(duì)于圖 4 和圖 5,我們可以確定,對(duì)于惡劣場(chǎng)景和正常場(chǎng)景,誤差預(yù)算分別是最佳位中心采樣點(diǎn)的 ±25% 和 ±37.5%。此錯(cuò)誤相當(dāng)于 4x UART 接收時(shí)鐘的 ±6 或 ±16 個(gè)周期。此預(yù)算中要包括的另一個(gè)錯(cuò)誤是檢測(cè)到START位下降沿時(shí)的同步錯(cuò)誤。UART很可能在檢測(cè)到START位后,從其16倍時(shí)鐘的下一個(gè)上升沿開始。由于 16x 時(shí)鐘和接收到的數(shù)據(jù)流是異步的,因此 START 位的下降沿可能發(fā)生在 16x 時(shí)鐘上升沿之后。或者,下降沿可能發(fā)生在時(shí)鐘上升沿之前,但沒有足夠的設(shè)置時(shí)間來(lái)使用它。這意味著UART在同步點(diǎn)內(nèi)置了±1位錯(cuò)誤。因此,我們的誤差預(yù)算從 ±4 或 ±6 個(gè)時(shí)鐘周期減少到 ±3 或 ±5 個(gè)周期。

我們假設(shè)短期時(shí)鐘誤差(本質(zhì)上是抖動(dòng))非常小,因此我們只考慮中期和長(zhǎng)期誤差。這些錯(cuò)誤指向發(fā)送 UART 中的不匹配,并接收在幀期間一致的 UART 時(shí)序。由于時(shí)序在START位的下降沿同步,因此最壞情況下的時(shí)序誤差將出現(xiàn)在最后一個(gè)數(shù)據(jù)采樣點(diǎn),即STOP位1。STOP 位的最佳采樣點(diǎn)是其位中心,計(jì)算公式為:

(每位 16 個(gè)內(nèi)部時(shí)鐘周期)×(1 個(gè)起始位 + 8 個(gè)數(shù)據(jù)位 + 16/9 個(gè)停止位)= (5) × (152.<>) = <> UART 接收時(shí)鐘,位于 START 位的原始下降沿之后。

現(xiàn)在我們可以以百分比形式計(jì)算允許的誤差。對(duì)于正常情況,時(shí)鐘失配誤差可能為 ±5/152 = ±3.3%。對(duì)于“討厭”的情況,它可以是 ±3/152 = ±2%。如前所述,盡管問題會(huì)在鏈路的接收端出現(xiàn),但時(shí)鐘不匹配實(shí)際上是發(fā)送和接收UART之間共享的容差問題。因此,假設(shè)兩個(gè)UART都嘗試以完全相同的比特率(波特)進(jìn)行通信,則允許的誤差可以在兩個(gè)UART之間以任何比例共享。

在同時(shí)設(shè)計(jì)鏈路兩端的系統(tǒng)中,利用允許的誤差預(yù)算很有幫助。這部分是因?yàn)閮啥说墓钍且阎?,部分是因?yàn)榭梢赃M(jìn)行權(quán)衡和節(jié)省成本。通常,鏈路兩端的時(shí)鐘源可以使用精度為±0.5%且在整個(gè)溫度和壽命范圍內(nèi)漂移為±0.5%的標(biāo)準(zhǔn)低成本陶瓷諧振器。這符合前面討論的2%的“討厭”情況。如果系統(tǒng)使用主控制器(通常是微控制器或PC)和標(biāo)準(zhǔn)100ppm晶體振蕩器作為UART時(shí)鐘源,則鏈路誤差可以減少大約一半。小心為內(nèi)部UART合成波特頻率的微控制器。根據(jù)微控制器時(shí)鐘的選擇,波特率可能不精確。如果可以確定錯(cuò)誤,則可以輕松地將其包含在鏈路錯(cuò)誤預(yù)算中。

對(duì) STOP 位進(jìn)行采樣可能看起來(lái)很奇怪,但事實(shí)確實(shí)如此。如果檢測(cè)到 STOP 位為低電平而不是預(yù)期的高電平,則 UART 通常會(huì)報(bào)告幀錯(cuò)誤。

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • RS-232
    +關(guān)注

    關(guān)注

    0

    文章

    392

    瀏覽量

    49981
  • uart
    +關(guān)注

    關(guān)注

    22

    文章

    1243

    瀏覽量

    101625
  • 發(fā)送器
    +關(guān)注

    關(guān)注

    1

    文章

    259

    瀏覽量

    26873
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    uart通信的詳細(xì)講解 通過(guò)分析波形透徹理解UART通信

    UART是一種異步全雙工串行通信協(xié)議,由 Tx 和 Rx 兩根數(shù)據(jù)線組成,因?yàn)闆]有參考時(shí)鐘信號(hào),所以通信的雙方必須約定串口波特率、數(shù)據(jù)位寬、奇偶校驗(yàn)位、停止位等配置參數(shù),從而按照相同的
    發(fā)表于 08-07 09:51 ?8002次閱讀
    <b class='flag-5'>uart</b><b class='flag-5'>通信</b>的詳細(xì)講解 通過(guò)分析波形透徹理解<b class='flag-5'>UART</b><b class='flag-5'>通信</b>

    uart通信的詳細(xì)講解

    UART(UniversalAsynchronousReceiver/Transmitter,通用異步收發(fā)器)是一種常用的串行通信協(xié)議,廣泛應(yīng)用于單片機(jī)或各種嵌入式設(shè)備之間的通信。本文將詳細(xì)介紹
    的頭像 發(fā)表于 09-22 08:22 ?2938次閱讀
    <b class='flag-5'>uart</b><b class='flag-5'>通信</b>的詳細(xì)講解

    請(qǐng)問ADS131M08外接時(shí)鐘的話對(duì)時(shí)鐘精度和抖動(dòng)都什么要求

    請(qǐng)問ADS131M08外接時(shí)鐘的話對(duì)時(shí)鐘精度和抖動(dòng)都什么要求
    發(fā)表于 11-21 07:03

    基于DS3231的高精度時(shí)鐘接口設(shè)計(jì)

    和晶體的實(shí)時(shí)時(shí)鐘芯片,因此該方案對(duì)那些對(duì)計(jì)時(shí)精度要求極高的應(yīng)用具有一定的借鑒意義。【關(guān)鍵詞】:DS;;IC總線;;實(shí)時(shí)時(shí)鐘;;接口;;通信
    發(fā)表于 04-24 09:01

    時(shí)鐘精度要求確定的異步通信-Determining Cloc

    asynchronous communications protocol implemented in UARTs, and shows how to determine the tolerance for the UART clock source at both ends of an
    發(fā)表于 04-24 16:19 ?1534次閱讀
    <b class='flag-5'>時(shí)鐘</b><b class='flag-5'>精度</b><b class='flag-5'>要求</b><b class='flag-5'>確定</b>的異步<b class='flag-5'>通信</b>-Determining Cloc

    niosii的UART串口通信

    niosii的UART串口通信niosii的UART串口通信。
    發(fā)表于 04-06 17:03 ?1次下載

    uart串口通信介紹

     UART是一種通用串行數(shù)據(jù)總線,用于異步通信。該總線雙向通信,可以實(shí)現(xiàn)全雙工傳輸和接收。在嵌入式設(shè)計(jì)中,UART用來(lái)主機(jī)與輔助設(shè)備通信,如
    發(fā)表于 11-20 15:56 ?2.7w次閱讀
    <b class='flag-5'>uart</b>串口<b class='flag-5'>通信</b>介紹

    UART通信轉(zhuǎn)CAN通信配置軟件

    本文檔的主要內(nèi)容詳細(xì)介紹的是UART通信轉(zhuǎn)CAN通信配置軟件。
    發(fā)表于 03-01 08:00 ?38次下載
    <b class='flag-5'>UART</b><b class='flag-5'>通信</b>轉(zhuǎn)CAN<b class='flag-5'>通信</b>配置軟件

    UART串口通信

    一、通信特點(diǎn)異步、串行、全雙工一般描述某種通信的特點(diǎn)為: 同步/異步 , 串行/并行 , 半雙工/全雙工同步:要求一個(gè)芯片控制另一芯片的時(shí)序,一般,兩者之間至少采用一個(gè)總線連接以控制時(shí)鐘
    發(fā)表于 12-03 12:36 ?4次下載
    <b class='flag-5'>UART</b>串口<b class='flag-5'>通信</b>

    STM32-UART通信

    數(shù)據(jù)交換。UART與USART:UART:通用異步收發(fā)器USART:通用同步異步收發(fā)器在單片機(jī)中,名稱為UART的接口一般只能用于異步串行通訊,而名稱為USART的接口可以用于同步串行通訊和異步串行通訊??梢岳斫?/div>
    發(fā)表于 12-20 19:21 ?18次下載
    STM32-<b class='flag-5'>UART</b><b class='flag-5'>通信</b>

    UART串行通信模式

    UART串行通信模式基礎(chǔ),收發(fā),中斷
    發(fā)表于 01-14 10:17 ?7次下載
    <b class='flag-5'>UART</b>串行<b class='flag-5'>通信</b>模式

    關(guān)于UART/CAN/PLL時(shí)鐘計(jì)算波特率的方法

    SWM系列關(guān)于UART/CAN/PLL等時(shí)鐘相關(guān)模塊,計(jì)算波特率的方法。
    的頭像 發(fā)表于 03-18 16:52 ?8028次閱讀

    UART 通信協(xié)議的時(shí)鐘精度要求

    發(fā)表于 11-18 23:45 ?0次下載
    <b class='flag-5'>UART</b> <b class='flag-5'>通信</b>協(xié)議的<b class='flag-5'>時(shí)鐘</b><b class='flag-5'>精度</b><b class='flag-5'>要求</b>

    基于GNSS的時(shí)鐘提供+/- 100ns的主參考時(shí)鐘定時(shí)精度

    上一代無(wú)線網(wǎng)絡(luò)嚴(yán)重依賴全球?qū)Ш叫l(wèi)星系統(tǒng)(GNSS)為無(wú)線接入網(wǎng)(RAN)中的所有源時(shí)鐘提供可追溯的時(shí)間參考。精心設(shè)計(jì)的基于 GNSS 的時(shí)鐘可以輕松提供 +/- 100 ns 的主參考時(shí)鐘 (PRTC) 定時(shí)
    的頭像 發(fā)表于 05-06 10:16 ?1138次閱讀

    網(wǎng)絡(luò)時(shí)鐘同步有哪些要求?如何在5G網(wǎng)絡(luò)中測(cè)試時(shí)間與時(shí)鐘同步?

    實(shí)現(xiàn)數(shù)據(jù)的正確傳輸和協(xié)調(diào)。 網(wǎng)絡(luò)時(shí)鐘同步的要求主要包括以下幾個(gè)方面: 1. 精度要求:根據(jù)不同的應(yīng)用場(chǎng)景和需求,對(duì)網(wǎng)絡(luò)時(shí)鐘同步的
    的頭像 發(fā)表于 01-16 16:03 ?1478次閱讀