Lecture Notes for PAMC (10) - Ch5_L3-201415(1)_第1頁
Lecture Notes for PAMC (10) - Ch5_L3-201415(1)_第2頁
Lecture Notes for PAMC (10) - Ch5_L3-201415(1)_第3頁
Lecture Notes for PAMC (10) - Ch5_L3-201415(1)_第4頁
Lecture Notes for PAMC (10) - Ch5_L3-201415(1)_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、Lecture notes for Principle and Applications of Micro-Computers “微機(jī)原理及應(yīng)用”講義第13講 MCS-51單片機(jī)的串行端口及中斷系統(tǒng)(教材5.4, 5.5節(jié))教學(xué)目的: 掌握串行端口的四種工作方式掌握串行端口的四種工作方式, 多源中斷系統(tǒng)應(yīng)用多源中斷系統(tǒng)應(yīng)用本講的主要內(nèi)容nMCS-51單片機(jī)串行端口的結(jié)構(gòu)單片機(jī)串行端口的結(jié)構(gòu)n串行端口控制串行端口控制/編程相關(guān)的寄存器編程相關(guān)的寄存器n多源中斷系統(tǒng)的響應(yīng)多源中斷系統(tǒng)的響應(yīng) (第第5章總結(jié)章總結(jié))MCS-51的串行端口nMCS-51單片機(jī)片內(nèi)具有一個全功能的串行端口單片機(jī)片內(nèi)具有一

2、個全功能的串行端口波特率可設(shè)定波特率可設(shè)定, 范圍寬范圍寬全雙工收發(fā)器全雙工收發(fā)器, 兩個獨立的接收的和發(fā)送的引腳兩個獨立的接收的和發(fā)送的引腳nRXD(P3.0)和和TXD(P3.1)功能上功能上, 其作用是其作用是 “串串 并并” 轉(zhuǎn)換器轉(zhuǎn)換器獨立的發(fā)送緩沖器獨立的發(fā)送緩沖器(SBUF)獨立的接收緩沖器獨立的接收緩沖器(SBUF)和接收移位寄存器和接收移位寄存器接收器的結(jié)構(gòu)使得接收器的結(jié)構(gòu)使得: CPU在讀前一個字符的同時接收器在讀前一個字符的同時接收器可以接收第可以接收第2個字符個字符, 而不會造成數(shù)據(jù)丟失或疊加錯誤而不會造成數(shù)據(jù)丟失或疊加錯誤有四種工作方式有四種工作方式, 分別由分別由S

3、CON, PCON等寄存器控制等寄存器控制MCS-51的串行端口的結(jié)構(gòu)串行端口控制/編程相關(guān)的寄存器n接收和發(fā)送緩沖器接收和發(fā)送緩沖器(SBUF)SBUF是一個是一個SFR, 占用地址占用地址99H寫寫SBUF操作時操作時, 訪問對象是發(fā)送緩沖器訪問對象是發(fā)送緩沖器 (only-write)讀讀SBUF操作時操作時, 訪問對象是接收緩沖器訪問對象是接收緩沖器 (only-read)n串口控制寄存器串口控制寄存器SCONn波特率加倍控制位波特率加倍控制位(電源控制寄存器電源控制寄存器PCON的的D7位位)波特率波特率加倍位加倍位如果如果SMOD = 1, 波特率加倍波特率加倍;如果如果SMOD

4、= 0, 波特率為波特率為1倍倍串口控制寄存器 SCONUART接收接收&發(fā)送中斷標(biāo)志發(fā)送中斷標(biāo)志(1:有效有效; 0:無效無效)(RI:接收接收; TI:發(fā)送發(fā)送)UART的工作方式選擇控制的工作方式選擇控制(4種工作方式種工作方式: MSM1,SM0)保存方式保存方式2和和3的第的第9位數(shù)據(jù)位數(shù)據(jù)(RB8:接收接收; TB8:發(fā)送發(fā)送)允許允許/禁止接收控制禁止接收控制(1:允許接收允許接收; 0:禁止接收禁止接收)RI的激活條件的控制的激活條件的控制: M0: SM2必須為必須為0;M1: 如果如果SM2=1, 必須收到有效停止位后必須收到有效停止位后 RI=1; M2 & M3: 如果

