www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 單片機 > 單片機
[導(dǎo)讀]與串口工作有關(guān)的特殊功能寄存器包括:串口控制寄存器SCON(圖4-18中的TI和RI均是該寄存器中的位)、串口緩沖區(qū)寄存器SBUF和電源控制寄存器PCON(圖4-18中的SMOD是該寄存器中的位)。

與串口工作有關(guān)的特殊功能寄存器包括:串口控制寄存器SCON(圖4-18中的TI和RI均是該寄存器中的位)、串口緩沖區(qū)寄存器SBUF和電源控制寄存器PCON(圖4-18中的SMOD是該寄存器中的位)。

1.串口緩沖區(qū)寄存器SBUF

串口緩沖區(qū)寄存器SBUF的地址是99H,不能按位尋址。雖然串口發(fā)送緩沖區(qū)和接收緩沖區(qū)的名稱均為SBUF,但是在物理上它們是獨立的。

可以通過指令的操作區(qū)分發(fā)送緩沖區(qū)和接收緩沖區(qū)。因為,接收緩沖區(qū)只能被讀出、不能被寫入,而發(fā)送緩沖區(qū)只能被寫入、不能被讀出,所以在指令中,作為目的操作數(shù)的SBUF代表發(fā)送緩沖區(qū),作為源操作數(shù)的SBUF接收緩沖區(qū)。例如,指令“MOV SBUF,A”將累加器A中的數(shù)據(jù)寫入發(fā)送緩沖區(qū);而指令“MOV A,SBUF”則將接收緩沖區(qū)的數(shù)據(jù)讀出并存入累加器A。

MCS-51單片機沒有專門的啟動串口發(fā)送的指令,在滿足串口發(fā)送條件時,任何向SBUF中寫入數(shù)據(jù)的操作都可以啟動串口的數(shù)據(jù)發(fā)送。在串口接收數(shù)據(jù)時,必須及時讀取接收緩沖區(qū)中的數(shù)據(jù),否則其中的數(shù)據(jù)有可能被新接收的數(shù)據(jù)覆蓋而導(dǎo)致丟失。

2.串口控制寄存器SCON和電源控制寄存器PCON

串口控制寄存器SCON用于監(jiān)控串口的工作狀態(tài),其格式見表4-11。SCON中各位的作用如下:

(1)串口中斷請求標志位TI和RI

串口有兩個中斷請求位,分別是發(fā)送中斷請求標志位TI和接收中斷請求標志位RI。

串口每發(fā)送完一個完整的字符幀后,TI被單片機硬件置1,并向CPU發(fā)出中斷請求。單片機的硬件任何時候都不會自動將TI清0。再次發(fā)送數(shù)據(jù)前必須使用指令將TI清0,如指令“CLR TI”。另外,在中斷方式的串口程序設(shè)計中,若不及時將TI清0,單片機將誤認為發(fā)送中斷請求一直存在,從而重復(fù)執(zhí)行串口中斷服務(wù)處理程序。

串口每接收到一個完整字符幀后,RI被單片機硬件置1,以向CPU發(fā)出中斷請求。接收新數(shù)據(jù)前,必須通過指令將RI清0,如指令“CLR RI”。同發(fā)送過程相似,在中斷方式的程序設(shè)計中,為了避免重復(fù)發(fā)出中斷請求,必須及時將RI清0。

另外,TI和RI均可由軟件指令置1和清零0,并且軟件置1對單片機的影響與硬件置1的完全相同。

(2)串口工作方式選擇位SM0和SM1

串口有4種工作方式,由SM0和SM1選擇,見表4-12。在表4-12中:

1)fosc是單片機的晶振頻率,影響串口的數(shù)據(jù)傳輸速度。

2)UART是“Universal Asynchronous Receiver/Transmitter”的縮寫,即通用的異步接收和發(fā)送器。

3)SMOD是電源控制寄存器PCON(見表4-13)的最高位。由表4-12中的波特率計算公式可知,當(dāng)SMOD由0變?yōu)?時,與之相關(guān)的波特率將加倍,因此SMOD又被稱為波特率倍增位。

在表4-12出現(xiàn)了“T1溢出率”,下面將介紹表4-12中“T1溢出率”的計算方法,以及在串口方式1和方式2下,如何利用“T1溢出率”計算串口通信的波特率。

如圖4-18所示,定時/計數(shù)器T1是串口通信的波特率發(fā)生器,此時通常將T1設(shè)置為定時器且工作于工作方式2(自動重裝初值的8位定時器),并屏蔽其中斷。T1溢出率是T1每秒鐘溢出的次數(shù),該次數(shù)與T1的初值有關(guān)。若假設(shè)T1的初值為M,則T1相鄰兩次溢出之間的時間間隔為(256-M)/(12/fosc),因此

式中,fosc為單片機的晶振頻率。

由表4-12和式(4-7)可知,串口的波特率計算方法見表4-14。在串行通信中,發(fā)送端和接收端須使用同樣的波特率。

表4-15給出了常用波特率及其相關(guān)設(shè)置,編程時可以通過查表的方式獲得定時器T1初值。另外,在計算波特率時,若晶振頻率為11.0592MHz,則可以得到精確的T1初值(不會產(chǎn)生小數(shù)值),因此頻率為11.0592MHz的晶振在單片機系統(tǒng)中經(jīng)常被采用。

(3)允許接收位REN

REN是串口接收數(shù)據(jù)允許位,REN=0時禁止串口接收,REN=1時允許接收。該位可以由軟件指令置1或清0。

在串行通信過程中,只有當(dāng)RI=0且REN=1時,才啟動并允許串口接收,接收到的字符幀存入接收緩沖區(qū)。

(4)TB8

