色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

3天內不再提示

5、串口流控

哈哈hfgfdf ? 來源:嵌入式學習資料 ? 作者:嵌入式學習資料 ? 2022-12-16 19:28 ? 次閱讀

0、串行通信

串行通信技術(Serial Communication),是指通信雙方按位bit進行,遵守時序的一種通信方式。串行通信中,將數據按位依次傳輸, 每位數據占據固定的時間長度,僅用一根接收線和一根發送線就可以完成系統間交換信息

盡管串行通訊的比按字節傳輸的并行通信慢,但是串口具有通信線路少,布線簡便易行,施工方便,結構靈活,系統間協商協議,自由度及靈活度較高的特點。

同步通信:

同步通信是一種連續串行傳送數據的通信方式,一次通信傳送一幀信息。這里的信息幀與異步通信中的字符幀不同,通常含有若干個數據字符。它們均由同步字符、數據字符和校驗字符(CRC)組成。

同步字符位于幀開頭,用于確認數據字符的開始。

數據字符在同步字符之后,個數沒有限制,由所需傳輸的數據塊長度來決定;

校驗字符有1到2個,用于接收端對接收到的字符序列進行正確性的校驗。

同步通信的缺點是要求發送時鐘和接收時鐘保持嚴格的同步。

異步通信:

異步通信中,有兩個比較重要的指標:字符幀格式和波特率,在發送端和接收端要保持一致。

數據通常以字符或者字節為單位組成字符幀傳送。字符幀由發送端逐幀發送,通過傳輸線被接收設備逐幀接收。

發送端和接收端可以由各自的時鐘來控制數據的發送和接收,這兩個時鐘源彼此獨立,互不同步。

接收端檢測到傳輸線上發送過來的低電平邏輯"0"(即字符幀起始位)時,確定發送端已開始發送數據,每當接收端收到字符幀中的停止位時,就知道一幀字符已經發送完畢。

雖然異步技術使用簡單,但起始和停止位是額外開銷,浪費了帶寬。

一、不同接口之間的區別:

USB(Universal Serial Bus,通用串行總線)
是一個外部總線標準,用于規范電腦與外部設備的連接和通訊。

b6536b62-7d34-11ed-abeb-dac502259ad0.png

COM口(串口)
串行接口簡稱串口,也稱串行通信接口(通常指COM接口),是采用串行通信方式的擴展接口。

(1) D型9針串口(DB9):RS-232電平標準

b672a608-7d34-11ed-abeb-dac502259ad0.png

(2)4針串口:TTL電平標準
b68d1e48-7d34-11ed-abeb-dac502259ad0.png

二、串口通信

典型的串口通信使用3根線完成,分別是地線GND、發送TXD(transport)、接收RXD(receive)。

由于串口通信是異步的,所以端口能夠在一根線上發送數據同時在另一根線上接收數據。

串口通信(異步)最重要的參數是波特率、數據位、停止位和奇偶的校驗。對于兩個需要進行串口通信的端口,這些參數必須匹配,這也是能夠實現串口通訊的前提。

串口通信(如RS232接口)的數據傳輸都是0和1,在單總線、I2CUART中都是通過一根線的高低電平來判斷邏輯1或者邏輯0,但這種信號線的GND再與其他設備形成共地模式的通信,這種共地模式傳輸容易產生干擾,并且抗干擾性能也比較弱。而差分通信、支持多機通信、抗干擾強的RS485則能夠實現更適合長距離、高速傳輸。

對于通訊協議,最基本的是把它分為物理層和協議層。

物理層

物理層規定通訊系統中具有機械電子功能部分的特性, 確保原始數據在物理媒體的傳輸。

串口通訊的物理層有很多標準及變種,例如RS-232標準主要規定了信號的用途、通訊接口以及信號的電平標準。

b6adf230-7d34-11ed-abeb-dac502259ad0.png

在上面的通訊方式中,兩個通訊設備的"DB9接口"之間通過串口信號線建立起連接,串口信號線中使用"RS-232標準"傳輸數據信號。由于RS-232電平標準的信號不能被控制器直接識別,所以這些信號會經過一個"電平轉換芯片"轉換成控制器能識別的"TTL標準"的電平信號,才能實現通訊。

RS232與TTL的電平標準

不平衡傳輸、相對于信號地的單端通訊、全雙工

b6ce1eb6-7d34-11ed-abeb-dac502259ad0.png

RS485 差分信號

為了提高抗干擾特性和增大傳輸距離,RS485采用差分信號進行數據傳輸,是一種半雙工通信方式;

在RS485通信網絡中一般采用的是主從通信方式,即一個主機帶多個從機。

