在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

串行通訊講解與分析

嵌入式悅翔園 ? 來源:嵌入式悅翔園 ? 作者:嵌入式悅翔園 ? 2022-11-21 11:53 ? 次閱讀

前言

最近在做一個通過ESP8266STM32通訊從而實現(xiàn)遠(yuǎn)程控制,中間需要用到串口來發(fā)送報文,通過報文來實現(xiàn)兩者之間的通訊。

今天剛好趁著這個機(jī)會來給大家講解一下串行通訊,希望能給大家以后的學(xué)習(xí)提供一些思路。

串行通訊介紹

串口通信線最少需要2根(GND和信號線),可以實現(xiàn)單工通信,也可以使用3根通信線(Tx、Rx、GND)來實現(xiàn)全雙工。

通過串口不管發(fā)數(shù)字、文本還是命令,都要先對發(fā)送內(nèi)容進(jìn)行編碼,編碼成二進(jìn)制再進(jìn)行逐個位的發(fā)送。我們使用串口發(fā)送的一般都是字符,都是ASCII碼編碼后的字符,所以一般設(shè)置數(shù)據(jù)位都是8,方便剛好一幀發(fā)送1個字符。

那么現(xiàn)在我們就知道了,如果我們想要串口進(jìn)行通訊,我們首先需要將我們想要發(fā)送的信息轉(zhuǎn)換成為ASCII碼,再通過串口線將信息以二進(jìn)制的形式發(fā)送出去。

UART作為異步串口通信協(xié)議的一種,工作原理是將傳輸數(shù)據(jù)的每一個字符一位一位地傳輸,也就是我們上面說的ASCII碼編碼。其中每一位(bit)的意義如下:

起始位:先發(fā)出一個邏輯“0”的信號,表示傳輸字符開始。

數(shù)據(jù)位:緊接著起始位之后。數(shù)據(jù)位的個數(shù)可以是4、5、6、7、8等,構(gòu)成一個字符。

奇偶校驗位:數(shù)據(jù)位加上這一位后,使得“1”的位數(shù)應(yīng)為偶數(shù)(偶校驗)或奇數(shù)(奇校驗),依次來校驗數(shù)據(jù)傳送的正確性。

停止位:它是一個字符數(shù)據(jù)的結(jié)束標(biāo)志??梢允?位、1.5位、2位的高電平。

空閑位:處于邏輯“1”狀態(tài),表示當(dāng)前線路上沒有數(shù)據(jù)傳輸。

其中數(shù)據(jù)位通常采用ASCII碼。從最低位開始傳送,靠時鐘定位。

1a2ceeaa-694f-11ed-8abf-dac502259ad0.png

串行數(shù)據(jù)傳輸?shù)幕灸J?/p>

二進(jìn)制脈沖用于串行數(shù)據(jù)傳輸中的數(shù)據(jù)傳輸。二進(jìn)制數(shù)字一由五伏或高邏輯表示。相反,二進(jìn)制零表示為邏輯低電平或零伏。為了實現(xiàn)串行通信,需要源和目標(biāo)。他們也被稱為發(fā)送者和接收者??梢圆捎酶鞣N類型的串行通信,并指定為單工、半雙工和全雙工。

Simplex 方法單向數(shù)據(jù)傳輸。在此方案中,在任何給定時間只有源或目標(biāo)處于活動狀態(tài)。如果源正在發(fā)送數(shù)據(jù),接收方別無選擇,只能接受傳輸。廣播電視或無線電信號時使用單工模式。

半雙工模式允許源和目標(biāo)都處于活動狀態(tài),但不能同時處于活動狀態(tài)。傳輸一次只發(fā)生在一個方向。使用互聯(lián)網(wǎng)時可以看到一個恰當(dāng)?shù)睦?。?dāng)您從計算機(jī)發(fā)出網(wǎng)頁請求時,服務(wù)器會處理該請求。然后,當(dāng)將信息返回到您的計算機(jī)(現(xiàn)在是接收方)時,它就成為發(fā)送方。

全雙工模式是世界上使用最廣泛的串行通信形式。源和目標(biāo)都處于活動狀態(tài),可以同時發(fā)送和接收數(shù)據(jù)。您的智能手機(jī)是全雙工模式實際應(yīng)用的典型示例。