在工作方式2和工作方式3中,發(fā)送方TCON寄存器中的TB8將出現(xiàn)在發(fā)送字符幀中,并且位于數(shù)據(jù)位D7之后。另外,在具有一臺主機和多態(tài)從機的多機體通信中,TB8可以作為地址幀/數(shù)據(jù)幀的區(qū)分標志。當(dāng)TB8=1時,字符幀的數(shù)據(jù)位代表從機的編號,即字符幀為地址幀;而當(dāng)TB8=0時,數(shù)據(jù)位是實際要發(fā)送的數(shù)據(jù),即字符幀為數(shù)據(jù)幀。

(5)RB8

RB8與TB8相對應(yīng),在工作方式2和工作方式3中,接收方將接收到含有發(fā)送方TB8的字符幀,并且發(fā)送方的TB8將被硬件自動送入接收方SCON寄存器的RB8位。換句話說,當(dāng)接收緩沖區(qū)接收到一個完整字符幀后,接收方RB8的值將與發(fā)送方TB8的值相同。

(6)多機控制位SM2

串口的方式2和方式3屬于多機通信方式,SM2用于控制實現(xiàn)多機通信。在多機通信系統(tǒng)中僅有一臺主機,可以有多臺從機。每次通信時,主機需從多臺從機中選擇一臺從機并與之進行數(shù)據(jù)傳輸。因此,多機通信過程可以分為如下幾個步驟:

1)主機發(fā)向所有從機發(fā)送地址幀,地址幀的數(shù)據(jù)位代表從機編號。發(fā)送時要求主機的SM2=0,所有從機的SM2=1。

2)所有從機接收到地址幀后,將其中的從機編號與自身的編號相比較,比較相同的從機(即被主機選中的從機)的SM2被清0,而其他從機的SM2依然為1。

3)被選中的從機與主機之間進行一對一的數(shù)據(jù)傳輸。

4)主機與從機通信結(jié)束后,被選中從機的SM2被重新置1,為下一次多機通信做準備。

多機通信中,從機接收數(shù)據(jù)后能否產(chǎn)生中斷請求,與SM2、RB8和RI的取值有關(guān),見表4-16。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

8位單片機在嵌入式設(shè)計領(lǐng)域已經(jīng)成為半個多世紀以來的主流選擇。盡管嵌入式系統(tǒng)市場日益復(fù)雜,8位單片機依然不斷發(fā)展,積極應(yīng)對新的挑戰(zhàn)和系統(tǒng)需求。如今,Microchip推出的8位PIC?和AVR?單片機系列,配備了先進的獨立...

關(guān)鍵字: 單片機 嵌入式 CPU

在嵌入式系統(tǒng)開發(fā)中,程序燒錄是連接軟件設(shè)計與硬件實現(xiàn)的關(guān)鍵環(huán)節(jié)。當(dāng)前主流的單片機燒錄技術(shù)已形成ICP(在電路編程)、ISP(在系統(tǒng)編程)、IAP(在應(yīng)用編程)三大技術(shù)體系,分別對應(yīng)開發(fā)調(diào)試、量產(chǎn)燒錄、遠程升級等不同場景。...

關(guān)鍵字: 單片機 ISP ICP IAP 嵌入式系統(tǒng)開發(fā)

在嵌入式系統(tǒng)開發(fā)中,看門狗(Watchdog Timer, WDT)是保障系統(tǒng)可靠性的核心組件,其初始化時機的選擇直接影響系統(tǒng)抗干擾能力和穩(wěn)定性。本文從硬件架構(gòu)、軟件流程、安全規(guī)范三個維度,系統(tǒng)分析看門狗初始化的最佳實踐...

關(guān)鍵字: 單片機 看門狗 嵌入式系統(tǒng)

本文中,小編將對單片機予以介紹,如果你想對它的詳細情況有所認識,或者想要增進對它的了解程度,不妨請看以下內(nèi)容哦。

關(guān)鍵字: 單片機 開發(fā)板 Keil

隨著單片機系統(tǒng)越來越廣泛地應(yīng)用于消費類電子、醫(yī)療、工業(yè)自動化、智能化儀器儀表、航空航天等各領(lǐng)域,單片機系統(tǒng)面臨著電磁干擾(EMI)日益嚴重的威脅。電磁兼容性(EMC)包含系統(tǒng)的發(fā)射和敏感度兩方面的問題。

關(guān)鍵字: 單片機 電磁兼容

以下內(nèi)容中,小編將對單片機的相關(guān)內(nèi)容進行著重介紹和闡述,希望本文能幫您增進對單片機的了解,和小編一起來看看吧。

關(guān)鍵字: 單片機 復(fù)位電路

在這篇文章中,小編將為大家?guī)韱纹瑱C的相關(guān)報道。如果你對本文即將要講解的內(nèi)容存在一定興趣,不妨繼續(xù)往下閱讀哦。

關(guān)鍵字: 單片機 異常復(fù)位

今天,小編將在這篇文章中為大家?guī)韱纹瑱C的有關(guān)報道,通過閱讀這篇文章,大家可以對它具備清晰的認識,主要內(nèi)容如下。

關(guān)鍵字: 單片機 仿真器

單片機將是下述內(nèi)容的主要介紹對象,通過這篇文章,小編希望大家可以對它的相關(guān)情況以及信息有所認識和了解,詳細內(nèi)容如下。

關(guān)鍵字: 單片機 中斷 boot

一直以來,單片機都是大家的關(guān)注焦點之一。因此針對大家的興趣點所在,小編將為大家?guī)韱纹瑱C的相關(guān)介紹,詳細內(nèi)容請看下文。

關(guān)鍵字: 單片機 數(shù)字信號 模擬信號
關(guān)閉