UART、SPI、IIC復習總結

一、UART

1、UART和USART的異同?

相同點

  • 基本功能:都是用于串行通信的數據收發設備,能夠實現數據在不同設備之間的傳輸。在異步通信模式下,二者的工作方式相似,都使用起始位、數據位、校驗位(可選)和停止位來構成數據幀進行數據傳輸。
  • 全雙工通信:都支持全雙工通信,即可以同時進行數據的發送和接收23。

不同點

  • 通信模式
    • UART:只支持異步通信模式,數據發送方和接收方不需要共享時鐘信號,依靠預先設定的波特率來同步發送和接收數據。
    • USART:既支持異步通信模式,也支持同步通信模式。在同步模式下,數據的發送和接收通過共享時鐘信號來同步。
  • 時鐘信號
    • UART:沒有時鐘信號引腳,通信雙方通過事先約定好的波特率來同步通信。
    • USART:在同步模式下,使用一個共享的時鐘信號來同步數據傳輸,需要額外的時鐘引腳(如 SCK)。USART 還可以通過外部時鐘源來提供時鐘信號,或者通過內部時鐘生成。
  • 硬件支持
    • UART:一般接口硬件設計較為簡單,只有發送(TX)和接收(RX)兩個基本功能引腳,適用于異步串行通信場合。
    • USART:除具備 UART 的功能外,還支持同步通信,其硬件能直接與時鐘信號協作,可提高數據傳輸的穩定性和速度,適合長距離或者高速通信。
  • 應用場景
    • UART:常用于較低速、較短距離的通信,如計算機與外設之間的通信、設備配置等簡單數據傳輸場景。
    • USART:適用于更為復雜的通信場景,特別是需要同步傳輸數據、進行高速通信的應用,如 SPI 或 I2S 等協議的硬件實現。
  • 引腳數量
    • UART:通常只需兩個引腳,即 TX(發送)和 RX(接收)。
    • USART:在同步模式下使用時,除了 TX 和 RX 引腳外,還需要額外的時鐘引腳(如 SCK)來同步數據的傳輸。
  • 速度與穩定性
    • UART:速度相對較低,在高波特率下,由于沒有時鐘信號支持,可能會出現誤差或時序問題。
    • USART:由于有同步模式,在高速度和長距離傳輸時能保持數據的穩定性,減少誤碼率。

2、什么是UART?

????????通用異步接收器/發送器,通常稱為UART,是一種廣泛應用于嵌入式領域的串行異步、全雙工通信協議。?

3、物理連線?

????????UART 通道有兩條數據線。每個設備上都有一個 RX 引腳和一個 TX 引腳(RX 用于接收,TX 用于發送)。每個設備的 RX 引腳都連接到另一個設備的 TX 引腳。

注:沒有共享時鐘線!這是通用異步接收方發送方的“異步”通信!?

4、通信協議?

(1)工作原理:逐位傳輸傳輸數據的每個二進制位?

(2)信號線上的狀態為高時:代表“1”;當信號線上的狀態為低時:代表“0”。

(3)串行通信:指利用一根傳輸線逐位依次傳輸數據,也可以用兩根信號線組成全雙工通信。

(4)異步通信:以一個字符為傳輸單位。兩包數據的間隔時間可以不同,但是數據每個位的間隔時間是固定的。比如傳輸0x02,0000 0010,1和0之間的間隔時間就可以根據設置的波特率,每兩個位之間的傳輸速率就是1/波特率。一般來說,兩個UART設備之間的通信不需要時鐘線。此時,需要在兩個UART設備上指定相同的傳輸速率,以及空閑位起始位奇偶校驗位結束位,即遵循相同的協議。

(5)數據傳輸速率以波特率表示,即每秒傳輸的位數。例如,如果數據傳輸速率為960個字符/秒,每個字符為10位(1個起始位、7個數據位、1個校驗位、1個停止位),則其傳輸的波特率為10×960 = 9600 個字符/秒 = 9600 波特率?

5、數據通信格式