相對于單信號線傳輸的方式,使用差分信號傳輸具有如下優點:


1)抗干擾能力強,當外界存在噪聲干擾時,幾乎會同時耦合到兩條信號線上,而接收端只關心兩個信號的差值,所以外界的共模噪聲可以被完全抵消。

2)能有效抑制它對外部的電磁干擾,同樣的道理,由于兩根信號的極性相反,他們對外輻射的電磁場可以相互抵消,耦合的越緊密,泄放到外界的電磁能量越少。

3)時序定位精確,由于差分信號的開關變化是位于兩個信號的交點,而不像普通單端信號依靠高低兩個閾值電壓判斷,因而受工藝,溫度的影響小,能降低時序上的誤差,同時也更適合于低幅度信號的電路。

由于差分信號線具有這些優點,所以在USB協議、485協議、以太網協議及CAN協議的物理層中,都使用了差分信號傳輸。

2. 協議層

串口通訊的數據包由發送設備通過自身的TXD接口傳輸到接收設備的RXD接口。在串口通訊的協議層中, 規定了通訊邏輯(數據包的內容),它由起始位、主體數據、校驗位以及停止位組成,通訊雙方的數據包格式(幀格式)要約定一致才能正常收發數據;通常兩個設備之間通信要約定好波特率、數據長度、檢驗位和停止位。

b6e5a5b8-7d34-11ed-abeb-dac502259ad0.png

波特率:數據信號對載波的調制速率,串口異步通訊中由于沒有時鐘信號(如DB9接口中是沒有時鐘信號的), 所以兩個通訊設備之間需要約定好波特率,即每個碼元的長度,以便對信號進行解碼。比如波特率為9600bps;代表的就是每秒中傳輸9600bit,也就是相當于每一秒中劃分成了9600等份。【比特率 = 波特率 X 單個調制狀態對應的二進制位數】

起始位:起始位必須是持續一個比特時間的邏輯0電平,標志傳輸一個字符的開始,接收方可用起始位使自己的接收時鐘與發送方的數據同步。

