国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

我猜你還不會UART!不信你點進來看看

FPGA之家 ? 來源:小麥大叔 ? 作者:小麥大叔 ? 2021-06-01 11:09 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1 UART發展歷史1.1 早期的串行通訊設備早期的電報機器使用長度可變的脈沖信號進行數據傳輸,比如摩斯電碼;

970a7114-c238-11eb-9e57-12bb97331649.png

摩斯電碼

后來電傳打印機(teleprinters )普遍使用5、6、7或8個數據位來表示各種字符編碼,最終成為計算機外圍設備。電傳打字機( teletypewriter 簡稱 tty)成為小型計算機十分出色的通用I/O設備。

Teletypewritter

由于歷史的發展原因,早期在Unix終端是一個名字為ASR33的電傳打字機,而電傳打字機的英文單詞為Teletype(或Teletypewritter),縮寫為tty。因此,終端設備也被稱為tty設備。這就是TTY這個名稱的來源。

1.2 早期的芯片級UARTDEC(Digital Equipment Corporation)公司的Gordon Bell 為該公司的PDP系列計算機設計了第一個UART,不過體積龐大,UART的線路占據了整個電路板;

后來DEC將串行線路單元的設計濃縮為早期的UART單芯片,以方便自己使用。

DEC是美國一家計算機公司;

西部數據(Western Digital)公司在1971年左右將其開發為第一個廣泛可用的UART單芯片 WD1402A。這是中型集成電路的早期產品。

Western Digital是美國計算機硬盤驅動器制造商和數據存儲公司。

1.3 現代UART的發展2000年代開始,大多數IBM或者相關的計算機都刪除了其外部RS232的COM端口,將其替換為帶寬性能更加出色的USB端口;

對于仍然需要RS-232串行COM端口的用戶,現在通常使用外部USB轉UART轉換器,常見的有CH340,Silicon Labs 210x的驅動程序,現在很多處理器和芯片都內置了UART。

2 預備知識通用異步收發傳輸器(Universal Asynchronous Receiver/Transmitter,通常稱為UART),在UART通信中,兩個UART直接通信。

發送端的UART將來自控制設備(如CPU)的并行數據轉換為串行數據,以串行方式將其發送到接收端的UART,然后由接收端的UART將串行數據轉換為并行數據以用于接收設備的正常處理。

這里只需要兩條線RX/TX即可在兩個UART之間傳輸數據。具體如下圖所示;

97372e48-c238-11eb-9e57-12bb97331649.png

3 協議層UART傳輸的數據被封裝成數據包。每個數據包包含1個起始位,5~9個數據位(取決于UART的具體設置),一個可選的奇偶校驗位以及1個或2個停止位,具體如下圖所示;

97433314-c238-11eb-9e57-12bb97331649.png

協議格式

起始位UART數據傳輸線通常在不傳輸數據時保持在高電平。

為了開始數據傳輸,發送端UART在一個時鐘周期內將傳輸線從高電平拉低到低電平。

當接收端UART檢測到高電壓到低電壓轉換時,它開始以波特率的頻率讀取數據位中的每一位數據。

數據數據位包含正在傳輸的實際數據。如果使用奇偶校驗位,則可以是5位,最多8位。如果不使用奇偶校驗位,則數據幀的長度可以為9位。

在大多數情況下,數據首先以低有效位發送。

校驗位在串口通信中一種簡單的檢錯方式。

有四種檢錯方式:偶校驗、奇校驗、高校驗和低校驗。當然沒有校驗位也是可以的。

對于偶和奇校驗的情況,串口會設置校驗位(數據位后面的一位),用一個值確保傳輸的數據有偶個或者奇個邏輯高位。

舉個例子,如果數據是011,則滿足;

偶校驗,校驗位為0,保證邏輯高的位數是偶數個。

奇校驗,校驗位為1,這樣就有3個邏輯高位。

具體如下圖所示;

976882c2-c238-11eb-9e57-12bb97331649.png

奇校驗和偶校驗

高位和低位不是真正的檢查數據,而是強行將校驗位設置為邏輯高或者邏輯低。這樣使得接收設備能夠知道一個位的狀態,有機會判斷是否有噪聲干擾了通信或者是否傳輸和接收數據是否不同步。

停止位發送端UART將數據傳輸線從低電壓驅動到高電壓至少持續兩位數據的時間寬度來表示整個數據包的傳輸已經結束。

由于數據是在傳輸線上定時的,并且每一個設備有其自己的時鐘,很可能在通信中兩臺設備間出現了小小的不同步。因此停止位不僅僅是表示傳輸的結束,并且提供計算機校正時鐘同步的機會。適用于停止位的位數越多,不同時鐘同步的容錯性越好,但是數據傳輸率同時也越慢。

波特率波特率是串口數據的傳輸速度,即Bit/s,常見的波特率有:9600,19200,38400,57600,115200,當然還有很多波特率,不再一一給出;

