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

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

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

通俗易懂的UART幀格式,單片機(jī)玩家都知道的

電子設(shè)計(jì) ? 來(lái)源:電子設(shè)計(jì) ? 作者:電子設(shè)計(jì) ? 2020-10-30 10:24 ? 次閱讀

今天的主角是 UART,我們通常說(shuō)的串口,UART 包含 TTL 電平和 RS-232 電平兩種,嵌入式系統(tǒng)里面,單片機(jī)的串口一般都是 TTL 電平。

今天的內(nèi)容關(guān)于 UART 的幀格式,比較簡(jiǎn)單,玩過(guò)單片機(jī)的小伙伴應(yīng)該都知道。

UART 的英文全稱(chēng)是:Universal Asynchronous Receiver/Transmitter,意為通用異步收發(fā)傳輸器。

UART 因?yàn)橛袃筛€(xiàn)數(shù)據(jù)線(xiàn) TX 和 RX,可以以全雙工的形式進(jìn)行發(fā)送和接收數(shù)據(jù),同一時(shí)刻,兩條鏈路的發(fā)送器和接收器可以同時(shí)傳輸數(shù)據(jù)。

區(qū)別于全雙工的,還有另一種,是半雙工,因?yàn)橹挥幸桓鶖?shù)據(jù)線(xiàn),所以數(shù)據(jù)傳輸是這樣。

或者是下面這樣,同一時(shí)刻,只有一條鏈路在傳輸數(shù)據(jù)。

除了雙工形式,還有一種是半工,只有發(fā)送器到接收器這一個(gè)鏈路。

說(shuō)完了 UART 的工作模式,下面進(jìn)入主題——UART 幀格式,也可以稱(chēng)之為 UART 協(xié)議,單片機(jī)與 PC 之間的通信,為了保證數(shù)據(jù)通信的可靠性,雙方都必須遵從 UART 協(xié)議。

UART 數(shù)據(jù)幀格式

其中各位的含義如下:

起始位:發(fā)送 1 位邏輯 0(低電平),開(kāi)始傳輸數(shù)據(jù)。

數(shù)據(jù)位:可以是 5~8 位的數(shù)據(jù),先發(fā)低位,再發(fā)高位,一般常見(jiàn)的就是 8 位(1 個(gè)字節(jié)),其他的如 7 位的 ASCII 碼。

校驗(yàn)位:奇偶校驗(yàn),將數(shù)據(jù)位加上校驗(yàn)位,1 的位數(shù)為偶數(shù)(偶校驗(yàn)),1 的位數(shù) 4 為奇數(shù)(奇校驗(yàn))。

停止位:停止位是數(shù)據(jù)傳輸結(jié)束的標(biāo)志,可以是 1/1.5/2 位的邏輯 1(高電平)。

空閑位:空閑時(shí)數(shù)據(jù)線(xiàn)為高電平狀態(tài),代表無(wú)數(shù)據(jù)傳輸。

如果我們傳輸數(shù)據(jù) 0X33(00110011),那么對(duì)應(yīng)的波形就是如下這樣,因?yàn)槭?LSB 在前,所以 8 位數(shù)據(jù)依次是 11001100

發(fā)送 0X33 數(shù)據(jù)幀格式

如果再發(fā)其他數(shù)據(jù),再依次循環(huán)這個(gè)過(guò)程即可。

UART 是異步傳輸,以 1 個(gè)字符為傳輸單位,傳輸 2 個(gè)字符之間的時(shí)間間隔,比如傳輸 0X33 后再傳輸 0X35,這兩者時(shí)間間隔是未知的。

但是同一字符內(nèi)相鄰位間的時(shí)間間隔是確定的,比如 0X33 低兩位的 1 和 1 之間的時(shí)間間隔是確定的,這涉及到 UART 傳輸速率的概念——波特率。

波特率的單位是 bps,全稱(chēng)是 bit per second,意為每秒鐘傳輸?shù)?bit 數(shù)量。

波特率 9600bps,代表每秒鐘傳輸 bit 的數(shù)量為 9600,那么傳輸 1bit 數(shù)據(jù)的時(shí)間就是 1/9600=104us,波特率 115200bps,代表傳輸 1bit 數(shù)據(jù)的時(shí)間是 8us。

兩個(gè)串口之間是如何發(fā)送和接受數(shù)據(jù)呢?

首先,UART1 以 9600 波特率發(fā)送 0X33,先在數(shù)據(jù)線(xiàn)上放 1 個(gè) 104us 脈寬的低電平(起始位),然后是連續(xù) 2 個(gè) 104us 脈寬的高電平(2bit 邏輯 1),依次類(lèi)推。

其次,UART2 以 9600 波特率接收 0X33,通過(guò)數(shù)這些數(shù)據(jù)的脈寬,來(lái)確認(rèn)數(shù)據(jù)。