討論串行通信時的另一個考慮因素是兩臺主機(jī)的協(xié)議和字節(jié)順序。字節(jié)順序是指使用特定的內(nèi)存地址來存儲數(shù)據(jù)的方法。這是將數(shù)據(jù)存儲在特定內(nèi)存地址的方式。關(guān)于數(shù)據(jù)對齊字節(jié)序有兩種分類。

UART串口通信的工作原理

(1)發(fā)送數(shù)據(jù)過程

空閑狀態(tài),線路處于高電平;當(dāng)收到發(fā)送指令后,拉低線路的一個數(shù)據(jù)位的時間T,接著數(shù)據(jù)按低位到高位依次發(fā)送,數(shù)據(jù)發(fā)送完畢后,接著發(fā)送奇偶校驗位和停止位,一幀數(shù)據(jù)發(fā)送完成。

(2)數(shù)據(jù)接收過程:

空閑狀態(tài),線路處于高電平;當(dāng)檢測到線路的下降沿(高電平變?yōu)榈碗娖剑r說明線路有數(shù)據(jù)傳輸,按照約定的波特率從低位到高位接收數(shù)據(jù),數(shù)據(jù)接收完畢后,接著接收并比較奇偶校驗位是否正確,如果正確則通知后續(xù)設(shè)備接收數(shù)據(jù)或存入緩沖。

1a780c28-694f-11ed-8abf-dac502259ad0.png

串行通訊和并行通訊

在常見的通訊中有兩種基本的數(shù)據(jù)傳輸形式,分別是并行和串行通信。串行通信是逐位進(jìn)行數(shù)據(jù)傳輸。它基本上使用兩根電線,一根用于發(fā)送器,另一根用于接收器。

串行通信:計算機(jī)與I/O設(shè)備之間,同一時刻,只能傳輸一個bit位的信號。傳輸數(shù)據(jù)按順序依次一bit位接一bit位進(jìn)行傳輸,通常數(shù)據(jù)在一根數(shù)據(jù)線或一對差分線上傳輸。

比如,當(dāng)傳輸1字節(jié)信息時,并行通訊有8根信號線實現(xiàn)同時傳輸,假如耗時為1T,而串行是在一根信號線上,把數(shù)據(jù)排成一行、一位一位傳輸,需要傳8次,因此耗時為8T。

1a9074d4-694f-11ed-8abf-dac502259ad0.png

并行通信:計算機(jī)與I/O設(shè)備之間,通過多條傳輸線,可以同時傳輸多個bit位的信號。

并行通訊的效率高,但是成本高、對信號線路要求高,一般應(yīng)用于快速設(shè)備之間近距離傳輸,譬如CPU 與存儲設(shè)備、存儲器與存儲器、主機(jī)與打印機(jī)等都采用并行通訊。

串行通訊效率較低,但是對信號線路要求低,抗干擾能力強(qiáng),同時成本也相對較低,一般用于計算機(jī)與計算機(jī)、計算機(jī)與外設(shè)之間遠(yuǎn)距離通訊。

1aa343ca-694f-11ed-8abf-dac502259ad0.png

單片機(jī)中的串口通訊

大家需要注意這里的串口通訊和我們上面談到的串行通訊不是一個東西,串口通訊是串行通訊中的一種,在單片機(jī)調(diào)試中非常常見,也是學(xué)習(xí)單片機(jī)必須進(jìn)行學(xué)習(xí)的知識,這里我們以單片機(jī)中常用的RS-232串口來進(jìn)行講解。

1ab9c1ea-694f-11ed-8abf-dac502259ad0.png

在上面的通訊方式中,兩個通訊設(shè)備之間通過串口信號線建立起連接,串口信號線中使用"RS-232標(biāo)準(zhǔn)"傳輸數(shù)據(jù)信號。由于RS-232電平標(biāo)準(zhǔn)的信號不能直接被控制器直接識別,所以這些信號會經(jīng)過一個"電平轉(zhuǎn)換芯片"轉(zhuǎn)換成控制器能識別的"TTL校準(zhǔn)"的電平信號,才能實現(xiàn)通訊。

我們知道常見的電子電路中常使用TTL的電平標(biāo)準(zhǔn),理想狀態(tài)下,使用5V表示二進(jìn)制邏輯1,使用0V表示邏輯0;而為了增加串口通訊的遠(yuǎn)距離傳輸及抗干擾能力,它使用-15V表示邏輯1,+15V表示邏輯0。

