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

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

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

3天內不再提示

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

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

掃碼添加小助手

加入工程師交流群

介紹UART

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

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

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

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

起始位

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

數據

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

校驗位

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

偶校驗

奇校驗

高校驗

低校驗

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

停止位

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

波特率

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

o4YBAGAHxKWADljhAAAQjK6T-sg963.png

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

UART傳輸過程

①發送端UART從數據總線轉換并行數據。

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

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

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

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

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

審核編輯:何安

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

    關注

    6076

    文章

    45500

    瀏覽量

    670649
  • uart
    +關注

    關注

    22

    文章

    1314

    瀏覽量

    106682
  • 異步串行
    +關注

    關注

    0

    文章

    7

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    CW32R030可以兼容BLE及XN297L數據包,請問這個XN297L數據包是什么?

    CW32R030可以兼容BLE及XN297L數據包,請問這個XN297L數據包是什么?
    發表于 01-20 06:37

    bk3633 usb 設備如何讀取主機向端點0 發送數據包

    bk3633 usb 設備如何讀取主機向端點0 發送數據包
    發表于 12-30 13:03

    【道生物聯TKB-623評估板試用】-3.數據傳輸

    1.根據不同速率模式查驗數據傳輸 已知速率模式有 10 種; 24/155761bps,155761bps 代表每秒能傳輸約 15.5 萬個二進制位。 有一個模塊丟失 1 個數據包,SNR13
    發表于 11-01 00:22

    串口DMA接收數據包丟失怎么解決?

    RTT串口DMA接收數據,超過緩沖區后為什么會吞掉一個數據包呢,不能每次處理完后清除緩沖區數據嗎,感覺接收的數據是累計的,累計滿之后會重新覆蓋,在最后一個
    發表于 09-29 07:50

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

    DCTCP與DCUDP 的登錄數據包和心跳數據包與服務器端是如何交互的?
    發表于 08-06 06:29

    在EZ串行的BLE“無響應寫入”中, CAN一次通信中接收的最大數據包大小是多少?

    :所有數據都顯示在與 ez-Serial 和 PUART 連接的 TeraTerm 上 [問題] (1)在 EZ 串行的 BLE“無響應寫入”中, CAN 一次通信中接收的最大數據包大小是多少? (2
    發表于 07-07 07:33

    Android14在BLE中,當MTU超過 517時,如何處理數據傳輸

    的情況下: 在分段傳輸過程中,是否應該對每個數據包應用單獨的延遲? 芯片組制造商是否有關于分段傳輸的具體注意事項或性能優化指南? 當前的 OTA 問題是否(BTSDK-10583)與上述請求 MTU 有關嗎? 使用分段
    發表于 07-01 06:56

    RDMA簡介7之可靠傳輸

    可靠傳輸技術旨在通過多種方法確保數據包傳輸過程中不會丟失或損壞,同時保證數據包按發送順序到達接收端,其要求在鏈路發生丟或網絡發生擁塞等情
    發表于 06-13 10:01

    藍牙數據通道空口數據包

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

    能否使用兩個 FX3 設備實現 USB 數據包嗅探、插入和移除?

    能否使用兩個 FX3 設備實現 USB 數據包嗅探、插入和移除?如果需要,除了兩個 FX3 設備外,還需要哪些硬件(如果有的話)?
    發表于 05-26 07:16

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

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

    使用CyU3PDmaChannelCommitBuffer提交超過1024字節數據時usb異常大怎么解決?

    你好,我正在嘗試使用fx3實現USB3Vision設備,但是當我使用CyU3PDmaChannelCommitBuffer函數提交超過1024字節數據時,主機獲取到的USB數據包變得非常大
    發表于 05-13 06:11

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

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

    為什么無法通過demo_feature_L2_bridge_vlan上的PFE轉發VLAN標記的以太網數據包?

    - PC1 使用 ICMP 應答進行響應 對于第二個用例,我看不到正在路由的數據包。PC1 不響應 PC0 發送的 ARP 請求。我還嘗試發送硬編碼數據包(PC0 和 PC1 的 src 和 dst
    發表于 03-25 08:05

    STM32H743+USB3300傳輸采集的數據前幾次會丟怎么解決?

    使用STM32H743+USB3300來傳輸采集的ADC數據,裸機,多通道實時采集傳輸,一數據大小是120KB,問題就是每次上電,接收到指
    發表于 03-10 06:26