<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 嵌入式硬件通信接口協(xié)議-UART(一)協(xié)議基礎(chǔ)

          嵌入式硬件通信接口協(xié)議-UART(一)協(xié)議基礎(chǔ)

          作者: 時(shí)間:2018-12-19 來源:網(wǎng)絡(luò) 收藏

            一、 簡(jiǎn)介

          本文引用地址:http://www.ex-cimer.com/article/201812/395785.htm

            ,全稱UniversalAsynchrONous Receiver/Transmitter,譯為通用異步收發(fā)器。

            串口的出現(xiàn)是在1980年前后,數(shù)據(jù)傳輸率是115kbps~230kbps。串口出現(xiàn)的初期是為了實(shí)現(xiàn)連接計(jì)算機(jī)外設(shè)的目的,初期串口一般用來連接鼠標(biāo)和外置Modem以及老式攝像頭和寫字板等設(shè)備。串口也可以應(yīng)用于兩臺(tái)計(jì)算機(jī)(或設(shè)備)之間的互聯(lián)及數(shù)據(jù)傳輸。由于串口(COM)不支持熱插拔及傳輸速率較低,目前部分新主板和大部分便攜電腦已開始取消該接口。目前串口多用于工控和測(cè)量設(shè)備以及部分通信設(shè)備中。

            在幾乎所有的MCU中都會(huì)有接口。

            from 百度百科串行接口

            每當(dāng)口中提到“串口”,很容易讓人想到的名詞有、USART、COM口、TTL/CMOS、RS-232、RS-422、RS-485。其中:

            UART,“串口”時(shí)序協(xié)議的名稱,定義了各個(gè)信號(hào)時(shí)序協(xié)議;

            USART,相比UART增加了同步信號(hào),可實(shí)現(xiàn)ISO-7816智能卡接口;

            COM口,在PC等操作系統(tǒng)上,區(qū)別于USB、SATA接口的串行接口,定義了在操作系統(tǒng)中的規(guī)范;

            TTL/CMOS,硬件系統(tǒng)的信號(hào)電平;

            RS-232,在UART基礎(chǔ)上再定義了信號(hào)的電氣特性

            RS-422,在RS-232基礎(chǔ)上定義了差分信號(hào)傳輸?shù)碾姎馓匦?/p>

            RS-485,在RS-422基礎(chǔ)上定義了半雙工模式

            二、 信號(hào)線

            信號(hào)線的命名,都是基于當(dāng)前終端設(shè)備而定義的。

            UART常用的信號(hào)線有:

            RxD,當(dāng)前終端設(shè)備的接收管腳

            TxD,當(dāng)前終端設(shè)備的發(fā)送管腳

            GND,當(dāng)前終端設(shè)備的地

            如上所述,信號(hào)線的命名基于當(dāng)前終端設(shè)備而做的標(biāo)記,在手工接線時(shí),可以快速判斷連接的線序。

            一般的,設(shè)計(jì)者在設(shè)計(jì)PCB時(shí),對(duì)外連接做的一些預(yù)留接口,標(biāo)記接口管腳時(shí),都會(huì)添加絲印標(biāo)記,這時(shí)標(biāo)記的都是當(dāng)前終端設(shè)備的管腳信息。

            例如標(biāo)記著RxD的引腳,應(yīng)該與外部的UART接口TxD連接。

            


            三、 信號(hào)時(shí)序

            信號(hào)線空閑時(shí),處于高電平,當(dāng)有數(shù)據(jù)發(fā)送時(shí),信號(hào)線以1個(gè)bit時(shí)長(zhǎng)的低電平標(biāo)志開始通信,通信過程中,單個(gè)字節(jié)在信號(hào)線上的幀結(jié)構(gòu)如下圖:

            


            信號(hào)管腳傳輸每個(gè)數(shù)據(jù)時(shí),在管腳上呈現(xiàn)的是電氣信號(hào)為高低電平的變化,對(duì)應(yīng)數(shù)據(jù)每個(gè)bit的邏輯“1”和“0”。

            組成UART幀結(jié)構(gòu)時(shí),附帶的起始位、停止位,實(shí)現(xiàn)了對(duì)傳輸數(shù)據(jù)流每個(gè)字節(jié)的界定,該過程實(shí)現(xiàn)了起始式協(xié)議。同時(shí)在停止位前可選擇地插入校驗(yàn)位,實(shí)現(xiàn)了對(duì)數(shù)據(jù)幀正確性的校驗(yàn)。

            如下圖是常見的UART通信過程中使用的配置參數(shù)8-N-1對(duì)應(yīng)的時(shí)序:

            


            配置參數(shù)(8-N-1):8bit數(shù)據(jù)、無校驗(yàn)位、1bit停止位

            四、 接口配置項(xiàng)

            在啟用UART接口時(shí),需要通信雙方對(duì)接口進(jìn)行相同參數(shù)的配置,才能夠正確通信。而UART可配置的參數(shù)有:

            (一)波特率Baudrate:

            由于UART屬于異步通信,在通信過程中沒有同步時(shí)鐘CLK來提供給接收方,接收方也就無法同步地確定每個(gè)bit的寬度,也就無法對(duì)每個(gè)bit進(jìn)行正確的采樣。因此接收方必須依靠設(shè)置與發(fā)送方相同的波特率參數(shù),這樣接收方對(duì)信號(hào)管腳進(jìn)行采樣和解碼時(shí),才能正確判斷每個(gè)bit的值是“1”還是“0”,這也就是異步通信的特點(diǎn)。

            在各類MCU的UART配置中,常用的波特率值有:

            4800Bd、9600Bd、19200Bd、115200Bd,單位Bd。常見有如下代碼截圖:

            


            要想理解波特率,來的維基百科中查詢一番

            


            在維基百科的介紹中,可看到,波特率的值,直接以bit/s的單位取倒數(shù)后得到單位s/bit,同時(shí)在示波器端對(duì)UART發(fā)出的波形進(jìn)行抓取,可見每bit的寬度在誤差允許范圍內(nèi)基本就是波特率的倒數(shù)值。

            在百度百科的詞條《波特》介紹中,波特率是指:

            調(diào)制速率,指的是有效數(shù)據(jù)信號(hào)調(diào)制載波的速率,即單位時(shí)間內(nèi)載波調(diào)制狀態(tài)變化的次數(shù)。它是對(duì)符號(hào)傳輸速率的一種度量,1波特即指每秒傳輸1個(gè)符號(hào),而通過不同的調(diào)制方式,可以在一個(gè)碼元符號(hào)上負(fù)載多個(gè)bit位信息。 單位“波特”本身就已經(jīng)是代表每秒的調(diào)制數(shù),以“波特每秒”(Baud per second)為單位是一種常見的錯(cuò)誤。

            它代表的是信號(hào)的變化,而不是傳輸數(shù)據(jù)的多少。它表示每秒鐘內(nèi)通信線路狀態(tài)改變的次數(shù)。如果數(shù)據(jù)不壓縮,波特等于每秒鐘傳輸?shù)臄?shù)據(jù)位數(shù),如果數(shù)據(jù)進(jìn)行了壓縮。那么每秒鐘傳輸?shù)臄?shù)據(jù)位數(shù)通常大于調(diào)制速率,使得交換使用波特和比特/秒有時(shí)會(huì)產(chǎn)生錯(cuò)誤。

            但是在現(xiàn)代的實(shí)際使用中,多數(shù)情況下,配置了MCU的波特率后,對(duì)輸出信號(hào)進(jìn)行觀測(cè)發(fā)現(xiàn),此時(shí)波特率等于比特率。也正是因?yàn)榇藭r(shí)傳輸?shù)姆?hào)即8bit一個(gè)Byte的數(shù)據(jù)量,從而波特率等于比特率。


          上一頁(yè) 1 2 下一頁(yè)

          關(guān)鍵詞: 嵌入式 UART

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();