5、如果SM2=1, 收到的第收到的第9位數(shù)據(jù)為位數(shù)據(jù)為1(即即RB8=1)時時, RI=1串口的四種工作方式nMCS-51單片機(jī)單片機(jī)(8051內(nèi)核內(nèi)核)串行端口的工作方式串行端口的工作方式(2)(2) 在許多文獻(xiàn)上把在許多文獻(xiàn)上把MCS-51的串口稱為的串口稱為UART(Universal Asynchronous Receiver/Transmitter, 通用異步收發(fā)器通用異步收發(fā)器). 實際上其串口工作在方式實際上其串口工作在方式0時時, 并不是異步的并不是異步的, 而是同步的而是同步的(移位寄存器移位寄存器). 因此因此, 準(zhǔn)確地說準(zhǔn)確地說, 應(yīng)稱之為應(yīng)稱之為 “可編程串口可編程串口”

6、. (1)(1)波特率波特率: :每秒傳輸?shù)亩M(jìn)制位個數(shù)每秒傳輸?shù)亩M(jìn)制位個數(shù)串口方式0的結(jié)構(gòu)串口方式0(移位寄存器)的特點n編程設(shè)置編程設(shè)置SCON的最高的最高3位為位為0, 則選擇方式則選擇方式0n該方式下該方式下, 波特率波特率(同步時鐘頻率同步時鐘頻率)為為fOSC/12波特率波特率: 每秒傳輸?shù)亩M(jìn)制位個數(shù)每秒傳輸?shù)亩M(jìn)制位個數(shù)n寫寫SBUF, 則啟動發(fā)送則啟動發(fā)送(移位寄存器輸出移位寄存器輸出并并串串)n當(dāng)當(dāng)RI=0, 而且而且REN=1時時, 啟動接收啟動接收 (串串并并)n該方式下該方式下, RXD(P3.0)和和TXD(P3.1)兩引腳的功能兩引腳的功能RXD: 雙向同步數(shù)據(jù)

7、輸入雙向同步數(shù)據(jù)輸入/輸出引腳輸出引腳TXD: 同步時鐘輸出引腳同步時鐘輸出引腳 串口方式1的結(jié)構(gòu)串口方式1(10位UART)的特點n當(dāng)當(dāng)SCON的最高的最高2位為位為01B時時, 串口按方式串口按方式1工作工作n此時的波特率取決于此時的波特率取決于T1(對對8051內(nèi)核內(nèi)核)的溢出率的溢出率(下下2頁頁)nRXD和和TXD兩引腳分別為串行數(shù)據(jù)接收輸入和發(fā)送輸出兩引腳分別為串行數(shù)據(jù)接收輸入和發(fā)送輸出TI=0時時, 寫寫SBUF, 則啟動發(fā)送則啟動發(fā)送, 首先發(fā)送一個首先發(fā)送一個Start位位(固定為低電平固定為低電平)后再傳送后再傳送8位數(shù)據(jù)位數(shù)據(jù), 最后再發(fā)送一個最后再發(fā)送一個Stop位位(

8、固定為高電平固定為高電平) , 完成發(fā)完成發(fā)送送. 在在Stop位正確傳送后位正確傳送后, 自動置自動置TI=1RI=0時時, 令令REN=1, 則啟動接收則啟動接收, UART以以16倍于波特率的速度采樣倍于波特率的速度采樣RXD引腳電平引腳電平, 檢測到一個有效的檢測到一個有效的Start位位(低電平低電平)后開始接收后開始接收8個數(shù)個數(shù)據(jù)位據(jù)位, 正確地接收到正確地接收到Stop位位(高電平高電平)后后, 完成接收完成接收, 自動置自動置RI=1 串口方式1(10位UART)的工作時序等待等待串口方式1的波特率計算方法n一般計算公式一般計算公式 n當(dāng)當(dāng)T1工作在方式工作在方式2 (8位自

9、動重裝的定時器位自動重裝的定時器) 時時n當(dāng)當(dāng)T1工作在方式工作在方式0和和1 (分別為分別為n=13, 16位定時器位定時器) 時時2132SMODBaudrateT的溢出率21232(256)3212(256) 1, , SMODSMODOSCMMOSCfBaudrateiVTiVwhere iVTTf為的初始值為機(jī)器周期為振蕩頻率21232(29)3212(29)SMODSMODOSCnnMfBaudrateiVTiV? 1. 這里為什么要加這里為什么要加9? (Hint: 見教材見教材p.175的中斷程序的中斷程序.) 2. 驗證教材驗證教材p.176的表的表5-3.串口方式2和3的特