為了確保數(shù)據(jù)傳輸?shù)恼_性,減少誤差,一般 UART1 和 UART2 之間的波特率差別小于 10%,一次最多只能傳輸 1 個(gè)字節(jié)(8bit),也有效減小了累計(jì)誤差。

審核編輯 黃昊宇

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

    關(guān)注

    22

    文章

    1243

    瀏覽量

    101690
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    單片機(jī)的中斷機(jī)制

    單片機(jī)的中斷機(jī)制是一種重要的處理方式,它允許單片機(jī)在執(zhí)行主程序的過(guò)程中,能夠暫停當(dāng)前任務(wù),轉(zhuǎn)而處理外部或內(nèi)部緊急事件。這種機(jī)制極大地提高了系統(tǒng)的響應(yīng)速度和處理能力,使得單片機(jī)在各種應(yīng)用領(lǐng)域中得到廣泛應(yīng)用。以下是對(duì)
    的頭像 發(fā)表于 10-17 18:03 ?932次閱讀

    以太網(wǎng)格式和功能詳解

    以太網(wǎng)(Ethernet Frame)是以太網(wǎng)(Ethernet)協(xié)議用于在局域網(wǎng)(LAN)中傳輸數(shù)據(jù)的基本單位。理解以太網(wǎng)的結(jié)構(gòu)和傳輸過(guò)程對(duì)于掌握局域網(wǎng)通信的原理至關(guān)重要。以下將從以太網(wǎng)的定義、
    的頭像 發(fā)表于 10-08 10:03 ?2271次閱讀

    請(qǐng)問(wèn)什么是軌到軌?這種運(yùn)放和普通運(yùn)放比有什么特點(diǎn)和優(yōu)點(diǎn)?

    什么是軌到軌?這種運(yùn)放和普通運(yùn)放比有什么特點(diǎn)和優(yōu)點(diǎn)? 最近看到TI有一些運(yùn)放屬于軌到軌,不知道這類(lèi)有什么特點(diǎn),與普通的比有什么優(yōu)缺點(diǎn)沒(méi)?哪位給講的通俗易懂點(diǎn)???
    發(fā)表于 09-18 06:52

    單片機(jī)驅(qū)動(dòng)彩屏最簡(jiǎn)方案:單片機(jī)_RA8889最小開(kāi)發(fā)板驅(qū)動(dòng)控制TFT彩屏介紹(一)

    仍有不少單片機(jī)玩家可能對(duì)驅(qū)動(dòng)彩屏還不算熟悉,在此加推一個(gè)短篇介紹系列,閱讀時(shí)間不會(huì)超過(guò)半小時(shí),定能揭開(kāi)您的疑惑! 本系列文章最后一篇會(huì)有彩蛋釋放,敬請(qǐng)跟蹤閱讀。 一、RA8889的硬件架構(gòu)圖示 此處
    發(fā)表于 08-22 17:31

    通俗易懂的理解,什么是芯片?

    我們?cè)谌粘9ぷ骱蜕钪?,?jīng)常會(huì)使用到各種各樣的電子或電器產(chǎn)品,例如電腦、手機(jī)、電視、冰箱、洗衣機(jī)等。 這些產(chǎn)品,如果我們把它拆開(kāi),都會(huì)看到類(lèi)似下面這樣的一塊綠色板子。 大家知道,這個(gè)綠色板子,叫做
    的頭像 發(fā)表于 08-22 13:32 ?3.6w次閱讀
    <b class='flag-5'>通俗易懂</b>的理解,什么是芯片?

    藍(lán)牙模塊如何實(shí)現(xiàn)單片機(jī)和手機(jī)端數(shù)據(jù)互傳

    ZX-D30、ZX-D37、ZX-D32等。 藍(lán)牙模塊設(shè)置 : 將藍(lán)牙模塊與單片機(jī)連接。通常,藍(lán)牙模塊通過(guò)串口(UART)與單片機(jī)通信。 設(shè)置藍(lán)牙模塊的工作模式和參數(shù),例如波特率、名稱(chēng)、停止位、數(shù)據(jù)位等。這通常通過(guò)發(fā)送特定的AT
    的頭像 發(fā)表于 07-24 17:59 ?2856次閱讀
    藍(lán)牙模塊如何實(shí)現(xiàn)<b class='flag-5'>單片機(jī)</b>和手機(jī)端數(shù)據(jù)互傳

    單片機(jī)Debug的這幾種方式,你知道嗎?

    嵌入式工程師在對(duì)單片機(jī)進(jìn)行編程、結(jié)果驗(yàn)證、查找bug需要用到調(diào)試的方法,用來(lái)進(jìn)行調(diào)試定位,方便找出應(yīng)用上的問(wèn)題所在。一般調(diào)試方式有仿真器調(diào)試、調(diào)試器調(diào)試、邏輯分析儀分析波形、示波器觀察信號(hào)、串口
    的頭像 發(fā)表于 05-01 08:10 ?3883次閱讀
    <b class='flag-5'>單片機(jī)</b>Debug的這幾種方式,你<b class='flag-5'>都</b><b class='flag-5'>知道</b>嗎?

    發(fā)酵罐攪拌器軸磨損修復(fù)方法

    這樣修復(fù)發(fā)酵罐攪拌器軸磨損通俗易懂
    發(fā)表于 04-24 18:43 ?0次下載

    EtherCAT 數(shù)據(jù)格式和尋址方式簡(jiǎn)介

    EtherCAT是一個(gè)高實(shí)時(shí)性,高速和高效率的工業(yè)以太網(wǎng)技術(shù),數(shù)據(jù)根據(jù)自身獨(dú)有的數(shù)據(jù)格式進(jìn)行可靠傳輸,本文主要針對(duì)EtherCAT的數(shù)據(jù)格式和尋址方式進(jìn)行簡(jiǎn)單描述。EtherCAT
    的頭像 發(fā)表于 04-12 08:25 ?1050次閱讀
    EtherCAT 數(shù)據(jù)<b class='flag-5'>幀</b><b class='flag-5'>格式</b>和尋址方式簡(jiǎn)介

    如何系統(tǒng)、科學(xué)地自學(xué)單片機(jī)?

    很多初學(xué)者都會(huì)面臨這個(gè)問(wèn)題,我想學(xué)習(xí)單片機(jī)、我也想學(xué)好單片機(jī)、我也想系統(tǒng)地學(xué)習(xí)單片機(jī),但是單片機(jī)涉及到的學(xué)科多且雜根本不是三天兩天就能學(xué)完的,很多人
    的頭像 發(fā)表于 03-28 08:03 ?1171次閱讀
    如何系統(tǒng)、科學(xué)地自學(xué)<b class='flag-5'>單片機(jī)</b>?

    如何采用“狀態(tài)機(jī)”解析UART數(shù)據(jù)

    如果一個(gè)系統(tǒng)接收上述“不定長(zhǎng)度”的協(xié)議,將會(huì)有一個(gè)挑戰(zhàn)--如何高效接收與解析。 為簡(jiǎn)化系統(tǒng)設(shè)計(jì),我們強(qiáng)烈建議您采用“狀態(tài)機(jī)”來(lái)解析UART數(shù)據(jù)
    的頭像 發(fā)表于 03-25 14:29 ?777次閱讀
    如何采用“狀態(tài)<b class='flag-5'>機(jī)</b>”解析<b class='flag-5'>UART</b>數(shù)據(jù)<b class='flag-5'>幀</b>

    51單片機(jī)流水燈制作

    ?流水燈是學(xué)習(xí)51單片機(jī)的一個(gè)基本項(xiàng)目,是我們對(duì)單片機(jī)IO口輸出認(rèn)識(shí)的基本項(xiàng)目。當(dāng)然學(xué)會(huì)了花樣流水燈也很好玩。 下面就分享一種51單片機(jī)流水燈制作的方法。 一、流水燈原理圖 二、相關(guān)知識(shí) 1
    的頭像 發(fā)表于 02-26 10:06 ?1693次閱讀
    51<b class='flag-5'>單片機(jī)</b>流水燈制作

    常見(jiàn)的UART收發(fā)方式

    這種方式適合大多數(shù)單片機(jī),只要有中斷就行。使用UART Write發(fā)送數(shù)據(jù)時(shí),數(shù)據(jù)并不是直接寫(xiě)入到UART發(fā)送器,而是放進(jìn)了一個(gè)環(huán)形緩沖區(qū)中。
    的頭像 發(fā)表于 02-19 16:23 ?963次閱讀

    單片機(jī)的最小系統(tǒng)由什么組成 單片機(jī)的最小系統(tǒng)包括哪些

    單片機(jī)(Microcontroller Unit,MCU)的最小系統(tǒng)包括以下幾個(gè)主要組成部分: 單片機(jī)芯片:單片機(jī)是整個(gè)最小系統(tǒng)的核心部分,它集成了中央處理器(Central Processing
    的頭像 發(fā)表于 02-02 11:27 ?1.1w次閱讀

    請(qǐng)問(wèn)用CAN存儲(chǔ)器存儲(chǔ)的CAN總線(xiàn)數(shù)據(jù)格式有哪些呢?

    之間的信息傳輸。下面將詳細(xì)介紹CAN總線(xiàn)數(shù)據(jù)格式。 CAN總線(xiàn)數(shù)據(jù)分為兩種類(lèi)型:標(biāo)準(zhǔn)和擴(kuò)展。標(biāo)準(zhǔn)
    的頭像 發(fā)表于 01-31 13:46 ?1370次閱讀