假設目前UART的配置為,1個起始位,8個數據位,0個校驗位,1個停止位,那么9600的波特率,可以計算出每一位數據的時間寬度為:

那么傳輸一個字節(也就是10 bit 數據)需要的時間為 1.04 毫秒。

下面用串口抓取了UART的TX上的信號,其中一位數據的時間寬度為26微秒,具體如下圖所示;

983f9460-c238-11eb-9e57-12bb97331649.jpg

則可以簡單計算得到;

因此波特率大概為 38400;

下表是各個波特率下數據位時間寬度;

o4YBAGC1pSmAQyeXAAAnV8xR1vQ153.png

4 傳輸過程發送端UART從數據總線轉換并行數據:

984a9e5a-c238-11eb-9e57-12bb97331649.png

發送端UART將起始位,奇偶校驗位和停止位添加到數據包中:

98758890-c238-11eb-9e57-12bb97331649.png

整個數據包從發送端UART串行發送到接收端UART;接收端UART按照預先配置好的波特率對數據線進行采樣:

987f037a-c238-11eb-9e57-12bb97331649.png

接收端UART解析接收的數據,丟棄數據包中的起始位,奇偶校驗位和停止位:

988aeb72-c238-11eb-9e57-12bb97331649.png

接收UART將串行數據轉換回并行數據,并將其傳輸到接收端的數據總線:

9895a7c4-c238-11eb-9e57-12bb97331649.png

5 物理層UART、RS232、RS485在串口通信中,主要區別是電平的不同,其中UART通常使用TTL電平,下面介紹這幾個存在的差異;

TTL