1ad61804-694f-11ed-8abf-dac502259ad0.png

因為控制器一般使用TTL電平標(biāo)準(zhǔn),所以常常會使用CH340芯片對TTL及RS-232電平的信號進(jìn)行互相轉(zhuǎn)換。

1af5a91c-694f-11ed-8abf-dac502259ad0.png

分析串口通訊波形

在分析波形之前我們先來看一些基礎(chǔ)概念,這樣有利于我們對波形的分析:

起始位:先發(fā)出一個邏輯”0”的信號,表示傳輸數(shù)據(jù)的開始。

校驗位:數(shù)據(jù)位加上這一位后,使得“1”的位數(shù)應(yīng)為偶數(shù)(偶校驗)或奇數(shù)(奇校驗),以此來校驗數(shù)據(jù)傳送的正確性。就比如傳輸“A”(01000001)為例。(字符‘A’的二進(jìn)制是 0100 0001)此位還可以去除,即不需要奇偶校驗位。

當(dāng)為奇數(shù)校驗:”A”字符的8個bit位中有兩個1,那么奇偶校驗位為1才能滿足1的個數(shù)為奇數(shù)(奇校驗)。

當(dāng)為偶數(shù)校驗:”A”字符的8個bit位中有兩個1,那么奇偶校驗位為0才能滿足1的個數(shù)為偶數(shù)(偶校驗)。

停止位:它是一幀數(shù)據(jù)的結(jié)束標(biāo)志??梢允?bit、1.5bit、2bit的空閑電平。

空閑位:沒有數(shù)據(jù)傳輸時線路上的電平狀態(tài),為邏輯1。

傳輸方向:即數(shù)據(jù)是從高位(MSB)開始傳輸還是從低位(LSB)開始傳輸。

uart數(shù)據(jù)傳輸格式:剛開始傳輸一個起始位——傳輸數(shù)據(jù)位——校驗位(可不需要此位)——停止位。這樣一幀的數(shù)據(jù)就傳輸完了。接下來接著像這樣一直傳送。

波形1

用串口工具發(fā)送0XD6,即二級制 1101 0110 ,在示波器上如此顯示。

串口設(shè)置:波特率9600,停止位1位,無奇偶校驗位。

波形如圖所示:

1b10cdb4-694f-11ed-8abf-dac502259ad0.png

由示波器可以看出,最左邊一個低電平表示0,起始位;然后依次是0110 1011,正好和發(fā)送的數(shù)據(jù)最高位和最低位反過來,至于為什么會反過來我們上面也介紹過了,相比大家也能夠理解。

波形2

用串口發(fā)送0x75,就是二進(jìn)制 0111 0101,如下圖所示。

串口設(shè)置:波特率9600,停止位1位,無奇偶校驗位。

1b73c950-694f-11ed-8abf-dac502259ad0.png

同理,最左側(cè)的為起始位,低電平0, 然后LSB傳輸。1010 1110依次傳輸?shù)绞静ㄆ鳌?/p>

波形3

用串口發(fā)送0x75,就是二進(jìn)制 0111 0101,

串口設(shè)置:波特率9600,停止位1位,奇校驗。

1bf66f0e-694f-11ed-8abf-dac502259ad0.png

奇校驗就是要保證這一幀里的所有BIT 有1的數(shù)為奇數(shù),0x75已經(jīng)有5個1了,所以奇偶校驗位為0即可。

如果為偶校驗,那么最后一位應(yīng)該是高電平1,就會有6個1,以此保證所有的1的數(shù)量為偶數(shù)。

波形4

連發(fā)發(fā)送兩個16進(jìn)制數(shù)據(jù)0x75(0111 0101) 0x6B (0110 1011)

串口設(shè)置:波特率9600,停止位1位,無奇偶校驗位。

1c6ac3a4-694f-11ed-8abf-dac502259ad0.png

結(jié)語

當(dāng)然串行通訊不僅這一種,還是很多其他的例如I2C、SPI、CAN等,大家可以多了解一下,每個通訊方法都有著自己的通訊協(xié)議,我們?nèi)绻胍褂玫脑捫枰鶕?jù)自己實際需求,選擇合適的通訊方式。

