精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

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

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

3天內不再提示

串口通信的分類

jf_78858299 ? 來源:嵌入式基地 ? 作者:嵌入式基地 ? 2023-04-04 15:20 ? 次閱讀

口是串行接口(serial port)的簡稱,也稱為串行通信接口或COM接口。

串口通信是指采用串行通信協議(serial communication)在一條信號線上將數據一個比特一個比特地逐位進行傳輸的通信模式。

串口按電氣標準及協議來劃分,包括RS-232-C、RS-422、RS485等。

一、按通信方式分類

同步通信

  • 時鐘同步信號傳輸,比如SPI,IIC通信接口。
  • 在同步通訊中,收發設備上方會使用一根信號線傳輸信號,在時鐘信號的驅動下雙方進行協調,同步數據。例如,通訊中通常雙方會統一規定在時鐘信號的上升沿或者下降沿對數據線進行采樣。

異步通信

  • 不帶時鐘同步信號,比如UART(通用異步收發器),單總線。
  • 在異步通訊中不使用時鐘信號進行數據同步,它們直接在數據信號中穿插一些用于同步的信號位,或者將主題數據進行打包,以數據幀的格式傳輸數據。通訊中還需要雙方規約好數據的傳輸速率(也就是波特率)等,以便更好地同步。常用的波特率有4800bps、9600bps、115200bps等。
異步通信數據格式

異步通信規定傳輸的數據格式由起始位(start bit)、數據位(data bit)、奇偶校驗位(parity bit)和停止位(stop bit)組成。

圖片

  • 起始位:起始位必須是持續一個比特時間的邏輯0電平,標志傳輸一個字符的開始,接收方可用起始位使自己的接收時鐘與發送方的數據同步。
  • 數據位:數據位緊跟在起始位之后,是通信中的真正有效信息。數據位的位數可以由通信雙方共同約定,一般可以是5位、7位或8位,標準的ASCII碼是0127(7位),擴展的ASCII碼是0255(8位)。傳輸數據時先傳送字符的低位,后傳送字符的高位。
  • 奇偶校驗位:奇偶校驗位僅占一位,用于進行奇校驗或偶校驗,奇偶檢驗位不是必須有的。如果是奇校驗,需要保證傳輸的數據總共有奇數個邏輯高位;如果是偶校驗,需要保證傳輸的數據總共有偶數個邏輯高位。

舉例來說,假設傳輸的數據位為01001100,如果是奇校驗,則奇校驗位為0(要確??偣灿衅鏀祩€1),如果是偶校驗,則偶校驗位為1(要確保總共有偶數個1)。

由此可見,奇偶校驗位僅是對數據進行簡單的置邏輯高位或邏輯低位,不會對數據進行實質的判斷,這樣做的好處是接收設備能夠知道一個位的狀態,有可能判斷是否有噪聲干擾了通信以及傳輸的數據是否同步。

  • 停止位:停止位可以是是1位、1.5位或2位,可以由軟件設定。它一定是邏輯1電平,標志著傳輸一個字符的結束。
  • 空閑位:空閑位是指從一個字符的停止位結束到下一個字符的起始位開始,表示線路處于空閑狀態,必須由高電平來填充。
異步通信的數據發送過程
  • (1)初始化后或者沒有數據需要發送時,發送端輸出邏輯1,可以有任意數量的空閑位。
  • (2)當需要發送數據時,發送端首先輸出邏輯0,作為起始位。
  • (3)接著就可以開始輸出數據位了,發送端首先輸出數據的最低位D0,然后是D1,最后是數據的最高位。
  • (4)如果設有奇偶檢驗位,發送端輸出檢驗位。
  • (5)最后,發送端輸出停止位(邏輯1)。
  • (6)如果沒有信息需要發送,發送端輸出邏輯1(空閑位),如果有信息需要發送,則轉入步驟(2)。
異步通信的數據接收過程

在異步通信中,接收端以接收時鐘和波特率因子決定每一位的時間長度。下面以波特率因子等于16(接收時鐘每16個時鐘周期使接收移位寄存器移位一次)為例來說明。

  • (1)開始通信,信號線為空閑(邏輯1),當檢測到由1到0的跳變時,開始對接收時鐘計數。
  • (2)當計到8個時鐘的時候,對輸入信號進行檢測,若仍然為低電平,則確認這是起始位,而不是干擾信號。
  • (3)接收端檢測到起始位后,隔16個接收時鐘對輸入信號檢測一次,把對應的值作為D0位數據。
  • (4)再隔16個接收時鐘,對輸入信號檢測一次,把對應的值作為D1位數據,直到全部數據位都輸入。
  • (5)檢驗奇偶檢驗位。
  • (6)接收到規定的數據位個數和校驗位之后,通信接口電路希望收到停止位(邏輯1),若此時未收到邏輯1,說明出現了錯誤,在狀態寄存器中置“幀錯誤”標志;若沒有錯誤,對全部數據位進行奇偶校驗,無校驗錯時,把數據位從移位寄存器中取出送至數據輸入寄存器,若校驗錯,在狀態寄存器中置“奇偶錯”標志。
  • (7)本幀信息全部接收完,把線路上出現的高電平作為空閑位。
  • (8)當信號再次變為低時,開始進入下一幀的檢測。

區別

  • 在同步通訊中,數據信號所傳輸的內容絕大部分是有效數據,而異步通訊中會則會包含數據幀的各種標識符,所以同步通訊效率高。
  • 同步通訊雙方的時鐘允許誤差小,稍稍時鐘出錯就可能導致數據錯亂,異步通訊雙方的時鐘允許誤差較大。