TTL全名是晶體管-晶體管邏輯集成電路(Transistor-Transistor Logic

輸入高電平最小2V,輸出高電平最小2.4V,典型值3.4V;

輸入低電平最大0.8V,輸出低電平最大0.4V,典型值0.2V。

RS232

RS232 邏輯1電平(MARK)=-3V~-15V,邏輯0電平(SPACE)=+3~+15V;

同樣的,對于傳輸數據0x55,即二進制的01010101,RS232和TTL的區別如下;

989e2980-c238-11eb-9e57-12bb97331649.png

RS485

RS485是差分信號進行串行傳輸;

邏輯1以兩線間的電壓差為+(2~6)V表示;

邏輯“0”以兩線間的電壓差為-(2~6)V表示;

在工業通信中,使用RS485比較多,因為RS485是差分信號,可以抑制共模干擾,因此在惡劣的環境中擁有很好的抗干擾性,比較穩定;

6 優缺點沒有任何通信協議是完美的,以下是UART的一些利弊,可幫助您確定它們是否適合您的項目需求:

優點

通信只需要兩條數據線;

無需時鐘信號;

有奇偶校驗位,方便通信的差錯檢查;

只需要接收端和發送端設置好數據包結構,即可穩定通信;

缺點

數據幀最大支持9位數據;

不支持多主機或多從機的主從系統;

編輯:jq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 集成電路
    +關注

    關注

    5453

    文章

    12572

    瀏覽量

    374658
  • 電平
    +關注

    關注

    5

    文章

    372

    瀏覽量

    41630
  • 晶體管
    +關注

    關注

    78

    文章

    10396

    瀏覽量

    147829
  • uart
    +關注

    關注

    22

    文章

    1314

    瀏覽量

    106677
  • 數據包
    +關注

    關注

    0

    文章

    270

    瀏覽量

    25603

原文標題:我打賭!你還不會UART!不信,你看看~

文章出處:【微信號:zhuyandz,微信公眾號:FPGA之家】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    PCB板上是普通油墨,是低損耗油墨,能一樣嗎?

    低損耗油墨了。 為了對比出所謂的低損耗油墨的性能,高速先生只能用同樣的高速板材做兩次板來對比,一次是用普通的油墨,一次是用低損耗的油墨,兩塊板的材料,疊層和線寬都基本一樣去比較。做好之后,首先我們來看看
    發表于 01-23 11:40

    PCB板上是普通油墨,是低損耗油墨,能一樣嗎?

    其實真的不懂了:表層走高速線銅厚又厚,線寬也寬,還不用打過孔,正常來說應該比內層走線損耗小很多啊,為什么高速先生老說表層走線損耗大啊?
    的頭像 發表于 01-23 11:39 ?111次閱讀
    PCB板上<b class='flag-5'>你</b>是普通油墨,<b class='flag-5'>我</b>是低損耗油墨,能一樣嗎?

    學習單片機快速方法

    。因為從的學習過程來看,光看理論等于沒學。單片機必須是理論加實踐,而且要大量實踐,在實踐的過程中尋找理論。這才是最快捷的學習方法。這好比你學習漢語,不可能什么字都會寫,遇到不懂的,查查字典就可以了
    發表于 01-14 07:42

    網絡接口:數字世界的“門鈴”,了解多少?

    的翻譯官,它在計算機和網絡之間搭建橋梁,將計算機內部的數據“翻譯”成網絡能理解的語言,反之亦然。 常見的網絡接口類型 網絡接口種類繁多,讓我們來看看幾種最常見的: RJ-45接口:這是我們最常
    發表于 11-26 18:53

    【社區之星】歐小龍——保護的好奇心:它是所有創造力的源泉

    的時候會看重些什么呢?應屆生和有兩、三年左右工作經驗人有什么側重點呢? @ouxiaolong: 從的經歷來看,一個項目通常不是按部就班地完成的,需要靈光一閃的瞬間,抓住腦海里蹦出的小火花
    發表于 11-26 16:31

    termux調試python數字游戲

    ;) print(f\"已想到1-100之間的數字,有{max_attempts}次機會\\n\") while attempts < max_attempts
    發表于 08-29 17:15

    做連接器的這幾年,越來越不在乎“成就感”了

    是Ken,德索工廠的一名工程師。不寫雞湯,也不玩套路,只想讓知道: 在這條被忽視的連接器賽道上,還有人默默在做一件事:讓每一個連接,都穩一、實在一
    的頭像 發表于 08-07 16:38 ?574次閱讀
    做連接器的這幾年,<b class='flag-5'>我</b>越來越不在乎“成就感”了

    想搞定控制器連接?耐達訊Modbus轉Profinet這招知道嗎?

    這個難題的“通關秘籍”!它就像一個神奇的“轉換器魔法師”,能將Modbus設備的數據無縫轉換為Profinet控制器能識別的語言,實現兩者的完美連接。 咱來看看張工的經歷。他在一個智能工廠項目里
    發表于 07-25 15:41

    【選型】常見的遙控開關控制協議,看看哪種適合

    遙控開關,是一種通過無線信號非接觸式遠程控制電路通斷的裝置,今天我們一起聊一聊常見的無線信號類別,看看哪種更適合?1.紅外遙控紅外型遙控,本質上就是通過紅外線來傳遞開關信息,其實此類控制方式在我們
    的頭像 發表于 07-17 19:34 ?1715次閱讀
    【選型】常見的遙控開關控制協議,<b class='flag-5'>看看</b>哪種適合<b class='flag-5'>你</b>?

    放大的信號,點亮的世界——運算放大器大揭秘

    嘿,電子迷們!今天,我們要聊一個超級厲害的小玩意兒——運算放大器(Op-Amp)!聽起來是不是有點高大上?別擔心,保證讓輕松搞懂它,還能讓覺得它超酷!1什么是運算放大器想象一下,有一個超
    的頭像 發表于 06-13 20:06 ?843次閱讀
    放大<b class='flag-5'>你</b>的信號,點亮<b class='flag-5'>你</b>的世界——運算放大器大揭秘

    默默無聞的是否想創業

    心有余而力不足,故特發此信。 不管你是電子領域的大佬,還是初出學堂的小白,只要你在電子方面有足夠的自信,不甘默默無聞,三一線了此一生,請聯系微電同號15286651822;如果現在身價百萬
    發表于 06-08 12:21

    機械工程師的九個段位,現在處于哪一層?

    、材料、表面處理、工藝技術要求了。雖然這些信息都是自己標上去的,但具體實際能不能做還不太清楚。不管怎么說,總算能畫出像樣的圖紙了。 3、畢業新手 圖紙終于能拿去車間加工了,雖然經常鬧笑話:要么精度
    發表于 05-28 13:47

    為什么拿著《規范》,卻不會“設計”?

    硬件規范很多,但是很多朋友拿著《規范》仍然不會進行設計。 1、不知道先后關系,規范之間優先級搞不清。 規范是 “碎片化結論”,設計是 “系統化決策”規范常以 “條款” 形式存在(如 “信號線
    發表于 04-28 16:21

    開關電源環路穩定性分析——觀察法找零極點

    極點的形式:從上面的求解過程來看,是相當的復雜,而且這還是II型的補償,換成III型的補償,這個求解的過程會更復雜!不信看下面這個III型的補償器,求解出的傳遞函數這是人家整理好的表達式,可以直接
    發表于 04-19 13:31

    不知道的COB封裝測試方法,快來看看推拉力測試機的應用!

    ,COB封裝的可靠性直接決定了產品的使用壽命和性能表現。為了確保COB封裝的質量,推拉力測試成為不可或缺的環節。本文科準測控小編將詳細介紹如何利用Alpha W260推拉力測試機進行COB封裝的推拉力測試,以及測試過程中需要注意的關鍵。 什么是COB封裝工藝? COB封裝
    的頭像 發表于 04-03 10:42 ?1565次閱讀
    <b class='flag-5'>你</b>不知道的COB封裝測試方法,快<b class='flag-5'>來看看</b>推拉力測試機的應用!