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

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

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

51單片機串口通訊-1

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

計算機與外界的信息傳輸常被稱為通信,基本通信方式有并行通信和串行通信兩種。

一、概述

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

圖片

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

圖片

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

(1)同步通信

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

圖片

(2)異步通信

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

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

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

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

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

圖片

二、波特率

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

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

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

圖片

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

圖片

如雙機通信距離在1.5m~15m之間時,且傳輸速率不高,可用RS-232C標準接口實現(xiàn)點對點的雙機通信 。

圖片

RS-422A標準:差分傳輸,共4線,全雙工,最大傳輸率為10Mbit/s,最大傳輸距離可達1219m。

圖片

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

圖片

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

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

圖片

圖片

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

兩個控制寄存器SCON和PCON。

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

圖片

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

圖片

圖片

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

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

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

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

    關(guān)注

    18

    文章

    5931

    瀏覽量

    135722
  • 計算機
    +關(guān)注

    關(guān)注

    19

    文章

    7305

    瀏覽量

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

    關(guān)注

    1

    文章

    41

    瀏覽量

    9292
收藏 人收藏

    評論

    相關(guān)推薦

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

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

    C51單片機串口通訊的硬件電路圖

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

    單片機串口通訊程序

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

    PC與多個51單片機串口通訊

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

    proteus仿真51單片機串口通訊

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

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

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

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

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

    51單片機串口通訊詳解

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

    51單片機串口通信

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

    51單片機串口通信

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

    51單片機串口通訊實驗2+Proteus仿真

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

    51單片機串口通訊 +Proteus仿真實驗

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

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

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

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

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

    基于AT89C51單片機與PC串口通訊仿真及代碼

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