10、點n串口方式串口方式2和和3都是異步串行通訊方式都是異步串行通訊方式n串口工作在方式串口工作在方式2和和3時時發(fā)送數(shù)據(jù)格式發(fā)送數(shù)據(jù)格式: Start, 8bits Data, TB8, Stop接收數(shù)據(jù)格式接收數(shù)據(jù)格式: Start, 8bits Data, RB8, Stop工作時序見教材工作時序見教材p.171圖圖5-23和和5-24n方式方式2的波特率固定為的波特率固定為(2SMOD/64) fOSCn方式方式3的波特率的計算方法同方式的波特率的計算方法同方式1n方式方式2和和3的應(yīng)用示例見教材的應(yīng)用示例見教材p.172173 (兩個兩個MCS-51單片機(jī)之間的通訊單片機(jī)之間的通訊)多源

11、中斷系統(tǒng)的響應(yīng)nMCS-51單片機(jī)的單片機(jī)的5個中斷源分個中斷源分2級優(yōu)先級管理級優(yōu)先級管理, 可以同時使可以同時使用全部的用全部的5個中斷或其中部分中斷個中斷或其中部分中斷, 以滿足系統(tǒng)設(shè)計的要求以滿足系統(tǒng)設(shè)計的要求n使用時注意使用時注意 1. 優(yōu)先級優(yōu)先級; 2. 中斷嵌套中斷嵌套; 3. 可重入程序可重入程序; (資源沖突資源沖突) 4. 全局變量賦值全局變量賦值 (賦值和判斷賦值和判斷)外部中斷的擴(kuò)展 示例1A11A21A31A42A12A22A32A41Y11Y21Y31Y42Y12Y22Y32Y4G1G2INT0P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7805

12、1EIQ1EIQ2EIQ3EIQ4EIQ5EIQ6EIQ7EIQ8XTAL1XTAL2+5VResetC1C2XT1C3R1U1U2U3外外部部中中斷斷請請求求信信號號總結(jié)第5章nMCS-51單片機(jī)的中斷系統(tǒng)及其相關(guān)的控制和標(biāo)志單片機(jī)的中斷系統(tǒng)及其相關(guān)的控制和標(biāo)志寄存器寄存器 (5個中斷源個中斷源, TCON, SCON, IE, IP)n外部中斷外部中斷0和和1的結(jié)構(gòu)和響應(yīng)過程的結(jié)構(gòu)和響應(yīng)過程(4步步: 采樣置標(biāo)志位采樣置標(biāo)志位; 檢驗中斷條件檢驗中斷條件; 執(zhí)行硬件調(diào)用執(zhí)行硬件調(diào)用; 中斷返回中斷返回), 外部中斷的應(yīng)用和編程控制方法外部中斷的應(yīng)用和編程控制方法n定時定時/計數(shù)器計數(shù)器0和

13、和1的內(nèi)部結(jié)構(gòu)和相關(guān)寄存器的內(nèi)部結(jié)構(gòu)和相關(guān)寄存器(TCON, TMOD, THi, TLi), 方式方式03的工作原理和編程方法的工作原理和編程方法(初始化和初始值計算方初始化和初始值計算方法法), 以及它們的應(yīng)用以及它們的應(yīng)用n串口的內(nèi)部結(jié)構(gòu)和串口的內(nèi)部結(jié)構(gòu)和4種工作方式種工作方式n多源中斷響應(yīng)多源中斷響應(yīng)中斷程序的執(zhí)行過程#include void main (void) Init_8051(); ; while(1) ; ; ; ; ; ; ; ; ; ; ; 中斷程序中斷程序1 ; ; ; ; 中斷程序中斷程序2 ; ; ; 中斷程序中斷程序3 ; ; ; 保存斷點保存斷點/現(xiàn)場現(xiàn)場修