審核編輯 :李倩

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 數(shù)據(jù)傳輸
    +關(guān)注

    關(guān)注

    9

    文章

    2009

    瀏覽量

    65815
  • 通信
    +關(guān)注

    關(guān)注

    18

    文章

    6184

    瀏覽量

    137495
  • 串口
    +關(guān)注

    關(guān)注

    14

    文章

    1586

    瀏覽量

    79346

原文標(biāo)題:串行通訊講解與分析,看了就明白了!

文章出處:【微信號:嵌入式悅翔園,微信公眾號:嵌入式悅翔園】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦
    熱點推薦

    第十三章 通訊的基本概念

    本章介紹通訊基本概念,包括串行/并行、全雙工/半雙工/單工、同步/異步通訊,還提及通訊速率中比特率與波特率的概念。
    的頭像 發(fā)表于 05-22 17:29 ?1119次閱讀
    第十三章 <b class='flag-5'>通訊</b>的基本概念

    RS485串行通信協(xié)議介紹

    在上期我們介紹了RS232串行通訊,本期我們將進(jìn)一步深入探討另一種廣泛應(yīng)用于工業(yè)自動化和數(shù)據(jù)通信領(lǐng)域的串行通信標(biāo)準(zhǔn)——RS485。
    的頭像 發(fā)表于 05-15 11:42 ?368次閱讀
    RS485<b class='flag-5'>串行</b>通信協(xié)議介紹

    一看就懂!動畫圖解常見串行通訊協(xié)議:SPI、I2C、UART、紅外

    通過UART來調(diào)試MCU 圖1.3.2:RS-232通過電平轉(zhuǎn)換芯片與MCU通訊 四、紅外控制 圖1.4.1:紅外控制信號也是一個串行通訊信號 圖1.4.2:紅外信號接收與放大整形電路 圖1.4.3
    發(fā)表于 02-10 11:45

    一文解讀MCU與電腦的通訊方式-串口

    你這個小板子和電腦通訊,做個上位機(jī),最常用的接口是什么?我想大家閉眼說-串口! 串口是什么? 串行接口(Serial port),也稱串行接口或串行端口,
    的頭像 發(fā)表于 01-13 09:36 ?1007次閱讀
    一文解讀MCU與電腦的<b class='flag-5'>通訊</b>方式-串口

    JDSU Xgig1000 12G SAS/SATA 分析儀應(yīng)對高速串行總線挑戰(zhàn)的理想平臺

    Xgig SAS/SATA分析儀是一款非常重要的工具設(shè)備,它擁有先進(jìn)的性能和專家分析功能,使其成為應(yīng)對高速串行總線挑戰(zhàn)的理想平臺
    的頭像 發(fā)表于 11-22 11:10 ?674次閱讀
    JDSU Xgig1000 12G SAS/SATA <b class='flag-5'>分析</b>儀應(yīng)對高速<b class='flag-5'>串行</b>總線挑戰(zhàn)的理想平臺

    運放概述、案例講解、運算分析

    運放概述案例講解運算分析 一:基本概念 反向放大器 優(yōu)點:兩個輸入端電位始終近似為零(同相端接地,反相端虛地),只有差模信號,抗干擾能力強(qiáng); 缺點:輸入阻抗很小,等于信號到輸入端的串聯(lián)電阻的阻值
    的頭像 發(fā)表于 11-16 11:42 ?1890次閱讀
    運放概述、案例<b class='flag-5'>講解</b>、運算<b class='flag-5'>分析</b>

    【驅(qū)動教程】iTOP-RK3568開發(fā)板進(jìn)行講解第十三期,主要講解輸入子系統(tǒng),共計24 講

    驅(qū)動視頻全新升級,并持續(xù)更新~更全,思路更科學(xué),入門更簡單。 迅為基于iTOP-RK3568開發(fā)板進(jìn)行講解,本次更新內(nèi)容為第十三期,主要講解輸入子系統(tǒng),共計24 講。 學(xué)習(xí)鏈接 本期視頻教程已上傳至
    發(fā)表于 10-11 11:31

    串行接口PCB設(shè)計指南:優(yōu)化布局與布線策略

    、RS485、SPI為例,介紹這些接口的特點和應(yīng)用。 1、RS232接口 RS232接口是美國電子工業(yè)協(xié)會(EIA)制定的一種串行物理接口標(biāo)準(zhǔn), 用于數(shù)據(jù)終端設(shè)備(DTE)和數(shù)據(jù)通訊設(shè)備(DCE)之間的串行
    發(fā)表于 09-18 12:02

    電感技術(shù)的講解

    詳細(xì)講解電感的原理及計算
    的頭像 發(fā)表于 09-06 02:07 ?2847次閱讀
    電感技術(shù)的<b class='flag-5'>講解</b>

    TI電量計通訊異常的分析經(jīng)驗

    電子發(fā)燒友網(wǎng)站提供《TI電量計通訊異常的分析經(jīng)驗.pdf》資料免費下載
    發(fā)表于 08-23 10:12 ?1次下載
    TI電量計<b class='flag-5'>通訊</b>異常的<b class='flag-5'>分析</b>經(jīng)驗

    第14章-藍(lán)牙遙控小車 藍(lán)牙串口通訊講解藍(lán)牙APP遙控小車 藍(lán)牙串口通訊講解

    第14章-藍(lán)牙遙控小車 手把手做藍(lán)牙APP遙控小車 藍(lán)牙串口通訊講解
    的頭像 發(fā)表于 08-21 16:24 ?1289次閱讀
    第14章-藍(lán)牙遙控小車 藍(lán)牙串口<b class='flag-5'>通訊</b><b class='flag-5'>講解</b>藍(lán)牙APP遙控小車 藍(lán)牙串口<b class='flag-5'>通訊</b><b class='flag-5'>講解</b>

    CAN不通訊導(dǎo)致CE電流法測試超標(biāo)整改分析案例

    CAN不通訊導(dǎo)致CE電流法測試超標(biāo)整改分析案例
    的頭像 發(fā)表于 07-05 08:17 ?1430次閱讀
    CAN不<b class='flag-5'>通訊</b>導(dǎo)致CE電流法測試超標(biāo)整改<b class='flag-5'>分析</b>案例

    plc通訊有哪些類型和特點

    控制信號來實現(xiàn)對生產(chǎn)過程的控制。PLC通訊是PLC與外部設(shè)備之間進(jìn)行數(shù)據(jù)交換的過程,是實現(xiàn)工業(yè)自動化的關(guān)鍵技術(shù)之一。本文將詳細(xì)介紹PLC通訊的類型和特點。 一、PLC通訊的類型 串行
    的頭像 發(fā)表于 07-01 10:10 ?1828次閱讀

    頻譜儀測量功能之占用帶寬、時域功率、諧波分析講解

    頻譜儀測量功能之占用帶寬、時域功率、諧波分析講解
    的頭像 發(fā)表于 06-26 14:34 ?2565次閱讀
    頻譜儀測量功能之占用帶寬、時域功率、諧波<b class='flag-5'>分析</b><b class='flag-5'>講解</b>
    主站蜘蛛池模板: 五月天在线婷婷 | 亚洲精品欧洲久久婷婷99 | 天天插天天摸 | 97国内精品久久久久久久影视 | 污视频18高清在线观看 | 国产情侣真实露脸在线最新 | 色男人社区 | 宅宅午夜亚洲精品 | 日本一道高清不卡免费 | 午夜看片在线 | 最好免费高清视频观看韩国 | 68日本xxxxxxxxx xx | brazzers在线播放 | 欧美午夜性刺激在线观看免费 | 人人干天天干 | 性欧美精品久久久久久久 | 亚洲一区视频在线 | 久久这里只有精品免费视频 | 亚洲a区视频| 美女一级免费毛片 | 国产裸露片段精华合集链接 | 久久刺激 | 卡1卡2卡3精品推荐老狼 | 49pao强力在线高清基地 | 综合免费一区二区三区 | 久热草在线| 午夜精品福利在线 | 免费高清在线观看a网站 | 激情丁香网 | 美脚连裤袜老师正在播放 | 你懂的国产 | 你懂得的在线观看免费视频 | 最近2018中文字幕免费看在线 | 色第一页| 奇米7777影视| 亚洲bbb| 五月天婷五月天综合网在线 | 成人免费无毒在线观看网站 | 尻逼久久 | 国产一区二区三区夜色 | 二十年等一人小说在线观看 |