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

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

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

51單片機(jī)串口通訊-1

汽車(chē)電子技術(shù) ? 來(lái)源:嵌入式悅翔園 ? 作者: JamesBin ? 2023-02-17 14:43 ? 次閱讀

計(jì)算機(jī)與外界的信息傳輸常被稱(chēng)為通信,基本通信方式有并行通信和串行通信兩種。

一、概述

并行通信方式指數(shù)據(jù)的各個(gè)二進(jìn)制位在不同的數(shù)據(jù)線(xiàn)上同時(shí)傳輸。并行通信傳輸速度快,效率高,但所需的數(shù)據(jù)線(xiàn)多,成本高,抗干擾能力較差,適用于近距離傳輸。

圖片

串行通信方式指將數(shù)據(jù)拆分成多個(gè)二進(jìn)制位,逐一的在同一條數(shù)據(jù)線(xiàn)上輸出。串行通信雖然傳輸速度較慢,效率較低,但所需的數(shù)據(jù)線(xiàn)少、硬件電路簡(jiǎn)單、抗干擾能力強(qiáng),且適用于遠(yuǎn)距離數(shù)據(jù)傳輸。

圖片

串行通信有同步通信和異步通信兩種基本的通信方式。

(1)同步通信

同步通信是一種連續(xù)的串行傳輸數(shù)據(jù)的通信方式,待發(fā)送的若干個(gè)字符數(shù)據(jù)構(gòu)成一個(gè)數(shù)據(jù)塊,在該數(shù)據(jù)塊前部添加1~2個(gè)同步字符,在數(shù)據(jù)塊的末尾添加校驗(yàn)信息,以此種方式構(gòu)成數(shù)據(jù)幀,以數(shù)據(jù)幀為單位進(jìn)行串行通信。

圖片

(2)異步通信

每一幀由四部分構(gòu)成,分別是起始位、數(shù)據(jù)位、校驗(yàn)位和停止位。起始位是數(shù)據(jù)開(kāi)始傳送的標(biāo)志,用邏輯0表示;數(shù)據(jù)位緊跟起始位,通常是5~8位二進(jìn)制位;校驗(yàn)位用于校驗(yàn)數(shù)據(jù)位是否發(fā)送正確,可以選擇奇校驗(yàn)、偶校驗(yàn)或者不使用校驗(yàn)位。幀和幀之間可以連續(xù),或者加入任意的空閑位,空閑位用邏輯1表示。

按照數(shù)據(jù)傳送方向,串行通信可以分為三個(gè)種類(lèi),分別是單工、半雙工和全雙工。

單工:通信雙方一方固定為發(fā)送方,另一方固定為接收方,數(shù)據(jù)只能是單向傳輸;

半雙工:通信雙方只使用一根數(shù)據(jù)線(xiàn),每一方都有發(fā)送器和接收器,可以在兩個(gè)方向上傳送,但通信雙方不能同時(shí)接收或發(fā)送數(shù)據(jù),只能交替進(jìn)行;

全雙工:通信雙方使用兩根數(shù)據(jù)線(xiàn),分別用于不同方向的數(shù)據(jù)傳輸,通信雙方能夠同時(shí)收發(fā)數(shù)據(jù)。

圖片

二、波特率

波特率是數(shù)據(jù)傳輸速率,指每秒鐘傳送二進(jìn)制位的個(gè)數(shù),單位為bit/s。

波特率是串行通信的重要指標(biāo),波特率越高,串口數(shù)據(jù)傳輸速度越快。

假如設(shè)定波特率為9600bit/s,而數(shù)據(jù)幀由1位起始位、8位數(shù)據(jù)位、1位停止位構(gòu)成,則串口每秒鐘最多傳送9600/(1+8+1)=960個(gè)字節(jié)。

圖片

如果兩個(gè)單片機(jī)相距較短(在1.5m之內(nèi)),串口可直接相連

圖片

