一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

3天內不再提示

UART傳輸的數據被封裝成數據包

電子設計 ? 來源:電子設計 ? 作者:電子設計 ? 2022-02-21 11:17 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

介紹UART

最早的串行通訊設備可以追溯到電報機,它使用長度可變的脈沖信號進行數據傳輸。要說早期的芯片級UART,不得不提一下DEC,該公司的PDP系列計算機用上了第一個UART。當時的UART的線路占據了整個電路板,體積巨大!可以聯想一下早期計算機的樣子,如下圖。

如今PC機上的串口早已被USB取代,對RS-232(也稱標準串口)有需求的用戶通常使用USB轉串口線,這里常見的有CH340串口驅動程序。在UART通信中,兩個UART直接通信。

發(fā)送端的UART將來自控制設備(如CPU)的并行數據轉換為串行數據,以串行方式將其發(fā)送到接收端的UART,然后由接收端的UART將串行數據轉換為并行數據以用于接收設備的正常處理。這里只需要兩條線RX/TX即可在兩個UART之間傳輸數據,如下圖所示。

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

起始位

UART數據傳輸線通常在不傳輸數據時保持在高電平。為了開始數據傳輸,發(fā)送端UART在一個時鐘周期內將傳輸線從高電平拉低到低電平。當接收端UART檢測到高電壓到低電壓轉換時,它開始以波特率的頻率讀取數據位中的每一位數據。

數據

數據位包含正在傳輸的實際數據。如果使用奇偶校驗位,則可以是5位,最多8位。如果不使用奇偶校驗位,則數據幀的長度可以為9位。在大多數情況下,數據首先以低有效位發(fā)送。

校驗位

在串口通信中一種簡單的檢錯方式。有四種檢錯方式:

偶校驗

奇校驗

高校驗

低校驗

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

停止位

發(fā)送端UART將數據傳輸線從低電壓驅動到高電壓至少持續(xù)兩位數據的時間寬度來表示整個數據包的傳輸已經結束。由于數據是在傳輸線上定時的,并且每一個設備有其自己的時鐘,很可能在通信中兩臺設備間出現了小小的不同步。因此停止位不僅僅是表示傳輸的結束,并且提供計算機校正時鐘同步的機會。適用于停止位的位數越多,不同時鐘同步的容錯性越好,但是數據傳輸率同時也越慢。

波特率

波特率是串口數據的傳輸速度,即Bit/s,常見的波特率比如:9600,19200,38400,57600,115200等。假設目前UART的配置為,1個起始位,8個數據位,0個校驗位,1個停止位,那么9600的波特率,可以計算出每一位數據的時間寬度為:

o4YBAGAHxKWADljhAAAQjK6T-sg963.png

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

UART傳輸過程

①發(fā)送端UART從數據總線轉換并行數據。

②發(fā)送端UART將起始位,奇偶校驗位和停止位添加到數據包中,示意圖如下。

③整個數據包從發(fā)送端UART串行發(fā)送到接收端UART,接收端UART按照預先配置好的波特率對數據線進行采樣,示意圖如下。

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

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

本文轉自: STM32嵌入式開發(fā)(微信號:c-stm32),作者:acket,轉載此文目的在于傳遞更多信息,版權歸原作者所有。