數據位:數據位緊跟在起始位之后,是通信中的真正有效信息。數據位的位數可以由通信雙方共同約定(通常為5、6、7或8位。傳輸數據時先傳送字符的低位,后傳送字符的高位。

校驗位:在有效數據之后,有一個可選的數據校驗位。由于數據通信相對更容易受到外部干擾導致傳輸數據出現偏差, 可以在傳輸過程加上校驗位來解決這個問題。

(1)奇校驗(odd):數據位加上校驗位中的“邏輯高位1”的個數保持為奇數;
(2)偶校驗(even):數據位加上校驗位中的“邏輯高位1”的個數保持為偶數(3)0校驗(space):校驗位永遠是0;

(4)1校驗(mark):校驗位永遠是1;

(5)無校驗(noparity):沒有校驗位。

停止位:由0.5、1、1.5或2個邏輯1的數據位表示,只要雙方約定一致即可。

空閑位:空閑位是指從一個字符的停止位結束到下一個字符的起始位開始,表示線路處于空閑狀態,必須由高電平來填充。

例如,對于16進制數據55aaH,當采用8位數據位、1位停止位傳輸時,它在信號線上的波形如下圖所示。
(先傳第一個字節55,再傳第二個字節aa,每個字節都是從低位向高位逐位傳輸)

b7097920-7d34-11ed-abeb-dac502259ad0.png

b720193c-7d34-11ed-abeb-dac502259ad0.png

3、數據傳輸方向

單工:數據傳輸只支持數據在一個方向上傳輸;

半雙工:允許數據在兩個方向上傳輸,但某一時刻只允許數據在一個方向上傳輸,實際上是一種切換方向的單工通信,不需要獨立的接收端和發送端,兩者可合并為一個端口;

全雙工:允許數據同時在兩個方向上傳輸,因此全雙工通信是兩個單工方式的結合,需要獨立的接收端和發送端。

b736b7b4-7d34-11ed-abeb-dac502259ad0.png

4、設備間通信


原生的串口通信主要是控制器跟串口的設備或者傳感器通信,不需要經過電平轉換芯片來轉換電平,直接就用TTL電平通信。例如GPS模塊、GSM模塊、串口轉WIFI模塊、HC04藍牙模塊等與控制器之間的通訊。

b75bfa88-7d34-11ed-abeb-dac502259ad0.png

RS232轉TTL,通過電平轉換芯片將 標準 RS232 串口信號轉換為 TTL電平的 RS232 串口信號,不需要安裝驅動。

b783eb88-7d34-11ed-abeb-dac502259ad0.png

USB轉串口(TTL)實現計算機USB接口到物理串口之間的轉換。主要用于設備跟電腦通信,電平轉換芯片一般有CH340、PL2303、CP2102、FT232 使用的時候電腦端需要安裝電平轉換芯片的驅動。

b7b71eea-7d34-11ed-abeb-dac502259ad0.png

串口發送
串口應用發送數據->USB串口驅動獲取數據->驅動將數據經過USB通道發送給USB串口設備->USB串口設備接收到數據通過串口發送

串口接收
USB串口設備接收串口數據->將串口數據經過USB打包后上傳給USB主機->USB串口驅動獲取到通過USB上傳的串口數據->驅動將數據保存在串口緩沖區提供給串口應用讀取

4、USART、UART簡介

通用同步異步收發器(USART,Universal Synchronous Asynchronous Receiver and Transmitter)是一個串行通信設備, 可以靈活地與外部設備進行全雙工數據交換。

通用同步異步收發器(USART,Universal Synchronous Asynchronous Receiver and Transmitter)是一個串行通信設備, 可以靈活地與外部設備進行全雙工數據交換。

通用異步收發器(UART,Universal Asynchronous Receiver and Transmitter), 它是在USART基礎上裁剪掉了同步通信功能,只有異步通信。

數據通信方式包括同步和異步通信,發送方和接收方按照同一個時鐘周期工作就叫同步,發送方和接收方沒有提供時鐘輸出、不按照統一的時鐘周期、而各自按照自己的時鐘周期工作就叫異步。

異步通信時接收方不必一直在意發送方,發送方需要發送信息時會首先給接收方一個信息開始的起始信號,接收方接收到起始信號后就認為后面緊跟著的就是有效信息,才會開始注意接收信息,直到收到發送方發過來的結束標志。串口通信是屬于異步的,這個時候的波特率及數據包規則(幀格式)就顯得很重要了。

5、串口流控

在兩個串口設備間傳輸數據時經常有必要進行數據流控。這可能是受到中間串口通信線路、其中一個設備或者其他存儲介質的限制。異步數據流控通常使用的有兩種方法。

第一種方法通常稱為軟件流控,使用特殊字符開始(XON or DC1)或者停止(XOFF or DC3)數據流。這些字符定義參見 ASCII 碼表。這些碼值在傳輸文本信息時很有用,但不能在未經特殊編程時用于傳輸其他類型的信息。

第二種方法稱作硬件流控,使用RTS和CTS信號線取代特殊字符。當接收方準備好接收數據時會將RTS置為邏輯0以請求對方發送數據,當未準備好時置為邏輯1,因此發送方會通過檢測 CTS 電平狀態判斷是否可以發送數據。

使用硬件流控至少需要連接的信號線有GND、RXD、TXD、RTS、CTS。

使用軟件流控只需要GND、RXD、TXD。

審核編輯 黃昊宇

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

    關注

    14

    文章

    1555

    瀏覽量

    76665
收藏 人收藏

    評論

    相關推薦

    esp32串口控模式和硬件控模式反復切換怎么解決?

    同一個串口在非控模式和硬件控模式之間切換,系統起來首次切換到硬件控模式后esp32與模組串口通訊都正常;如果重新初始化
    發表于 06-13 06:57

    英創Linux工控主板串口硬件控實現方法

      英創Linux工控主板上的串口除了COM2為五線制的串口,其余都為三線制的串口,五線制的串口就是常說的使用了RTS/CTS控的
    發表于 06-12 15:29

    COCOFLY 教程 ——瘋殼無人機·系列·飛控開發基礎【4】串口(光數據獲取)

    ``串口(光獲取)一、光模塊簡介光(optical flow)是指的是空間運動物體在觀察成像平面上的像素運動的瞬時速度。光法是利用圖
    發表于 04-07 18:52

    esp32串口控模式和硬件控模式反復切換問題有什么辦法解決嗎?

    同一個串口在非控模式和硬件控模式之間切換,系統起來首次切換到硬件控模式后esp32與模組串口通訊都正常;如果重新初始化
    發表于 02-10 07:08

    怎么解決esp32串口控模式和硬件控模式反復切換的問題?

    同一個串口在非控模式和硬件控模式之間切換,系統起來首次切換到硬件控模式后esp32與模組串口通訊都正常;如果重新初始化
    發表于 03-03 07:59

    ESP32串口在非控模式和硬件控模式之間反復切換怎么解決?

    同一個串口在非控模式和硬件控模式之間切換,系統起來首次切換到硬件控模式后esp32與模組串口通訊都正常;如果重新初始化
    發表于 03-08 07:33

    英創信息技術主板與帶串口設備的通訊方法

    制,三線制的串口顧名思義,使用了三根線通訊,分別為RX(接收),TX(輸出),GND。而五線制的串口就是常說的使用了RTS/CTS控的串口,在三線制
    的頭像 發表于 01-17 09:36 ?2102次閱讀
    英創信息技術主板與帶<b class='flag-5'>流</b>控<b class='flag-5'>串口</b>設備的通訊方法

    英創信息技術Linux工控主板串口硬件控實現方法

    英創Linux工控主板上的串口除了COM2為五線制的串口,其余都為三線制的串口,五線制的串口就是常說的使用了RTS/CTS控的
    的頭像 發表于 02-04 10:40 ?1459次閱讀
    英創信息技術Linux工控主板<b class='flag-5'>串口</b>硬件<b class='flag-5'>流</b>控實現方法

    串口通信服務器

    串口通信服務器ZLAN5G00A串口服務器是一款機架式16串口RS232/485/422和TCP/IP之間協議轉化器。支持16個RS232串口
    發表于 04-02 09:26 ?1222次閱讀

    串口服務器原理_多串口服務器接線示意圖

    串口服務器是將來源于TCP/IP協議書的數據文件,分析為串口數據分析;于己,還可以將串口數據分析做成TCP/IP協議書的數據文件,以此
    發表于 04-21 11:07 ?2704次閱讀

    關于串口通信控控制

           今天硬件提出與CPLD通信時候,需要將通信引腳配置為
    發表于 12-01 17:21 ?8次下載
    關于<b class='flag-5'>串口</b>通信<b class='flag-5'>流</b>控控制

    stm32串口USART 硬件

    控的概念源于 RS232 這個標準,在 RS232 標準里面包含了串口控的定義。RS232 中的“RS”是Recommend Standard 的縮寫,即”推薦標準“之意,它并不
    發表于 12-24 18:52 ?5次下載
    stm32<b class='flag-5'>串口</b>USART 硬件<b class='flag-5'>流</b>控

    stm32串口USART 硬件控 --學習筆記

    控的概念源于 RS232 這個標準,在 RS232 標準里面包含了串口控的定義。大家一定了解,RS232 中的“RS”是Recommend Standard 的縮寫,即”推薦標準“之意,它并不
    發表于 12-24 18:54 ?7次下載
    stm32<b class='flag-5'>串口</b>USART 硬件<b class='flag-5'>流</b>控 --學習筆記

    JSL-21/5繼電器手冊

    JSL-21/5繼電器品牌:JOSEF約瑟名稱:定時限過繼電器型號:JSL-21/5觸點容量250V10A功率消耗≤6W整定范圍2.0~9.9AJSL-21/
    發表于 04-27 14:16 ?0次下載
    JSL-21/<b class='flag-5'>5</b>過<b class='flag-5'>流</b>繼電器手冊

    大彩串口屏控件教程5 - 串口屏表盤應用

    大彩串口屏控件教程5-串口屏表盤應用
    發表于 04-29 12:48 ?0次下載
    主站蜘蛛池模板: 亚洲精品自在在线观看| 久久精品熟女亚洲AV国产| 午夜福利体检| 麻豆啊传媒app黄版破解免费| 国产精品99久久久久久AV| 5g在视影讯天天5g免费观看| 性xxx免费| 日韩 无码 手机 在线| 免费精品国偷自产在线在线| 狠狠撸亚洲视频| 国产h视频在线观看免费| 99视频在线观看免费| 玉林天天论坛| 亚洲理论在线a中文字幕| 污文啊好棒棒啊好了| 日本国产精品无码一区免费看| 看美女大腿中间的部分| 激情内射亚洲一区二区三区| 国产免费内射又粗又爽密桃视频| 北条麻妃夫の友人196| 99热这里只有精品| 69xx欧美| 2021久久最新国产精品| 在线播放国产视频| 亚洲专区中文字幕视频专区| 小妇人电影免费完整观看2021| 日本阿v直播在线| 琪琪SEE色原网色原网站18| 伦理片天堂eeuss影院2o12| 九九这里有精品| 精品96在线观看影院| 国语自产视频在线| 国产亚洲精品成人AV久久| 国产黄A片在线观看永久免费麻豆| 背着老婆爆操性感小姨子| 草民电影网午夜伦理电影网| qvod在线观看| good神马电影伦理午夜| china男士同性视频tv| 99久久伊人一区二区yy5o99| 69精品国产人妻蜜桃国产毛片|