如雙機(jī)通信距離在1.5m~15m之間時(shí),且傳輸速率不高,可用RS-232C標(biāo)準(zhǔn)接口實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)的雙機(jī)通信 。

圖片

RS-422A標(biāo)準(zhǔn):差分傳輸,共4線(xiàn),全雙工,最大傳輸率為10Mbit/s,最大傳輸距離可達(dá)1219m。

圖片

RS-485是RS-422A的變型。區(qū)別:RS-422A為全雙工,采用兩對(duì)平衡差分信號(hào)線(xiàn);RS-485為半雙工,采用一對(duì)平衡差分信號(hào)線(xiàn)。RS-485對(duì)于多站互連是十分方便的,很容易實(shí)現(xiàn)多機(jī)通信。RS-485允許最多并聯(lián)32臺(tái)驅(qū)動(dòng)器和32臺(tái)接收器。

圖片

三、串口結(jié)構(gòu)

8051單片機(jī)的串行口主要由數(shù)據(jù)發(fā)送緩沖器SBUF、發(fā)送控制器、輸出控制門(mén)、數(shù)據(jù)接收緩沖器SBUF、接收控制器、輸入移位寄存器、串行口控制寄存器SCON構(gòu)成。

圖片

圖片

有兩個(gè)獨(dú)立的接收、發(fā)送緩沖器SBUF,可同時(shí)發(fā)送、接收數(shù)據(jù)。4兩個(gè)緩沖器共用一個(gè)特殊功能寄存器字節(jié)地址(99H)。

兩個(gè)控制寄存器SCON和PCON。

SCON用于設(shè)定串口通信的工作方式、接收/發(fā)送控制以及串口工作狀態(tài)指示。SCON的字節(jié)地址為0x98,可以進(jìn)行位尋址,格式如下:

圖片

SM0、SM1:串行通信工作方式選擇位。SM0和SM1共4種組合,對(duì)應(yīng)4中工作方式,如下表所示,其中fosc為晶振頻率。

圖片

圖片

SM2:多機(jī)通信控制位,主要用于工作方式2和工作方式3。當(dāng)串行口在多機(jī)通信模式下接收數(shù)據(jù)時(shí):

當(dāng)SM2=0時(shí),將接收到的8位數(shù)據(jù)送入到SBUF中,并產(chǎn)生中斷請(qǐng)求。