審核編輯:何安

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

    關注

    6067

    文章

    44992

    瀏覽量

    650683
  • uart
    +關注

    關注

    22

    文章

    1276

    瀏覽量

    103991
  • 異步串行
    +關注

    關注

    0

    文章

    7

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    藍牙數據通道空口數據包

    ? 與藍牙廣播相對應,藍牙數據包是另一種Bluetooth LE packet。藍牙數據包是藍牙數據信道空中的簡稱,表示空中
    發(fā)表于 06-03 10:51

    更改最大數據包大小時無法識別USB設備如何解決?

    將生產者 EP 端點描述符中的最大數據包大小從 1024 字節(jié)更改為 512 字節(jié)時,無法識別 USB 設備。 請告知如何解決這個問題。
    發(fā)表于 05-20 08:13

    UART、MCXA142實現ISP通信的主機端,發(fā)送Ping數據包并收到預期的響應,發(fā)送和接收數據包的典型順序是什么?

    我想為 UART、MCXA142 實現 ISP 通信的主機端。我發(fā)送 Ping 數據包并收到預期的響應。發(fā)送和接收數據包的典型順序是什么? 此刻,我的照片是這樣的: 1. 發(fā)送 Ping 2. 接收 Ping 響應 3. 在成
    發(fā)表于 04-03 08:05

    接收方數據封裝解析

    和終止會話 傳輸層----建立、維護和取消一次端到端的數據傳輸過程。控制傳輸節(jié)奏的快慢,調整數據的排序等等 網絡層----定義邏輯地址;實現數據
    的頭像 發(fā)表于 02-14 17:51 ?510次閱讀
    接收方<b class='flag-5'>數據</b>解<b class='flag-5'>封裝</b>解析

    開源直接用!UDP-UART數據透傳來了

    今天就來分享一下UDP-UART透傳示例,源碼開放,可根據實際需求靈活應用。 一、UDP-UART透傳簡介 UDP-UART透傳是一種將UDP數據流直接
    的頭像 發(fā)表于 02-05 17:14 ?347次閱讀
    開源直接用!UDP-<b class='flag-5'>UART</b><b class='flag-5'>數據</b>透傳來了

    I2C總線數據包結構詳解

    。以下是I2C總線數據包結構的詳解: 一、I2C總線數據包的基本組成 I2C總線上的數據傳輸數據包為單位進行,每個數據包包含起始信號、設備
    的頭像 發(fā)表于 01-17 15:46 ?816次閱讀

    華納云如何解讀WinMTR的丟數據?

    WinMTR顯示的丟數據是指在網絡路徑上,從你的計算機到目標主機之間,數據包丟失的百分比。丟率是網絡穩(wěn)定性的一個重要指標,它可以幫助識別網絡中的問題點,如路由器故障、網絡擁塞或配
    的頭像 發(fā)表于 12-30 16:51 ?577次閱讀

    mtu配置步驟詳解 mtu與數據包丟失的關系

    MTU(Maximum Transmission Unit)即最大傳輸單元,是指一種通信協議的某一層上面所能通過的最大數據報大小,單位是字節(jié)。MTU配置步驟及其與數據包丟失的關系如下: MTU配置
    的頭像 發(fā)表于 12-16 14:33 ?2608次閱讀

    請問TPA3116D2EVM RevC Gerbers這個數據包的文件用什么打開?

    TPA3116D2EVM RevC Gerbers這個數據包的文件用什么打開?
    發(fā)表于 11-07 07:21

    UART通信協議介紹和數據傳輸工作流程

    UART是一種通用串行數據總線,用于異步通信。該總線雙向通信,可實現全雙工傳輸和接收。UART通常用來實現與PC之間數據通信,命令和控制信息
    的頭像 發(fā)表于 10-24 14:20 ?2274次閱讀
    <b class='flag-5'>UART</b>通信協議介紹和<b class='flag-5'>數據傳輸</b>工作流程

    華納云:服務器平均響應時間和數據包大小之間的影響

    服務器的平均響應時間與數據包大小有一定的關系,但這只是影響響應時間的眾多因素之一。具體來說,數據包大小對服務器響應時間的影響可以從以下幾個方面來理解: 1.數據傳輸時間 影響: 較大的數據包
    的頭像 發(fā)表于 10-10 14:01 ?617次閱讀

    艾體寶干貨 OIDA之四:掌握數據包分析-分析的藝術

    本文是OIDA方法系列的最后一部分,重點介紹了數據包分析的“分析”階段。這一最后階段將剖析階段的精煉數據轉化為可操作的見解,使網絡管理員和安全專業(yè)人員能夠解決問題、優(yōu)化性能并增強安全性。分析是實現數據包檢查真正價值的地方,它將原
    的頭像 發(fā)表于 09-24 11:47 ?480次閱讀
    艾體寶干貨 OIDA之四:掌握<b class='flag-5'>數據包</b>分析-分析的藝術

    UART串口通訊協議解析

    - 數據接受接口 GND - 保證兩設備共地,有統(tǒng)一的參考平面 通信協議 UART串口傳輸數據被組織成數據包。每個
    發(fā)表于 09-12 16:01

    請問DCTCP與DCUDP 的登錄數據包和心跳數據包與服務器端是如何交互的?

    DCTCP與DCUDP的登錄數據包和心跳數據包與服務器端是如何交互的?
    發(fā)表于 07-25 06:37

    esp8266怎么做才能每秒發(fā)送更多的數據包呢?

    在我的項目中,我需要通過WIFI實時傳輸大量數據。在 esp8266 參考手冊中指出,我可以將 UART 波特率提高到 4 Mbits 左右,以實現更快的通信。 問題是,增加波特率不會改變整體發(fā)送
    發(fā)表于 07-22 08:00