14、改修改PC的值的值保存斷點保存斷點/現(xiàn)場現(xiàn)場修改修改PC的值的值恢復(fù)現(xiàn)場恢復(fù)現(xiàn)場恢復(fù)現(xiàn)場恢復(fù)現(xiàn)場保存斷點保存斷點/現(xiàn)場現(xiàn)場修改修改PC的值的值恢復(fù)現(xiàn)場恢復(fù)現(xiàn)場斷點斷點中斷嵌套中斷嵌套? 1. “斷點斷點/現(xiàn)場現(xiàn)場”指的是什么?指的是什么?2. 恢復(fù)現(xiàn)場時恢復(fù)現(xiàn)場時,CPU做了什么?做了什么?3. CPU有多個中斷時有多個中斷時, 如果讓如果讓某些中斷可以執(zhí)行某些中斷可以執(zhí)行, 某些中斷某些中斷不執(zhí)行不執(zhí)行? 同時發(fā)生多個中斷時同時發(fā)生多個中斷時, 如何讓某些先執(zhí)行如何讓某些先執(zhí)行?MCS-51單片機(jī)的中斷系統(tǒng) MCS-51單片機(jī)的中斷系統(tǒng)由單片機(jī)的中斷系統(tǒng)由5個中斷源組成個中斷源組成, 并分兩

15、級優(yōu)先級管理并分兩級優(yōu)先級管理先后順序高優(yōu)先orINT0TF0INT1TF1RITI觸發(fā)方式選擇觸發(fā)方式選擇IT0IT1IE0IE1EX0ET0EX1ET1ESEAPX0PX1PT0PT1PS先先后后順順序序先先后后順順序序高優(yōu)先高優(yōu)先低優(yōu)先低優(yōu)先中斷響應(yīng)中斷響應(yīng)優(yōu)先級控制優(yōu)先級控制中斷總控制中斷總控制中斷源控制中斷源控制10101010101010外部中斷外部中斷0定時定時/計數(shù)器計數(shù)器中斷中斷0定時定時/計數(shù)器計數(shù)器中斷中斷1外部中斷外部中斷1接收接收&發(fā)送發(fā)送中斷中斷IEIPTCONSCON總結(jié)第25章 至此至此, 我們已經(jīng)完全掌握了我們已經(jīng)完全掌握了“MCS-51單片機(jī)的原理單片機(jī)的原

16、理”部分內(nèi)容部分內(nèi)容nMCS-51單片機(jī)的內(nèi)部結(jié)構(gòu)和引腳單片機(jī)的內(nèi)部結(jié)構(gòu)和引腳, 存儲器和時鐘存儲器和時鐘n其指令集和匯編程序設(shè)計方法其指令集和匯編程序設(shè)計方法n如何用如何用C語言開發(fā)語言開發(fā)MCS-51單片機(jī)系統(tǒng)單片機(jī)系統(tǒng)nMCS-51單片機(jī)的中斷系統(tǒng)和內(nèi)部的功能單元單片機(jī)的中斷系統(tǒng)和內(nèi)部的功能單元 掌握單片模式的掌握單片模式的MCS-51單片機(jī)系統(tǒng)的設(shè)計和開發(fā)基礎(chǔ)單片機(jī)系統(tǒng)的設(shè)計和開發(fā)基礎(chǔ) 這里所掌握的學(xué)習(xí)方法這里所掌握的學(xué)習(xí)方法, 可以用于連接其它單片機(jī)可以用于連接其它單片機(jī) 擴(kuò)展模式的擴(kuò)展模式的MCS-51單片機(jī)系統(tǒng)的設(shè)計和開發(fā)需要掌握第單片機(jī)系統(tǒng)的設(shè)計和開發(fā)需要掌握第6和和7章的內(nèi)容章的內(nèi)容練習(xí):在內(nèi)部RAM的21H單元開始存放有一組單字節(jié)不帶符號數(shù),數(shù)據(jù)長度為30H,要求找出最大數(shù)存入BIG單元。(程序代碼)練習(xí)3-8:從數(shù)組中找最小數(shù)和最大數(shù)。數(shù)組的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論