若設(shè)置SM2=1,且RB8為0時(shí),不接收主機(jī)發(fā)來(lái)的數(shù)據(jù);只有當(dāng)RB8為1時(shí),才產(chǎn)生中斷請(qǐng)求,并將接收到的前8位數(shù)據(jù)送入SBUF。

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

    關(guān)注

    18

    文章

    6046

    瀏覽量

    136206
  • 計(jì)算機(jī)
    +關(guān)注

    關(guān)注

    19

    文章

    7522

    瀏覽量

    88304
  • 信息傳輸
    +關(guān)注

    關(guān)注

    1

    文章

    42

    瀏覽量

    9352
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    51單片機(jī)串口通訊設(shè)計(jì)

    51單片機(jī)串口通訊設(shè)計(jì) 通信協(xié)議: 第1字節(jié),MSB為1,為第
    發(fā)表于 03-18 16:58 ?3405次閱讀

    C51單片機(jī)串口通訊的硬件電路圖

    51單片機(jī)有一個(gè)全雙工的串行通訊口,所以單片機(jī)和電腦之間可以方便地進(jìn)行串口通訊。進(jìn)行串行
    發(fā)表于 11-17 21:06 ?1.9w次閱讀

    單片機(jī)串口通訊程序

    基于51單片機(jī)單片機(jī)串口通訊程序源代碼
    發(fā)表于 11-16 19:15 ?37次下載

    PC機(jī)與多個(gè)51單片機(jī)串口通訊

    本文描述PC機(jī)與多個(gè)51單片機(jī)串口通訊,在多機(jī)通訊
    發(fā)表于 04-14 16:37 ?9次下載

    proteus仿真51單片機(jī)串口通訊

    proteus仿真51單片機(jī)串口通訊,感興趣的小伙伴們可以瞧一瞧。
    發(fā)表于 11-17 14:50 ?71次下載

    51單片機(jī)串口通訊需要注意的寄存器及51單片機(jī)使用PRINTF的示例程序

    本文檔的主要內(nèi)容詳細(xì)介紹的是51單片機(jī)進(jìn)行串口通訊需要注意的寄存器及51單片機(jī)使用PRINTF的
    發(fā)表于 08-14 17:32 ?2次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b><b class='flag-5'>串口</b><b class='flag-5'>通訊</b>需要注意的寄存器及<b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b>使用PRINTF的示例程序

    如何使用51單片機(jī)進(jìn)行串口通訊的實(shí)現(xiàn)

    單片機(jī)進(jìn)行串口通訊
    發(fā)表于 06-12 17:45 ?7次下載
    如何使用<b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b>進(jìn)行<b class='flag-5'>串口</b><b class='flag-5'>通訊</b>的實(shí)現(xiàn)

    51單片機(jī)串口通訊詳解

    不支持在線(xiàn)調(diào)試功能,所以串口作為一種有效的調(diào)試功能,所以在51單片機(jī)程序開(kāi)發(fā)時(shí),無(wú)法進(jìn)行在線(xiàn)調(diào)試,不妨可以多采用串口來(lái)進(jìn)行調(diào)試。1.
    發(fā)表于 11-11 17:06 ?15次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b><b class='flag-5'>串口</b><b class='flag-5'>通訊</b>詳解

    51單片機(jī)串口通信

    51單片機(jī)串口通信文章目錄51單片機(jī)串口通信串口介紹
    發(fā)表于 11-18 14:06 ?22次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b><b class='flag-5'>串口</b>通信

    51單片機(jī)串口通信

    51單片機(jī)串口通信文章目錄51單片機(jī)串口通信串口介紹
    發(fā)表于 11-21 20:36 ?64次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b><b class='flag-5'>串口</b>通信

    51單片機(jī)串口通訊實(shí)驗(yàn)2+Proteus仿真

    51單片機(jī)串口通訊實(shí)驗(yàn)2+Proteus仿真
    發(fā)表于 11-23 16:36 ?11次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b><b class='flag-5'>串口</b><b class='flag-5'>通訊</b>實(shí)驗(yàn)2+Proteus仿真

    51單片機(jī)串口通訊 +Proteus仿真實(shí)驗(yàn)

    51單片機(jī)串口通訊 +Proteus仿真實(shí)驗(yàn)
    發(fā)表于 11-23 16:36 ?57次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b><b class='flag-5'>串口</b><b class='flag-5'>通訊</b> +Proteus仿真實(shí)驗(yàn)

    單片機(jī)學(xué)習(xí)筆記————51單片機(jī)實(shí)現(xiàn)常用的自定義串口通訊協(xié)議

    單片機(jī)學(xué)習(xí)筆記————51單片機(jī)實(shí)現(xiàn)常用的自定義串口通訊協(xié)議
    發(fā)表于 11-23 17:06 ?37次下載
    <b class='flag-5'>單片機(jī)</b>學(xué)習(xí)筆記————<b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b>實(shí)現(xiàn)常用的自定義<b class='flag-5'>串口</b><b class='flag-5'>通訊</b>協(xié)議

    基于51單片機(jī)串口通訊測(cè)試設(shè)計(jì)資料源程序文件

    基于51單片機(jī)串口通訊測(cè)試設(shè)計(jì)資料源程序文件
    發(fā)表于 04-26 18:19 ?2次下載

    基于A(yíng)T89C51單片機(jī)與PC機(jī)串口通訊仿真及代碼

    基于A(yíng)T89C51單片機(jī)單片機(jī)與PC機(jī)串口通訊仿真仿真及代碼
    發(fā)表于 05-05 10:30 ?4次下載