簡單說說51單片機的串行通信口原理解析,小白來學

2022-05-12     大方老師單片機

原標題:簡單說說51單片機的串行通信口原理解析,小白來學

簡單說說51單片機的串行通信口原理解析小白來學

///插播一條:我自己在今年年初錄製了一套還比較系統的入門單片機教程,想要的同學找我拿就行了免費的,私信我就可以~點我頭像黑色字體加我地球呺也能領取哦。最近比較閒,帶做畢設,帶學生參加省級或以上比///

51單片機的串行通信口原理解析

MCS-51單片機內部有一個全雙工的串行通信口,即串行接收和發送緩衝(SBUF),這兩個在物理上獨立的接收發送器,既可以接收數據也可以發送數據。但接收緩衝器只能讀出不能寫入,而發送緩衝器則只能寫入不能讀出,它們的地址99H。這個通信口既可以用於網絡通信,亦可實現串行異步通信,還可以構成同步移位寄存器使用。如果在傳行口的輸入輸出引腳上加上電平轉換器,就可方便地構成標準RS-232接口。下面我們分別介紹。

[1].基本概念

  數據通信的傳輸方式

  常用於數據通信的傳輸方式有單工、半雙工、全雙工和多工方式。

  單工方式:數據僅按一個固定方向傳送。因而這種傳輸方式的用途有限,常用於串行口的列印數據傳輸與簡單系統間的數據採集。

  半雙工方式:數據可實現雙向傳送,但不能同時進行,實際的應用採用某種協議實現/發開關轉換。

  全雙工方式:允許雙方同時進行數據雙向傳,但一般全雙工傳輸方式的線路和設備較複雜。

  多工方式:以上三種傳輸方式都是用同一線路傳輸一種頻率信號,為了充分地利用線路資源,可通過使用多路復用器或多路集線器,採用頻分、時分或碼分復用技術,即可實現在同一線路上資源共享功能,我們盛之為多工傳輸方式。

  串行數據通信兩種形式

  異步通信

  在這種通信方式中,接收器和發送器有各自的時鐘,它們的工作是異步的,異步通信用一幀來表示一個字符,其內容如下:一個起始位,僅接著是若干個數據位,2是傳45H的數據格式。

  同步通信

  同步通信格式中,發送器和接收器由同一個時鐘源控制,為了克服在異步通信中,每傳輸一幀字符都必須加上起始位和停止位,占用了傳輸時間,在要求傳送數據量較大的場合,速度就慢得多。同步傳輸方式去掉了這些起始位和停止位,只在傳輸數據塊時先送出一個同步()標誌即可。

同步傳輸方式比異步傳輸方式速度快,這是它的優勢。但同步傳輸方式也有其缺點,即它必須要用一個時鐘來協調收發器的工作,所以它的設備也較複雜。

  串行數據通信的傳輸速率

  串行數據傳輸速率有兩個概念,即每秒轉送的位bps(Bit per second)和每秒符號波特(Band rate),在具有數據機的通信中,波特率與調製速率有關。

[2]. MCS-51的串行口和控制寄存器

 串行口控制寄存器

MCS-51單片機串行口寄存器結構如3所示SBUF為串行口的收發緩衝器,它是一個可尋址的專用寄存器,其中包含了接收器和發送器寄存器,可以實現全雙工通信。但這兩個寄存器具有同一地(99H)MCS-51的串行數據傳輸很簡單,只要向發送緩衝器寫入數據即可發送數據。而從接收緩衝器讀出數據即可接收數據。

  此外,從圖中可看出,接收緩衝器前還加上一級輸入移位寄存器MCS-51這種結構目的在於接收數據時避免發生數據幀重疊現象,以免出錯,部分文獻稱這種結構為雙緩衝器結構。而發送數據時就不需要這樣設置,因為發送時CPU是主動的,不可能出現這種現象。

  串行通信控制寄存器

  在上一節我們已經分析SCON控制寄存器,它是一個可尋址的專用寄存器,用於串行數據的通信控制,單元地址98H,其結構格式如下:

1 SCON寄存器結構

SCOND7D6D5D4D3D2D1D0

SM0SM1SM2RENTB8RB8TIRI

  位地9FH9EH8DH9CH9BH9AH99H98H

  下面我們對各控制位功能介紹如下:

(1).SM0SM1:串行口工作方式控制位。

SM0SM1工作方式

000

011

102

113

(2).SM2:多機通信控制位。

  多機通信是工作於方2和方3SM2位主要用於方2和方3。接收狀態,當串行口工作於方23,以SM2=1時,只有當接收到9位數(RB8)1時,才把接收到的8位數據送SBUF,且置RI發出中斷申請,否則會將接受到的數據放棄。SM2=0時,就不管第位數據01,都難得數據送SBUF,並發出中斷申請。

  工作於方0SM2必須0

(3).REN:允許接收位。

REN用於控制數據接收的允許和禁止REN=1時,允許接收REN=0時,禁止接收。

(4).TB8:發送接收數據8

  在方2和方3TB8是要發送9位數據位。在多機通信中同樣亦要傳輸這一位,並且它代表傳輸的地址還是數據TB8=0為數據TB8=1時為地址。

(5).RB8:接收數據8

  在方2和方3RB8存放接收到的9位數據,用以識別接收到的數據特徵。

(6).TI:發送中斷標誌位。

  可尋址標誌位。方0時,發送完8位數據後,由硬體置位,其它方式下,在發送或停止位之前由硬體置位,因此TI=1表示幀發送結束TI可由軟體0

(7).RI:接收中斷標誌位。

  可尋址標誌位。接收完8位數據後,該位由硬體置位,在其他工作方式下,該位由硬體置位RI=1表示幀接收完成。

  電源管理寄存PCON

PCON主要是CHMOS型單片機的電源控制而設置的專用寄存器,單元地址87H,其結構格式如下:

2 PCON電源管理寄存器結構

PCOND7D6D5D4D3D2D1D0

  位符SMOD---GF1GF0PDIDL

CHMOS型單片機中,SMOD位外,其他位均為虛設的SMOD是串行口波特率倍增位,SMOD=1時,串行口波特率加倍。系統復位默認SMOD=0

  中斷允許寄存IE

  中斷允許寄存器在前一節中已闡述,這裡重述一下對串行口有影響的ESES為串行中斷允許控制位ES=1允許串行中斷ES=0,禁止串行中斷。

文章來源: https://twgreatdaily.com/zh-cn/1ae539489e58b45791564382158eb113.html