二、按照數據傳輸方向分類

  • 單工:數據傳輸只支持數據在一個方向上傳輸,如圖a所示。
  • 半雙工:允許數據在兩個方向上傳輸。但是,在某一時刻,只允許數據在一個方向上傳輸,它實際上是一種切換方向的單工通信;它不需要獨立的接收端和發送端,兩者可以合并一起使用一個端口,如圖b所示。
  • 全雙工:允許數據同時在兩個方向上傳輸。因此,全雙工通信是兩個單工通信方式的結合,需要獨立的接收端和發送端,如圖c所示。
    圖片
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 通信協議
    +關注

    關注

    28

    文章

    861

    瀏覽量

    40274
  • RS485
    +關注

    關注

    39

    文章

    1151

    瀏覽量

    82151
  • 串口通信
    +關注

    關注

    34

    文章

    1620

    瀏覽量

    55428
  • Com
    Com
    +關注

    關注

    1

    文章

    107

    瀏覽量

    40607
收藏 人收藏

    評論

    相關推薦

    什么是串口波特率?串口波特率的分類及應用詳解

    直接影響到通信的質量和效率。本文將介紹串口波特率的分類、選擇以及應用。串口波特率的分類根據不同的應用需求,
    的頭像 發表于 08-08 10:09 ?5792次閱讀
    什么是<b class='flag-5'>串口</b>波特率?<b class='flag-5'>串口</b>波特率的<b class='flag-5'>分類</b>及應用詳解

    串口通信基本原理是什么?

    串口通信基本原理是什么?串行通信分類有哪些?
    發表于 12-03 06:08

    STM32_USART串口通訊通信方式

    STM32_USART 串口通訊通信方式的分類按照通信方式分類:按照數據傳送方向分類
    發表于 12-09 06:36

    串口通信分類及原理

    錄【實驗目的】【實驗原理】一、USART接口簡介二、串口通信分類及原理三、硬件連接和USART庫函數介紹四、軟件流程圖【實驗環境】操作系統:設備簡介:【實驗步驟】一、配置工程環境二、開啟時鐘...
    發表于 12-24 08:16

    常見的串口有哪些

    communication port :串行通訊端口), 嵌入式里面說的串口,一般是指UART口。計算機上的串口常指RS232電平標準的COM口。? UART口和COM口是指的物理接口形式(硬件),而TTL、RS-232、RS-485是指的電平標準(電信號)。二、
    發表于 02-17 07:04

    單片機中各種通信方式的分類

    目錄一、單片機中各種通信方式的分類1. 串行通信中的單工、半雙工、全雙工2.串行通信中的同步和異步3. 單片機中的串行通信方式
    發表于 02-17 06:21

    STM32串口通訊基礎知識點大合集,絕對實用

    4.2、 UART(USART)框圖02、設備之間通訊的方式并行通訊與串行通訊串行(串口)通信分類分為兩類:按照數據傳送方向、按照通信方式按照數據傳送方向:單工:數據傳輸只支持數據在一
    發表于 02-21 06:04

    串口通信調試(PC與PC串口通信

    【LabVIEW從入門到精通】4.1.6 串口通信調試(PC與PC串口通信
    發表于 01-08 15:43 ?0次下載

    STM32_USART 串口通訊

    STM32_USART 串口通訊通信方式的分類按照通信方式分類:按照數據傳送方向分類
    發表于 11-26 12:06 ?13次下載
    STM32_USART <b class='flag-5'>串口</b>通訊

    stm32_常見串口串口通信分類、UART編程套路以及注意事項

    communication port :串行通訊端口), 嵌入式里面說的串口,一般是指UART口。計算機上的串口常指RS232電平標準的COM口。? UART口和COM口是指的物理接口形式(硬件),而TTL、RS-232、RS-485是指的電平標準(電信號)。二、
    發表于 12-20 19:26 ?2次下載
    stm32_常見<b class='flag-5'>串口</b>、<b class='flag-5'>串口</b><b class='flag-5'>通信</b><b class='flag-5'>分類</b>、UART編程套路以及注意事項

    stm32串口通信

    通信的概念通信分類:串行通信,并行通信。串行通信:usart,iic,spi并行:SDIO,F
    發表于 12-20 19:32 ?3次下載
    stm32<b class='flag-5'>串口</b><b class='flag-5'>通信</b>

    【嵌入式】STM32通訊方式

    4.2、 UART(USART)框圖02、設備之間通訊的方式并行通訊與串行通訊串行(串口)通信分類分為兩類:按照數據傳送方向、按照通信方式按照數據傳送方向:單工:數據傳輸只支持數據在一
    發表于 12-24 19:06 ?10次下載
    【嵌入式】STM32通訊方式

    【分享】什么是串口通信串口常見通信問題如何解決?

    在之前的文章中小編介紹了什么是CAN總線,包括CAN總線的數據格式和通信特點等方面的內容,今天將分享串口通信相關知識內容。CAN總線、串口通信
    的頭像 發表于 06-21 17:45 ?2285次閱讀
    【分享】什么是<b class='flag-5'>串口</b><b class='flag-5'>通信</b>?<b class='flag-5'>串口</b>常見<b class='flag-5'>通信</b>問題如何解決?

    為什么通信要使用虛擬串口串口助手?

    串口助手和虛擬串口是什么?串口助手和虛擬串口串口通信中很常見。
    的頭像 發表于 11-15 01:04 ?429次閱讀
    為什么<b class='flag-5'>通信</b>要使用虛擬<b class='flag-5'>串口</b>和<b class='flag-5'>串口</b>助手?

    串口通信協議解析 串口通信應用實例

    串口通信協議解析 串口通信協議是指規定了數據包的內容,內容包含了起始位、主體數據、校驗位及停止位,雙方需要約定一致的數據包格式才能正常收發數據的有關規范。以下是
    的頭像 發表于 11-21 17:03 ?350次閱讀