一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

單片機串口通信知識詳解

哈哈hfgfdf ? 來源:嵌入式學(xué)習(xí)資料 ? 作者:嵌入式學(xué)習(xí)資料 ? 2022-12-13 16:35 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

串口通訊(Serial Communication)是一種設(shè)備間非常常用的串行通訊方式,因為它簡單便捷,因此大部分電子設(shè)備都支持該通訊方式,其通訊協(xié)議可分層為協(xié)議層和物理層。

12ede6de-7ac1-11ed-abeb-dac502259ad0.png

1、串行通信概念

串行通信:將數(shù)據(jù)字節(jié)分成一位一位的形式在一條傳輸線上逐個傳送,示意圖如下

133927e8-7ac1-11ed-abeb-dac502259ad0.png

1.1、通訊特點

傳輸線少、長距離傳輸時成本低,且可以利用電話線網(wǎng)等現(xiàn)成的設(shè)備,但數(shù)據(jù)的傳輸控制比并行通信復(fù)雜。

1.2、異步通信和同步通信

異步通信:發(fā)送設(shè)備與接收設(shè)備使用自己各自的時鐘控制數(shù)據(jù)的發(fā)送和接收過程。為使雙方的收發(fā)協(xié)調(diào),要求發(fā)送和接收設(shè)備的時鐘盡可能一致。

13525164-7ac1-11ed-abeb-dac502259ad0.jpg

異步通信是以字符為單位進(jìn)行傳輸,字符與字符之間的間隙是任意的,但是每個字符之間的詩是以固定的“位間隙”的整數(shù)倍的關(guān)系。

137322cc-7ac1-11ed-abeb-dac502259ad0.jpg

同步通信:同步通信時要建立發(fā)送方時鐘對接收方時鐘的控制,是雙方達(dá)到同步得效果。此時傳輸數(shù)據(jù)的位之間的距離均為“位間隙"的整數(shù)倍,同時傳輸?shù)淖址姴涣糸g隙,即保持同步關(guān)系。

2、串行通信的傳遞方向

串行通信的傳輸方向:單工、半雙工、全雙工

1.2、單工

單工是指數(shù)據(jù)傳輸僅沿一個方向,不能實現(xiàn)反向傳輸。

1.2、半雙工

半雙工是指數(shù)據(jù)傳輸可以沿兩個方向,但需要分時進(jìn)行。

1.2、全雙工

全雙工是指數(shù)據(jù)同時進(jìn)行雙向傳輸

3、信號的調(diào)制與解調(diào)

利用調(diào)制器把數(shù)字信號轉(zhuǎn)換成模擬信號,然后送到通信線路上去,再由解調(diào)器把從通信線路上收到的模擬信號換成數(shù)字信號。

由于傳輸是雙向的,調(diào)制器和解調(diào)器合并在一個裝置中,這就是調(diào)制解調(diào)器MODDEM

4、串行通信鄂錯誤校驗

1)奇偶校驗

在發(fā)送數(shù)據(jù)時,數(shù)據(jù)位尾隨的1位為奇偶校驗位(1或0)。奇校驗時,數(shù)據(jù)中“1”的個數(shù)與校驗位“1”的個數(shù)之和應(yīng)為奇數(shù);偶校驗時,數(shù)據(jù)中“1”的個數(shù)與校驗位“1”的個數(shù)之和應(yīng)為偶數(shù)。接收字符時,對“1”的個數(shù)進(jìn)行校驗,若發(fā)現(xiàn)不一致,則說明傳輸數(shù)據(jù)過程中出現(xiàn)了差錯。

2)代碼和校驗

代碼和校驗是發(fā)送方將所發(fā)數(shù)據(jù)塊求和(或各字節(jié)異或)產(chǎn)生一個字節(jié)的校驗字符,(校驗和)附加到數(shù)據(jù)塊末尾。接收方接收數(shù)據(jù)同時對數(shù)據(jù)塊(除校驗字節(jié)外)求和,(或各字節(jié)異或),將所得的結(jié)果寫發(fā)送方的“校驗和”進(jìn)行比較,

3)循環(huán)冗余校驗


這種校驗是通過某種數(shù)學(xué)運算實現(xiàn)有效信息與校驗位之間的循環(huán)校驗,常用于對磁盤信息的傳輸、存儲區(qū)的完整性校驗等。這種校驗方法糾錯能力強廣泛應(yīng)用于同步通信中。