(1)起始位:每次通信開始時,發送方發送一個邏輯“0”信號(VOL),表示傳輸字符的開始。由于總線空閑時為高電平,因此在開始通信時先發送一個與空閑狀態明顯不同的信號,即VOL。

(2)數據位:起始位之后是我們要傳輸的數據。數據位可通常是8位。首先發送最低位,最后發送最高位。用低電平?表示“0”,高電平表示“1”

(3)奇偶校驗位:將該位添加到數據位后,“1”位的個數應為偶數(偶校驗)或奇數(奇校驗),以驗證數據傳輸的正確性。

a、奇校驗:如果數據位中“1”的個數為偶數,則奇偶校驗位為“1”,如果“1”的個數為奇數,則奇偶校驗位為“0”。

b、偶校驗:如果數據中“1”的個數為偶數,則奇偶校驗位為“0”,如果數據中“1”的個數為奇數,則奇偶校驗位為“1”。

(4)停止位:它是字符數據的結束標記。它可以是 1 位、1.5 位或 2 位 VOH。

?

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/83585.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/83585.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/83585.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

PostGIS實現矢量數據轉柵格數據【ST_AsRaster】

ST_AsRaster函數應用詳解:將矢量數據轉換為柵格數據 [文章目錄] 一、函數概述 二、函數參數與分組說明 三、核心特性與注意事項 四、示例代碼 五、應用場景 六、版本依賴 七、總結 一、函數概述 ST_AsRaster是PostGIS中用于將幾何對象(如點、線…

Linux 線程(上)

前言:大家早上中午晚上好!!今天來學習一下linux系統下所謂的線程吧!!! 一、重新理解進程,什么是進程? 1.1 圖解 其中黑色虛線部分一整塊就是進程,注意:一整…

Java API學習筆記

一.類 1. String 類 不可變性:String對象創建后不可修改,每次操作返回新對象 String str "Hello"; str.length(); str.charAt(0); str.substring(1, 4); str.indexOf("l"); str.equals("hel…

醫療信息系統安全防護體系的深度構建與理論實踐融合

一、醫療數據訪問系統的安全挑戰與理論基礎 1.1 系統架構安全需求分析 在醫療信息系統中,基于身份標識的信息查詢功能通常采用分層架構設計,包括表現層、應用層和數據層。根據ISO/IEC 27001信息安全管理體系要求,此類系統需滿足數據保密性…

5.18本日總結

一、英語 復習list3list28 二、數學 學習14講部分內容,1000題13講部分 三、408 學習計網5.3剩余內容 四、總結 計網TCP內容比較重要,連接過程等要時常復習;高數學到二重積分對定積分的計算相關方法有所遺忘,需要加強鞏固。…

MATLAB2025新功能

截至2023年9月,MATLAB官方尚未公布2025版本的具體更新內容。根據歷史更新規律和技術發展趨勢,未來版本可能會在以下方面進行優化: AI與深度學習增強 可能新增自動化模型壓縮工具強化生成式AI模型支持改進的ONNX格式轉換接口 性能提升 矩陣運…

算法題(149):矩陣消除游戲

審題: 本題需要我們找到消除矩陣行與列后可以獲得的最大權值 思路: 方法一:貪心二進制枚舉 這里的矩陣消除時,行與列的消除會互相影響,所以如果我們先統計所有行和列的總和,然后選擇消除最大的那一行/列&am…

Uniapp、Flutter 和 React Native 全面對比

文章目錄 前言Uni-app、Flutter 和 React Native 跨平臺框架對比報告1. 性能對比2. 跨平臺能力3. 學習曲線4. 社區生態與第三方庫5. 原生能力擴展6. UI 渲染能力7. 企業支持與典型使用場景8. 開發效率與工具鏈 前言 將對 Uniapp、Flutter 和 React Native 進行全面對比&#x…

JAVA SE 多線程(上)

文章目錄 📕1. Thread類及常見方法??1.1 創建線程??1.2 Thread 的常見構造方法??1.3 Thread 的幾個常見屬性??1.4 啟動一個線程---start()??1.5 中斷一個線程---interrupt()??1.6 等待一個線程---join()??1.7 獲取當前線程引用??1.8 休眠當前線程 &…

Linux云計算訓練營筆記day10(MySQL數據庫)

Linux云計算訓練營筆記day10(MySQL數據庫) 目錄 Linux云計算訓練營筆記day10(MySQL數據庫)ifnull別名聚合函數group byHAVING 子查詢關聯查詢 ifnull 在DQL語句中可以使用函數或表達式 函數 IFNULL(arg1,arg2) 如果arg1為NULL,函…

上位機知識篇---流式Web服務器模式的實現

文章目錄 前言 前言 本文簡單介紹了流式Web服務器模式的實現。

Dify與n8n全面對比指南:AI應用開發與工作流自動化平臺選擇【2025最新】

Dify與n8n全面對比指南:AI應用開發與工作流自動化平臺選擇【2025最新】 隨著AI技術與自動化工具的迅速發展,開發者和企業面臨著多種平臺選擇。Dify和n8n作為兩個備受關注的自動化平臺,分別專注于不同領域:Dify主要面向AI應用開發&…

day19-線性表(順序表)(鏈表I)

一、補充 安裝軟件命令: sudo apt-get install (軟件名) 安裝格式化對齊:sudo apt-get install clang-format內存泄漏檢測工具: sudo apt-get install valgrind 編譯后,使用命令 valgrind ./a.out 即可看內存是…

AI:人形機器人一定是人的形狀嗎?

本文將從技術角度分析人形機器人是否必須是人的形狀,以及人形與非人形機器人在適用場合、優缺點上的差異。以下是詳細解答: 人形機器人一定是人的形狀嗎? 不,人形機器人(Humanoid Robot)在技術上通常指外…

布隆過濾器和布谷鳥過濾器

原文鏈接:布隆過濾器和布谷鳥過濾器 布隆過濾器 介紹 布隆過濾器(Bloom Filter)是 1970 年由布隆提出的。它實際上是一個很長的二進制向量和一系列隨機映射函數,檢查值是“可能在集合中”還是“絕對不在集合中” 空間效率高&a…

無需配置光貓,使用網管交換機配合路由器的IPTV功能實現單線復用

一、背景 弱電箱和電視柜只預留了一根網線,路由器放在電視柜,想實現既可以上網又可以正常觀看iptv,本文提供了一種方法。 二、準備工作 1、帶iptv功能的路由器;2、水星sg105pro網管交換機;3、網線若干; …

深入理解SpringBoot中的SpringCache緩存技術

深入理解SpringBoot中的SpringCache緩存技術 引言 在現代應用開發中,緩存技術是提升系統性能的重要手段之一。SpringBoot提供了SpringCache作為緩存抽象層,簡化了緩存的使用和管理。本文將深入探討SpringCache的核心技術點及其在實際業務中的應用場景。…

2025認證杯數學建模A題思路+代碼+模型:小行星軌跡預測

2025認證杯數學建模A題思路代碼模型,詳細內容見文末名片 近地小行星( Near Earth Asteroids, NEAs )是軌道相對接近地球的小行 星,它的正式定義為橢圓軌道的近日距不大于 1.3 天文單位( AU )的小行星。 …

LeetCode Hot100刷題——輪轉數組

56. 輪轉數組 給定一個整數數組 nums,將數組中的元素向右輪轉 k 個位置,其中 k 是非負數。 示例 1: 輸入: nums [1,2,3,4,5,6,7], k 3 輸出: [5,6,7,1,2,3,4] 解釋: 向右輪轉 1 步: [7,1,2,3,4,5,6] 向右輪轉 2 步: [6,7,1,2,3,4,5] 向右輪轉 3 步: …

「Mac暢玩AIGC與多模態41」開發篇36 - 用 ArkTS 構建聚合搜索前端頁面

一、概述 本篇基于上一節 Python 實現的雙通道搜索服務(聚合 SearxNG 本地知識庫),構建一個完整的 HarmonyOS ArkTS 前端頁面。用戶可在輸入框中輸入關鍵詞,實時查詢本地服務 http://localhost:5001/search?q...,返…