5、串行口的工作方式

1、方式0


串行接口的工作方式0為移位寄存器I/O方式。在串行口外接移位寄存器以擴展I/O接口,也可以外接串行同步I/O的設(shè)備。

(1)方式0輸出
串行口以方式0發(fā)送時,數(shù)據(jù)以RXD端串行輸出,TXD端輸出同步信號。當(dāng)一個數(shù)據(jù)寫入串行口發(fā)送緩沖器以后,就啟動串行口發(fā)送器以振蕩頻率的十二分之一的波特率,將數(shù)據(jù)從RXD端串行輸出。

(2)方式0輸入
當(dāng)串行口定義為方式0并置位REN后,便啟動串行口以方式0接收數(shù)據(jù),此時RXD端為數(shù)據(jù)輸入端,TXD端為同步脈沖信號輸出端。接收器以振蕩率的十二分之一的波特率接收RXD端輸入的數(shù)據(jù)信息 7a686964616fe59b9ee7ad9431333332396234。但接收器接收到8位數(shù)據(jù)時,置1中斷標(biāo)志RI。


(3)方式0接收與發(fā)送電路

2、方式1


串行接口定義為工作方式1時,則被控制為8位的異步通訊接口,傳送一幀信息為10位,其中1位為起始位,8位數(shù)據(jù)位(先低位后高位),1位停止位。

13917588-7ac1-11ed-abeb-dac502259ad0.png

(1)方式1輸出
串行接口以方式1發(fā)送時,數(shù)據(jù)由TXD端輸出。CPU執(zhí)行一條數(shù)據(jù)寫入發(fā)送緩沖
器SBUF的指令(例如,MOVSBUF,A),數(shù)據(jù)字節(jié)寫入SBUF后,便啟動串行口發(fā)送器發(fā)送,發(fā)送完一幀信息,置1放送中斷標(biāo)志TI

13c18570-7ac1-11ed-abeb-dac502259ad0.png

(2)方式1輸入
串行口以方式1接收時,數(shù)據(jù)從RXD端輸入。在REN置1以后,就允許接收器接收。接收器以所建立的波特率的16倍分頻計數(shù)器,以便實現(xiàn)時間同步。

13f8a65e-7ac1-11ed-abeb-dac502259ad0.png

計數(shù)器的16個狀態(tài)把一位的時間等分成16份,在每位時間的第7、8和9個計數(shù)狀態(tài),位檢測器采樣RXD的值,接收的值是3次采樣中取至少二次相同的值,以排除噪聲的干擾。

如果在起始接收的值不是0,則起始位無效,復(fù)位接收電路。在檢測到另一個1到0的跳變時,再重新啟動接收器。如果接收到值為0,起始位有效,則開始接收本幀的其余信息。

當(dāng)RI=0并且接收到的停止位為1(或SM2=0)時,停止位進(jìn)入RB8,接收到的8位數(shù)據(jù)進(jìn)入接收緩沖器SBUF,置位RI中斷標(biāo)志。接著接收便搜索另一幀信息的起始位。
3、方式2和方式3
串行接口工作方式2和方式3時,則被定義為9位的異步通信接口。傳送一幀信息為11位,其中1位起始位,8位數(shù)據(jù)位(從低位至高位),1位是附加的可程控為1或0的第9位數(shù)據(jù),1位停止位。

方式2和方式3的差別僅僅在于波特率不一樣,方式2的波特率是固定的,波特率為2SMOD/64(振蕩頻率);方式3的波特率是可變的,波特率=2SMOD/32(T1的溢出率)。
方式2和方式3在發(fā)送和接收時唯一的區(qū)別就是波特率不同。
(1)方式2和方式3發(fā)送
方式2或方式3發(fā)送時,數(shù)據(jù)由TXD端輸出,發(fā)出一幀信息為11位,附加的第9位數(shù)據(jù)是SCON中的TB8,CPU執(zhí)行一條數(shù)據(jù)寫入發(fā)送緩沖器SBUF的指令,就啟動發(fā)送器發(fā)送,發(fā)送完一幀信息,置“1”TI中斷標(biāo)志。

14239d32-7ac1-11ed-abeb-dac502259ad0.png

(2)方式2和方式3接收
串行口被定義為方式2或方式3接收時,數(shù)據(jù)從RXD端輸入,置REN=1以后,開始接收過程。當(dāng)檢測到RXD端從高到低的負(fù)跳變時,確認(rèn)起始位有效,開始接收本幀的其余信息。

144dbed2-7ac1-11ed-abeb-dac502259ad0.png

在接收完一幀信息后,在RI=0、SM2=0時,或接收到第9位數(shù)據(jù)為“1”時,8位數(shù)據(jù)裝入接收緩沖器,第9位數(shù)據(jù)裝入SCON中RB8,并置RI=1。若不滿足上述的兩個條件,接收到的信息將會丟失,也不置位RI

6、單片機的串口通信

6.1、點對點通信

14769dd4-7ac1-11ed-abeb-dac502259ad0.png

6.2、多機通信

單片機構(gòu)成的多機系統(tǒng)常采用總線型主從式結(jié)構(gòu)。所謂主從式,即在數(shù)個單片機中,有一個是主機,其余的是從機,從機.要服從主機的調(diào)度、支配。

80C51單片機的串行口方式2和方式3適于這種主從式的通信結(jié)構(gòu)。當(dāng)然采用不同的通信標(biāo)準(zhǔn)時,還需進(jìn)行相應(yīng)的電平轉(zhuǎn)換,有時還要對信號進(jìn)行光電隔離。在實際的多機應(yīng)用系統(tǒng)中,常采用RS-485串行標(biāo)準(zhǔn)總線進(jìn)行數(shù)

148f8164-7ac1-11ed-abeb-dac502259ad0.png

審核編輯黃昊宇

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

    關(guān)注

    34

    文章

    1640

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    英銳恩精選筆記UART串口通信#單片機開發(fā)#單片機芯片#UART串口通信#單片機

    單片機
    英銳恩科技
    發(fā)布于 :2025年05月15日 16:09:05

    C51單片機及C語言知識點必備秘籍

    單片機關(guān)鍵知識點一覽: 系列一 1:單片機簡敘 2:單片機引腳介紹 3:單片機存儲器結(jié)構(gòu) 4:第一個
    發(fā)表于 05-15 14:00

    瑞薩Cortext-M85內(nèi)核RA8系列單片機串口輸出實現(xiàn)方法

    串口是最常見的通信方式之一,也是單片機調(diào)試最常見的通信接口,也是現(xiàn)在的單片機必備的通信接口,目前
    的頭像 發(fā)表于 03-21 09:58 ?1056次閱讀
    瑞薩Cortext-M85內(nèi)核RA8系列<b class='flag-5'>單片機</b>的<b class='flag-5'>串口</b>輸出實現(xiàn)方法

    單片機中斷技術(shù)詳解

    在現(xiàn)代電子設(shè)備中,單片機作為控制核心發(fā)揮著舉足輕重的作用。而在其高效運作的背后,中斷機制是推動單片機實現(xiàn)實時響應(yīng)與高效執(zhí)行的關(guān)鍵因素。本文將深入探討單片機中的中斷概念、中斷系統(tǒng)的結(jié)構(gòu)、中斷處理過程及其重要性,揭示這一機制如何提升
    的頭像 發(fā)表于 02-02 15:57 ?971次閱讀

    LabVIEW與單片機無法串口通信 提示串口打開錯誤 端口設(shè)置有問題嗎?

    0xBFFF0000) 未知系統(tǒng)錯誤(其它錯誤)。 重啟計算機也無法解決這個錯誤。 通過虛擬串口,LabVIEW與串口助手通信正常, 單片機串口
    發(fā)表于 12-06 22:28

    基于51單片機的多路溫度檢測調(diào)節(jié)及串口顯示

    ,利用虛擬串口模塊實時將平均溫度值實現(xiàn)串口顯示。仿真演示視頻:基于51單片機的多路溫度檢測調(diào)節(jié)及串口顯示-仿真視頻設(shè)計介紹 51單片機
    的頭像 發(fā)表于 10-22 14:13 ?868次閱讀
    基于51<b class='flag-5'>單片機</b>的多路溫度檢測調(diào)節(jié)及<b class='flag-5'>串口</b>顯示

    基于51單片機的遙控開關(guān)仿真(雙機通信)

    單片機最小系統(tǒng)、繼電器及LED燈構(gòu)成;(4)由于仿真無法模擬無線模塊通信,故利用單片機RXD、TXD端口模擬,通過遙控器的開關(guān)實現(xiàn)對主機LED燈的控制,實現(xiàn)LED燈的點亮及熄滅。仿真演示視頻:基于51
    的頭像 發(fā)表于 10-22 14:12 ?825次閱讀
    基于51<b class='flag-5'>單片機</b>的遙控開關(guān)仿真(雙機<b class='flag-5'>通信</b>)

    如何實現(xiàn)51單片機與PC的串行通信

    51單片機與PC的串行通信是一種常見的通信方式,它允許單片機通過串行接口與PC進(jìn)行數(shù)據(jù)交換。
    的頭像 發(fā)表于 10-21 11:35 ?2667次閱讀

    單片機怎么寫入程序

    程序通常涉及以下幾個步驟: 選擇單片機和開發(fā)環(huán)境 : 確定項目需求,選擇合適的單片機型號。 安裝相應(yīng)的開發(fā)環(huán)境,如Keil、IAR、MPLAB等。 硬件連接 : 將單片機連接到開發(fā)板或自制的電路板上。 使用USB轉(zhuǎn)
    的頭像 發(fā)表于 10-21 11:21 ?2445次閱讀

    單片機SPI通信實現(xiàn)

    在深入探討單片機(如基于STM32、AVR、PIC等)如何通過SPI(Serial Peripheral Interface)進(jìn)行通信之前,我們先概述SPI通信的基本原理,隨后以STM32微控制器為例,詳細(xì)解釋如何配置SPI接口
    的頭像 發(fā)表于 09-09 17:00 ?1658次閱讀

    十天學(xué)會單片機可能嗎?單片機入門需要多久?

    學(xué)習(xí)單片機的過程,就像學(xué)習(xí)任何其他技能一樣,不僅在于書本上的知識,更在于實踐和應(yīng)用的能力。許多人可能會問:十天能學(xué)會單片機嗎?答案是:可以,但這取決于你所定義的“學(xué)會”到什么程度。首先,讓我們明確
    的頭像 發(fā)表于 09-05 08:00 ?2476次閱讀
    十天學(xué)會<b class='flag-5'>單片機</b>可能嗎?<b class='flag-5'>單片機</b>入門需要多久?

    單片機燒錄程序的串口線怎么連接

    線類型 串口線是用于連接單片機和計算機的數(shù)據(jù)線,主要有以下幾種類型: RS-232串口線 :是最傳統(tǒng)的串口線,使用9針或25針的D-sub接口,傳輸距離較近,一般用于短距離
    的頭像 發(fā)表于 09-02 09:50 ?4069次閱讀

    第19.1 章-星瞳科技 OpenMV視覺循跡功能 超詳細(xì)OpenMV與STM32單片機通信

    第19.1 章-[星瞳科技]OpenMV視覺循跡功能 超詳細(xì)OpenMV與STM32單片機通信 (有完整版源碼) 【星曈科技】OpenMv筆記——利用OpenMV與STM32進(jìn)行串口通信
    的頭像 發(fā)表于 08-20 11:41 ?1706次閱讀
    第19.1 章-星瞳科技 OpenMV視覺循跡功能 超詳細(xì)OpenMV與STM32<b class='flag-5'>單片機</b><b class='flag-5'>通信</b>

    一文讀懂什么單片機:組成結(jié)構(gòu)與應(yīng)用

    歡迎來到單片機的世界,這是一種微小(但功能強大)的設(shè)備,改變了嵌入式系統(tǒng)的面貌。在本文中,您將了解單片機的一些基本知識、單片機的結(jié)構(gòu)以及微處理器與
    的頭像 發(fā)表于 08-09 11:49 ?2409次閱讀
    一文讀懂什么<b class='flag-5'>單片機</b>:組成結(jié)構(gòu)與應(yīng)用

    藍(lán)牙模塊如何實現(xiàn)單片機和手機端數(shù)據(jù)互傳

    ZX-D30、ZX-D37、ZX-D32等。 藍(lán)牙模塊設(shè)置 : 將藍(lán)牙模塊與單片機連接。通常,藍(lán)牙模塊通過串口(UART)與單片機通信。 設(shè)置藍(lán)牙模塊的工作模式和參數(shù),例如波特率、名稱
    的頭像 發(fā)表于 07-24 17:59 ?5636次閱讀
    藍(lán)牙模塊如何實現(xiàn)<b class='flag-5'>單片機</b>和手機端數(shù)據(jù)互傳