




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、2020/7/15,單片機原理及應用技術教材編寫組,1,第二章 單片機組成與工作原理,2020/7/15,單片機原理及應用技術教材編寫組,2,MCS-51系統(tǒng)單片機是INTEL公司在MCS-48系列單片機的基礎之上推出的高性能8位單片機。它基本上可以滿足用戶的一般要求,它是工業(yè)過程控制、智能化儀器、數控機床、位總線分布式控制、以及通信系統(tǒng)的優(yōu)選機種。 2.1 單片機結構及組成 2.2 微處理器(CPU) 2.3 單片機的存儲器組織 2.4 定時器/計數器 2.5 并行輸入/輸出口 2.6 串行輸入/輸出接口 2.7 中斷系統(tǒng) 2.8 特殊工作方式,2020/7/15,單片機原理及應用技術教材編
2、寫組,3,2.1.1 單片機的系統(tǒng)資源及主要性能特點,2.1 單片機結構及組成,1. 系統(tǒng)資源 8031內包括: 1個8位CPU; 128個字節(jié)RAM; 21個特殊功能寄存器; 4個8位并行I/O口; 1個全雙工串行口(二根線); 2個16位定時計數器器; 1個片內振蕩器和時鐘電路; 5個中斷源2個中斷優(yōu)先級;,2020/7/15,單片機原理及應用技術教材編寫組,4,2. 性能特點 單片機為哈佛結構的計算機,除上述基本資源外,還具有如下特點: 外部程序存儲器:可擴展到64KB; 外部數據存儲器:可擴展到64KB; 堆棧:最深128B/256B; 輸入/輸出口線:32根; 寄存器區(qū):劃出RAM中
3、32B作為通用寄存器; 具有位尋址功能; 單一“+5V”電源; 系統(tǒng)時鐘112 MHz,常用12MHz、11.0592MHz 和 6MHz。,2020/7/15,單片機原理及應用技術教材編寫組,5,2.1.2 單片機基本結構,1. 內部結構框圖,包括: CPU、存儲器(ROM、RAM)、I/O接口等計算機的基本組成。,2020/7/15,單片機原理及應用技術教材編寫組,6,1)CPU(微處理器) MCS-51單片機中有1個8位的CPU,包括了運算器和控制器。 MCS-51增加了面向控制的處理功能,不僅可處理字節(jié)數據,還可以進行位變量的處理。 2)數據存儲器(RAM) 片內為128個字節(jié)(52子
4、系列的為256個字節(jié)),片外最多可外擴64K字節(jié)。 片內的128個字節(jié)的RAM,以高速RAM的形式集成在單片機內,可以加快單片機運行的速度,而且這種結構的RAM還可以降低功耗。,2020/7/15,單片機原理及應用技術教材編寫組,7,3)程序存儲器(ROM/EPROM) 8031無此部件;8051為4K字節(jié)ROM;8751則為4K字節(jié)EPROM。 如果片內只讀存儲器的容量不夠,則需用擴展片外只讀存儲器,片外最多可外擴至64K字節(jié)。 4)中斷系統(tǒng) 具有5個中斷源,2級中斷優(yōu)先權。 5)定時器/計數器 片內有2個16位的定時器/計數器(52子系列有3個16位的定時器/計數器),具有四種工作方式。,
5、2020/7/15,單片機原理及應用技術教材編寫組,8,6)串行口 1個全雙工的串行口,具有四種工作方式,進行串行通訊。 作用:擴展并行I/O口,甚至與多個單片機相連構成多機系統(tǒng),從而使單片機的功能更強且應用更廣。 7)P1口、P2口、P3口、P0口 為4個并行8位I/O口。 8)特殊功能寄存器(SFR) 特殊功能寄存器共有21個,用于CPU對片內各功能部件進行管理、控制、監(jiān)視。實際上是一些控制寄存器和狀態(tài)寄存器。 是一個具有特殊功能的RAM區(qū)。,2020/7/15,單片機原理及應用技術教材編寫組,9,2. 外部引腳(40個),MCS-51芯片邏輯符號,MCS-51雙列直插封裝方式的引腳,20
6、20/7/15,單片機原理及應用技術教材編寫組,10,引腳可分為四類: 1)電源引腳VCC和VSS VCC:40腳,電源端,+5V VSS:20腳,接地端(GND) 2)時鐘電路引腳 XTAL1:19腳,外接晶振輸入引腳。 XTAL2:18腳,外接晶振輸出引腳。,2020/7/15,單片機原理及應用技術教材編寫組,11,3)控制線引腳 (1)RST/VPD :9腳,復位/備用電源。 RST-通過外接復位電路實現上電復位或按鍵復位。 VPD-可外接備用電源,在VCC掉電時向RAM供電。 (2)/VPP :31腳,內外ROM的選擇/ EPROM編程電源。 /VPP =0:訪問外部ROM; /VPP
7、 =1:訪問內部ROM; PC值超過0FFFH(4KB)時,自動轉向外ROM。 VPP -在8751片內EPROM編程期間,為21V編程電源輸入端。,2020/7/15,單片機原理及應用技術教材編寫組,12,(3)ALE/ :30腳,地址鎖存允許/編程脈沖。 ALE-訪問外ROM或RAM時,用來驅動地址鎖存器鎖存P0口分時送出的低8位地址(下降沿有效)。不訪問外存儲器時,該端以1/6時鐘頻率輸出正脈沖,可用作為外部時鐘。帶8個LS型TTL門電路。 - 8751片內EPROM編程期間,此引腳輸入編程脈沖。 (4) :29腳,讀外部ROM選通信號。 該腳有效時(上升沿),外ROM允許輸出。每個機器
8、周期2次有效。從內部ROM取指時不產生??蓭?個LS型TTL門電路。,2020/7/15,單片機原理及應用技術教材編寫組,13,4)I/O引腳 P0口:P0.0P0.7,3932腳,外接存儲器時作地址/數據分時使用口線;不接外部存儲器時,可用作為8位準雙向I/O口。 P1口:P1.0P1.7,18腳,8位準雙向I/O口。 P2口:P2.0P2.7,2128腳,8位準雙向I/O口。外接存儲器時作為高8位地址總線。 P3口:P3.0P3.7,1017腳,8位準雙向I/O口,出于芯片引腳數的限制,P3口具有第二輸出、輸入功能。,2020/7/15,單片機原理及應用技術教材編寫組,14,2.2 微處理
9、器(CPU),CPU是單片機內部的核心部件。MCS-51單片機的CPU由運算器、控制器以及位處理器(布爾處理器)組成。 2.2.1 運算器 運算器主要用來對操作數進行算術、邏輯運算和位操作的。主要包括算術邏輯運算單元ALU、累加器A、位處理器、程序狀態(tài)字寄存器PSW以及BCD碼修正電路等。,2020/7/15,單片機原理及應用技術教材編寫組,15,1. 算術邏輯運算單元ALU ALU不僅可對8位變量進行邏輯“與”、“或”、“異或”、循環(huán)、求補和清零等基本操作,還可以進行加、減、乘、除等基本算術運算。MCS-51的ALU還具有位處理操作功能。 2. 累加器A 它是CPU中使用最頻繁的一個寄存器,
10、也可寫為Acc。 1)累加器A是ALU單元的輸入之一,又是ALU運算結果的存放單元。 2)累加器A相當于數據的中轉站,易產生“堵塞”現象。為此,MCS-51單片機增加了一部分可以不經過累加器的傳送指令。,2020/7/15,單片機原理及應用技術教材編寫組,16,3. 布爾處理機Cy 累加器A的進位標志Cy,被稱作“位累加器”,可在任何可尋址的位與Cy間進行邏輯運算操作。 4. 程序狀態(tài)字寄存器PSW (Program Status Word) MCS-51的PSW是一個8位可讀寫的寄存器,位于單片機片內的特殊功能寄存區(qū),字節(jié)地址為D0H。PSW的不同位包含了程序運行狀態(tài)的不同信息,如圖。,20
11、20/7/15,單片機原理及應用技術教材編寫組,17,PSW中的各個位的功能如下: 1)Cy(或C)進位標志位(PSW.7) 在執(zhí)行算術和邏輯指令時,Cy可被硬件或軟件置1或清0,在位處理器中,它是位累加器。 2)Ac輔助進位標志位(PSW.6) 當進行BCD碼加法或減法操作而產生的由低4位數(代表一個BCD碼)向高4位進位或借位時,Ac將被硬件置1,否則被清0。Ac用于在進行BCD碼運算時,用作十進位調整,同DA指令結合起來用。 3)F0標志位(PSW.5) 用戶使用的一個狀態(tài)標志位,可用軟件置1或清0,也可由指令來測試標志位F0,以控制程序的流向。,2020/7/15,單片機原理及應用技術
12、教材編寫組,18,4)RS1、RS0 4組工作寄存器區(qū)選擇控制位1和位0 (PSW.4、PSW.3) 用來選擇4組工作寄存器區(qū)中的哪一組為當前工作寄存區(qū),它們與4組工作寄存器區(qū)的對應關系如下: 5)OV溢出標志位(PSW.2) 當執(zhí)行算術指令時,由硬件置1或清0,以指示運算是否產生溢出。,2020/7/15,單片機原理及應用技術教材編寫組,19,6)PSW.1位 保留位,未用。 7)P奇偶標志位(PSW.0) 該標志位用來表示累加器A中為1的位數的奇偶數。 P=1,則A中“1”的個數為奇數 P=0,則A中“1”的個數為偶數 5. DA A BCD碼十進制修正,由專用電路實現。,2020/7/1
13、5,單片機原理及應用技術教材編寫組,20,2.2.2 控制器,控制器主要包括程序計數器、程序地址寄存器、指令寄存器IR、指令譯碼器、條件轉移邏輯電路及時序控制邏輯電路等。,2020/7/15,單片機原理及應用技術教材編寫組,21,1. 程序計數器PC(Program Counter) 16位計數器,指向程序存儲器中被執(zhí)行的指令所在的地址。本身沒有地址。 讀指令時,程序計數器將其中的數作為所取指令的地址輸出給程序存儲器,然后程序存儲器按此地址輸出指令字節(jié),同時程序計數器本身內容自動增加,指向下一條指令在程序存儲器中的地址。 PC中內容的變化決定程序的流向。 PC的位數決定了單片機對程序存儲器可以
14、直接尋址的范圍。尋址范圍0000FFFFH的64KB空間。,2020/7/15,單片機原理及應用技術教材編寫組,22,程序計數器的基本工作方式有以下幾種: 1)程序計數器自動加1。 2)執(zhí)行有條件或無條件轉移指令時,程序計數器將被置入新的數值,從而使程序的流向發(fā)生變化。 3)在執(zhí)行調用子程序調用或響應中斷時,單片機自動完成如下的操作: PC的現行值(斷點值)自動壓入堆棧。 將子程序的入口地址或中斷向量的地址送入PC,程序執(zhí)行子程序或中斷服務子程序。執(zhí)行完畢RET或RETI時,將棧頂的斷點值彈到程序計數器PC中,程序的流向又返回到斷點處繼續(xù)執(zhí)行程序。,2020/7/15,單片機原理及應用技術教材
15、編寫組,23,2. 指令寄存器IR、指令譯碼器及控制邏輯電路 IR用來存放指令操作碼。IR的輸出送指令譯碼器;然后對該指令進行譯碼,譯碼結果送定時控制邏輯電路。 定時控制邏輯電路根據對指令的譯碼結果,發(fā)出一系列的定時控制信號,控制單片機的各組成部件進行相應的工作,執(zhí)行指令。 3. 指針 1)數據指針(DPTR):16位地址指針,可尋址范圍0000FFFFH 的64KB空間,可指向程序、數據存儲器。 2)堆棧指針(SP): 8位地址寄存器。它指向內部RAM的一個存儲單元,且總是指向棧頂單元。 MCS-51的堆棧是內部RAM中的一個部分,符合“先進后出、后進先出”原則。,2020/7/15,單片機
16、原理及應用技術教材編寫組,24,2.2.3 時鐘電路 1.振蕩源(oscillation) MCS-51的HMOS芯片內部時鐘電路的振蕩源有兩種方式提供。 內部自激振蕩方式 外部振蕩脈沖源方式。,2020/7/15,單片機原理及應用技術教材編寫組,25,2. CPU時序 CPU的運算操作在P1期間,數據傳送在P2期間。 時鐘周期、狀態(tài)周期、機器周期、指令周期、指令字節(jié)。 ALE時序:地址鎖存信號,每個機器周期2次有效,分別在S1、S4狀態(tài)。每次出現,CPU進行一次取指操作。,2020/7/15,單片機原理及應用技術教材編寫組,26,2.3 單片機的存儲器組織,MCS-51存儲器可分為五類: 程
17、序存儲器 內部數據存儲器 特殊功能存儲器 位尋址區(qū) 外部擴展的數據存儲器 擴展I/O口,2020/7/15,單片機原理及應用技術教材編寫組,27,2.3.1 程序存儲器 1. 程序存儲器作用及尋址范圍 作用:存放指令(程序)的存儲器,用PC作地址指針。 尋址范圍:0000FFFFH,共64KB;片內、片外統(tǒng)一編址。 片內:PC=00000FFFH; 片外:PC=1000FFFFH;,2020/7/15,單片機原理及應用技術教材編寫組,28,2. ROM低端的幾個特殊入口地址 0000H:CPU開始執(zhí)行指令時的第一個取指單元,每次執(zhí)行時PC的內容總是0000H; 0003H002B:中斷專用固定
18、入口地址(系統(tǒng)規(guī)定); 一般是從ROM的0030H單元開始存放用戶指令。 3. 8031內部無程序存儲器 需外接程序存儲器,端必須外接低電平。 4. 8051、8751內部有4KB ROM/EPROM EA=0,使用外部程序存儲器;EA=1,使用內部程序存儲器4KB空間,當PC的值超過4KB 范圍時,自動轉向外部程序存儲器。,2020/7/15,單片機原理及應用技術教材編寫組,29,2.3.2 數據存儲器 內部RAM中低128B:007FH。按功能劃分為三個部分:,1. 工作寄存器區(qū):001FH 1)共分4個區(qū),每區(qū)有8個工作寄存器:R0R7; 2)當前工作寄存器區(qū):由PSW中的第三、第四位選
19、擇,具有快速保護現場數據的作用,也可作為一般的數據緩沖器。,2020/7/15,單片機原理及應用技術教材編寫組,30,2. 位尋址區(qū)(20H2FH),128個位,位地址:007FH。 51系列整個位地址空間為:00FFH,共211位。 1)007FH為片內RAM中202FH的16個字節(jié)單元中的128個位。 2)80FFH中11個SFR的可尋址位,85位。它們是:A、B、PSW、P0P3、TCON、SCON、IE、IP。 52系列的SFR可尋址為93位,共221位。 3. 數據緩沖區(qū): 30H7FH 1)作為通用的按字節(jié)操作的數據緩沖區(qū)。 2)常開辟為堆棧區(qū)。,2020/7/15,單片機原理及應
20、用技術教材編寫組,31,(1)堆棧的特點: 是一個符合“先進后出、后進先出”的RAM區(qū)域 SP總是指向堆棧的頂部(保存有數據); 堆??梢栽O在內部RAM中的任意區(qū)域,一般開辟在307FH中。 (2)堆棧的功能: 保護斷點-保護從主程序轉向子程序、中斷時的斷點,發(fā)生轉移時自動完成。 保護現場-對子程序、中斷程序中要用到的、現場的某些寄存器的內容進行保護,以保證返回時正確恢復。軟件指令方式實現。 數據的臨時存放。 外部RAM,可擴至64KB,0000FFFFH,2020/7/15,單片機原理及應用技術教材編寫組,32,2.3.3 特殊功能寄存器區(qū)SFR 包括I/O鎖存器、定時器、串行口、中斷、狀態(tài)
21、、控制寄存器等共21個。離散地分布在80FFH中(不包括PC): 算術運算寄存器:A、B、PSW 指針寄存器:SP、DPTR(DPH,DPL) 并行口:P0、P1、P2、P3 串行口:SCON、SBUF、PCON 中斷系統(tǒng):IP、IE 定時/計數器:TMOD、TCON、TH0、TL0、TH1、TL1 51系列內部RAM,80FFH中未定義的單位為不可訪問單元。,2020/7/15,單片機原理及應用技術教材編寫組,33,2.3.4 外部擴展數據存儲器和擴展I/O口 外部擴展數據存儲器:最大可擴展到64KB,由P3口的第二功能控制其讀、寫,并通過MOVX指令訪問。 擴展I/O口:MCS-51單片機
22、將其看作外RAM的一個單元,與外RAM統(tǒng)一編址,提供16位尋址能力,尋址范圍也是64K。,2020/7/15,單片機原理及應用技術教材編寫組,34,2.4 定時器/計數器,定時器/計數器是MCS-51單片機的重要功能模塊之一。在檢測、控制及智能儀器等應用中,常用定時器作實時時鐘,實現定時檢測、定時控制。還可用定時器產生毫秒寬的脈沖,驅動步進電機一類的電氣機械。計數器主要用于外部事件的計數。 MCS-51單片機內部有兩個16位可編程定時器/計數器,即定時器T0和定時器T1(8052提供3個,這第三個稱為定時器T2)。它們既可用作定時器方式,又可用作計數器方式,可編程設定4種不同的工作方式。,20
23、20/7/15,單片機原理及應用技術教材編寫組,35,2.4.1 定時/計數器的結構 T0、T1由加法計數器、TMOD、TCON寄存器等組成。,2020/7/15,單片機原理及應用技術教材編寫組,36,當16位加法計數器的輸入端每輸入一個脈沖,16位加法計數器的值自動加1,當計數器的計數值超過加法計數器字長所能表示的2進制數的范圍而向第17位進位,即計數溢出時,置位定時中斷請求標志,向CPU申請中斷。 16位加法計數器編程選擇對內部時鐘脈沖進行計數或對外部輸入脈沖計數。對內部脈沖計數時稱定時方式,對外部脈沖計數時稱計數方式。,2020/7/15,單片機原理及應用技術教材編寫組,37,2.4.2
24、 定時/計數器的方式控制字 1. 工作方式寄存器TMOD TMOD用于控制T0和T1的工作方式,其各位定義如下: 其中, M1、M0:工作方式控制位,可構成以下4種工作方式。,2020/7/15,單片機原理及應用技術教材編寫組,38,C/ :計數工作方式/定時工作方式選擇位。 C/ =0,設置為定時工作方式。 C/ =1,設置為計數工作方式。 GATE:門控位,用以決定是由軟件還是硬件啟動/停止計數。 GATE=0, / 被封鎖,只要用軟件對TR0(或TR1)置1就啟動了定時器。 GATE=1,定時器/計數器的計數受外部引腳輸入電平的控制。在TR0(或TR1)置1時,若(或)引腳為高電平,啟動
25、定時器計數;為低電平時停止計數。 TMOD的所有位在復位后清0。TMOD不能位尋址,只能按字節(jié)操作設置工作方式。,2020/7/15,單片機原理及應用技術教材編寫組,39,2. 控制寄存器TCON (88H) TCON的高4位 用于控制定時器的啟動、停止以及標明定時器的溢出和中斷情況,TCON的低4位 用于兩個外部中斷源控制。,2020/7/15,單片機原理及應用技術教材編寫組,40,2.4.3 定時/計數器的四種工作方式 1.工作方式013位計數器,2020/7/15,單片機原理及應用技術教材編寫組,41,C/T=0時,定時/計數器的輸入端接內部振蕩器的12分頻,即工作在定時方式, 每個計數
26、脈沖的周期等于機器周期,當定時/計數器溢出時,其定時時間為: T = 計數次數機器周期 =(213-T0初值)機器周期 C/T=1時,定時/計數器接外部T0引腳輸入信號,即工作在計數方式,當外部輸入信號電平發(fā)生從“1“到”0“跳變時,加1計數器加1。,2020/7/15,單片機原理及應用技術教材編寫組,42,2. 工作方式116位計數器 T = 計數次數 機器周期 =(216-T0初值)機器周期,2020/7/15,單片機原理及應用技術教材編寫組,43,3. 工作方式28位自動重裝初值計數器 TL0用作8位計數器,TH0用來保存初值,每當TL0計滿溢出時,硬件自動將TH0中的值裝入TL0中。
27、工作方式2的定時時間為: T = 計數次數機器周期 =(28-T0初值) 機器周期,2020/7/15,單片機原理及應用技術教材編寫組,44,4. 工作方式32個獨立8位計數器 一般在系統(tǒng)需增加一個額外的8位定時器時,T0可設置為工作方式3,此時T1雖仍可定義為工作方式0、工作方式1和工作方式2、但只能用在不需中斷控制的場合。,2020/7/15,單片機原理及應用技術教材編寫組,45,2.4.4 綜合舉例 1. 定時/計數器的應用編程應注意兩點: 1)初始化(正確寫入控制字) 2)時間常數(初值)的計算。 2. 初始化步驟為: 1)向TMOD寫工作方式控制字。 2)向計數器TL、TH裝入初值。
28、 3)置TRx=1,啟動計數。 4)置ETx=1,允許定時/計數器中斷(若需要時)。 5)置EA=1,CPU開中斷。,2020/7/15,單片機原理及應用技術教材編寫組,46,3. 裝載初值的計算: 當定時器/計數器工作于定時狀態(tài)時,對機器周期進行計數,一個機器周期 T=12/ fosc 若定時時間為t , 則對應的計數次數N= t/機器周期 對應定時時間t應裝入的計數初值為: 2n-N (n為工作方式選擇所確定的定時器位數)。,2020/7/15,單片機原理及應用技術教材編寫組,47,定時器/計數器的定時/計數范圍: 工作方式0:13位定時/計數方式,因此,最多可以計到2的13次方,也就是8
29、192次。 工作方式1:16位定時/計數方式,因此,最多可以計到2的16次方,也就是65536次。 工作方式2和工作方式3,都是8位的定時/計數方式,因此,最多可以計到2的8次方,也說是256次。 預置值計算:用最大計數量減去需要的計數次數即可。,2020/7/15,單片機原理及應用技術教材編寫組,48,4. 舉例 例1:設T0為工作方式1,設置為定時時間為2ms,每當2ms到,申請中斷,在中斷服務程序中將P1.0的內容取反送出,即在P1.0引腳產生250Hz的方波(假設晶振為6MHz)。 下面先計算定時的T0初始值。 以題意:6Hz,t=2ms 則:機器周期 T=2S 計數次數N=1000
30、對應的計數初值為: =64536D=FC18H,2020/7/15,單片機原理及應用技術教材編寫組,49,2.5 并行輸入/輸出口,MCS-51單片機有4個8位并行I/O口,P0P3,共32根口線。并行I/O端口一次可傳送一個字節(jié)的數據。 每個I/O端口都由一個八位數據鎖存器和一個八位數據緩沖器組成。需要輸出數據時,8個數據鎖存器用于對端口引腳上輸入數據進行鎖存。需要輸入數據時,8個數據緩沖器用于對端口引腳上輸入數據進行緩沖。另外訪問并行I/O端口除了可以用字節(jié)地址訪問外,還可以進行按位尋址。,2020/7/15,單片機原理及應用技術教材編寫組,50,四個接口工作在一般I/O方式時,具有以下基
31、本相同的特性: 1. 作為輸出口用時,內部帶鎖存器,故可以直接和外設相連,不必加鎖存器。 2. 作為輸入口用時,有兩種讀操作指令,讀鎖存器和讀引腳。 讀鎖存器實際上只是把端口鎖存器中的內容讀到內部總線,經過某種運算和變換后,再寫回到鎖存器。這類指令稱為讀修改寫指令。 讀引腳時才真正地把外部的數據讀入到內部總線。 3. 執(zhí)行讀引腳指令讀入I/O引腳狀態(tài),當端口做輸入口使用時,要先將端口鎖存器置1。然后再執(zhí)行讀引腳操作,否則就可能讀錯。,2020/7/15,單片機原理及應用技術教材編寫組,51,2.5.1 0口(P0.7P0.0) P0口是真正的雙向I/O口。 P0是由一個輸出鎖存器(D型觸發(fā)器)
32、,兩個三態(tài)門緩沖器(控制讀引腳或讀鎖存器),與門和多路開關MUX組成的輸出控制電路,一對場效應晶體管FET構成的輸出電路所組成。,2020/7/15,單片機原理及應用技術教材編寫組,52,1. P0口的I/O操作(通用I/O端口) 在P0口作為通用I/O端口時,控制電路中“控制”端輸入為0電平。 (1)輸出操作 當內部總線信號置0時,鎖存器輸出/Q輸出高電平,下端FET導通,由于上端FET截止,因此P0引腳輸出低電平。當內部總線置1時,鎖存器輸出低電平,下端FET截止,由于上拉電阻的作用,P0口引腳輸出高電平。 由于兩個場效應管均截止,使輸出處于“懸浮”狀態(tài),因此當MOS負載連接時需要加上一上
33、拉電阻,以保證端口能夠正確的輸出高電平。,2020/7/15,單片機原理及應用技術教材編寫組,53,(2)輸入操作 讀引 必須先將端口鎖存器置1。執(zhí)行程序為: MOV P0,#0FFH;端口鎖存器置1 MOV A,P0; 讀引腳 讀鎖存器 鎖存器一般完成的是“讀修改寫”的操作。這種類型的操作指令只有算術(INC,DEC,ADD),邏輯(ORC,XRL,ANL),位(JBC,CPL,CLR)操作指令等。 P0口的兩種數據操作:字節(jié)操作和位操作。CPU對于P0口不僅可以作為一個八位口來操作,也可以按位來操作。,2020/7/15,單片機原理及應用技術教材編寫組,54,2. P0口作為地址/數據復用
34、總線使用(系統(tǒng)使用外存儲器時) 當P0的地址/數據口置1時,控制上拉電路的“與門”輸出為1,上端FET導端,同時地址/數據通過反相器輸出為0,下端FET截止,地址/數據線輸出為1。 當P0的地址/數據口置0時,控制上拉電路的“與門”輸出為0,上端FET截止,同時地址/數據輸出通過反相器輸出1,下端FET導通,地址/數據線輸出為0。,2020/7/15,單片機原理及應用技術教材編寫組,55,注意: P0口作地址/數據總線輸出時,通過反相器、與門工作。 P0口作外部數據輸入時,CPU使T1、T2均截止,引腳浮空,第三態(tài),數據經“讀引腳”輸入緩沖器進入內部總線是真正的雙向口。 P0口控制端的轉換是通
35、過指令進行的,即執(zhí)行I/O總線操作時,如MOV P0,A,系統(tǒng)自動控制端置0,執(zhí)行地址操作指令如MOVX,MOVC(EA0時)時,則控制端自動置1。 在進行硬件系統(tǒng)的設計時,如果使用了外部存儲器時,P0口成為整個系統(tǒng)的地址/數據復用總線,此時P0口不能在作為通用的I/O端口。因此一般情況下,P0作為地址/數據總線。,2020/7/15,單片機原理及應用技術教材編寫組,56,2.5.2 1口(90H) P1口是準雙向I/O口。 P1口的功能和P0口的第一功能相同,僅用于傳遞I/O輸入/輸出數據。,2020/7/15,單片機原理及應用技術教材編寫組,57,P1口特點: 1)準雙向口:作為I/O輸入
36、時,口鎖存器必須置“1”,使T截止,輸入信號通過“讀引腳”三態(tài)緩沖器進入內部總線。 2)內部有上拉電阻(20K40K); 3)CPU讀P1口的兩種情況: 讀P1口的鎖存器狀態(tài)值:“讀改寫”指令。 例ANL P1,#0FH; 讀P1口的引腳(外部輸入)。例MOV A,P1;,2020/7/15,單片機原理及應用技術教材編寫組,58,2.5.3 2口(A0H) P2口是屬于準雙向口。 P2口的第一功能和上述兩組引腳的第一功能相同,即它可以作為通用I/O使用。它的第二功能和P0口引腳的第二功能相配合,作為地址總線用于輸出片外存儲器的高8位地址。,2020/7/15,單片機原理及應用技術教材編寫組,5
37、9,1. P2口的I/O操作 P2口的I/O操作與P0口的I/O同。 2. P2口的地址總線操作 可分別尋址64KB的程序存儲器或片外數據存儲器。 注意: (1)一般P2口不用于傳送存儲器的讀寫數據,因此P2口無需外加地址鎖存器。 (2)如果使用256B的外部RAM,此時用8位的寄存器R0或R1作間址寄存器,這時P2口無用,此時P2口仍可以做通用I/O端口,如MOV A,R0或MOV A,R0。,2020/7/15,單片機原理及應用技術教材編寫組,60,2.5.4 3口(B0H) 特點: 1)準雙向口:條件為第二功能輸出端?!?”,與門開鎖; 2)第二功能口:作為第二功能口使用時,(P3)=F
38、FH;某位作為第二功能輸入時,第二功能輸出也必須置“1”。,2020/7/15,單片機原理及應用技術教材編寫組,61,2.6 串行輸入/輸出接口,2.6.1基本概念 微機與外部信息交換稱為通信?;镜耐ㄐ欧椒ㄓ胁⑿型ㄐ藕痛型ㄐ艃煞N。 1. 并行通信 一個信息的各位數據被同時傳送的通信方法稱為并行通信。 2. 串行通信 一條信息的各位數據被逐位順序傳送的通信方式稱為串行通信。,2020/7/15,單片機原理及應用技術教材編寫組,62,串行通信借助于串行輸入/輸出接口實現,只要一條傳輸線。串行通信分為兩種基本方式: 1)異步通信 2)同步通信,2020/7/15,單片機原理及應用技術教材編寫組,
39、63,串行通信中的幾個問題: (1)波特率:串行通信的數據是按位進行的,每秒傳送的位數稱為波特率,以此來衡量 (2)傳送的速度:1波特位/秒 (3)數據傳送的方向:單工,半雙工,全雙工,通常采用半雙工 (4)數據校驗方法:采用奇偶校驗法,發(fā)送時,在每個字符的最高位之后(發(fā)送時總是低位在前,高位在后)附加一個校驗位,這個校驗位可以是0或1,所發(fā)送的每個字符中“1”的個數為奇數稱為奇校驗,是偶數稱為偶校驗。,2020/7/15,單片機原理及應用技術教材編寫組,64,2.6.2 串行接口的功能與結構 MCS-51單片機中的異步通信串行接口能方便地與其他計算機或串行傳送信息的外圍設備(如串行打印機、C
40、RT終端等)實現雙機、多機通信。,2020/7/15,單片機原理及應用技術教材編寫組,65,1. 串行接口的控制寄存器(SCON) 用于控制串行接口的工作狀態(tài):,SM0,SM1:工作方式選擇位,2020/7/15,單片機原理及應用技術教材編寫組,66,REN:串行接收使能位,軟件置1時,啟動接收過程,TB8:多機方式發(fā)送的第9位,多機方式的地址/數據幀標志。也可作為奇偶校驗位。,RB8:多機方式接收的第9位,多機方式的地址/數據幀標志。也可作為奇偶校驗位。,TI:發(fā)送中斷標志位,要由軟件清0,RI:接收中斷標志位,要由軟件清0,2020/7/15,單片機原理及應用技術教材編寫組,67,SM2:
41、多機通信控制位,SM2=1時,接收機處于地址幀篩選狀態(tài)。 若RB81,該地址幀信息可進入SBUF,并使RI=1 若RB80,該幀不是地址幀,應丟掉,且保持RI=0,SM2=0時,接收機處于地址幀篩選被禁止狀態(tài)。不論收到的RB8為0或1,信息都可進入SBUF,并使RI=1。此時的RB8通常為校驗位。,2020/7/15,單片機原理及應用技術教材編寫組,68,2. 電源控制寄存器(PCON),SMOD:波特率倍增位。 在串行口方式1、2、3時,波特率與SMOD有關,當SMOD=1時,波特率提高一倍。 復位時,SMOD=0。,2020/7/15,單片機原理及應用技術教材編寫組,69,2.6.3 串行
42、口的4種工作方式 1. 方式0,2020/7/15,單片機原理及應用技術教材編寫組,70,串行工作方式0 同步移位寄存器方式 方式設定:SM0SM1=00,通過執(zhí)行MOV SCON,#00H。 此時:RXD(P3.0):數據的發(fā)送或接收口。 TXD(P3.1):輸出同步移位脈沖。 發(fā)送、接收的是8位數據,不設起始位和停止位,低位在前,波特率固定為fosc/12。,也就是每一機器周期傳送1位數據,方式0可外接移位寄存器,將串行接口擴展為并行接口,也可外接同步輸入輸出設備。,2020/7/15,單片機原理及應用技術教材編寫組,71,1)發(fā)送 CPU執(zhí)行一條寫SBUF的指令如MOV SBUF,A就啟
43、動了發(fā)送過程。 如要再次發(fā)送數據,必須用軟件將TI清零,并再次執(zhí)行寫SBUF的指令。,2020/7/15,單片機原理及應用技術教材編寫組,72,2)接收 在RI0的條件下,將REN(SCON4)置1就啟動一次接收過程。此時RXD為串行數據接收端,RXD依然輸出同步移位脈沖。 在串行方式0時,是將串行口變成并行口使用。并要有串并轉換芯片74LS164、74LS165轉換。,2020/7/15,單片機原理及應用技術教材編寫組,73,2. 方式1,2020/7/15,單片機原理及應用技術教材編寫組,74,1)發(fā)送 CPU執(zhí)行一條寫SBUF指令后便啟動了串行口發(fā)送,數據從TXD輸出。,2020/7/1
44、5,單片機原理及應用技術教材編寫組,75,2)接收 接收器采用移位寄存器和SBUF雙緩沖結構,使得前、后兩幀數據進入SBUF的時間間隔至少有l(wèi)0個位傳送周期。在后一幀數據送入SBUF之前,CPU有足夠的時間將前一幀數據取走。,2020/7/15,單片機原理及應用技術教材編寫組,76,3. 方式2與方式3 當設定SM0,SM1為10或11時,串行口工作于方式2或方式3,這兩種方式都是9位異步通信,僅波特率不同,適用于多機通信。 在方式2或方式3下,數據由TXD發(fā)送,RXD接收,1幀數據為11位,1位起始位(低電平)8位數據位(低位在前)1位可編程位(第9位數據)用作奇偶校驗或地址/數據選擇,1位
45、停止位,與方式1相比多了一位可編程位,發(fā)送時,第9位數據為TB8,接收時,第9位數據送入RB8。,2020/7/15,單片機原理及應用技術教材編寫組,77,方式2和方式3的區(qū)別只在于波特率不同。 方式2的波特率 = 2SMOD *fosc /64 即為fosc/32(SMOD1時) 或 fosc/64(SMOD0時)。 方式3波特率=2SMOD *(定時器T1溢出率)/32 即由定時器/計數器1 或 定時器/計數器2 及 SMOD決定。,2020/7/15,單片機原理及應用技術教材編寫組,78,1)發(fā)送 方式2、方式3發(fā)送時,數據從TXD引腳輸出,附加的第九位數據由SCON中的TB提供。CPU
46、執(zhí)行一條寫入SBUF的指令后立即啟動發(fā)送器發(fā)送;發(fā)送完一幀信息后由硬件置TI1。,2020/7/15,單片機原理及應用技術教材編寫組,79,2)接收 與方式l相似,REN置l后,跳變檢測器不斷對RXD引腳采樣。當采樣到負跳變后就啟動接收控制器。位檢測器對每位數據采集3個值,用采3取2辦法確定每位的數值。當第九位數據移入移位寄存器后,將8位數據裝入SBUF,第九位數據裝入RB*,并置R11。,2020/7/15,單片機原理及應用技術教材編寫組,80,4. 多機通信 串行口用于多機通信時必須使用方式2或方式3。 設多機系統(tǒng)有1個主機與3個從機,從機地址分別為00H、01H、02H。為了區(qū)分是數據信
47、息還是地址信息,主機用第九位數據TB作為地址/數據的識別位,地址幀的TB1,數據幀的TB0。各從機的SM2必須置1。,2020/7/15,單片機原理及應用技術教材編寫組,81,在主機與某從機通信前,先將該從機的地址發(fā)送給各從機。由于各從機SM21,接收到的地址幀RB1,所以各從機的接收倍息都有效,送入各自的接收緩沖器,并置RI1。各從機CPU響應中斷后,通過軟件判斷主機送來的是不是本從機地址,如是本從機地址就使SM20,否則保持SM21。 接收主機發(fā)送數據幀,因數據幀的第九位數據RB0,只有地址相符的從機其SM20,才能將8位數據裝入SBUF,其他從機因SM2l,數據將丟失,從而實現主機與從機
48、的一對一通信。 方式2、3也可以用于雙機通信,此時第九位數據可作為奇偶校驗位,但必須使SM20。,2020/7/15,單片機原理及應用技術教材編寫組,82,5. 波特率 工作方式0的波特率是固定的,為f /12。 工作方式2的波特率由SMOD(PCDN.7)決定。 SMOD=1時為f /32 SMOD=0時為f /64 在8031/8051/8751單片機中,工作方式1、工作方式3的波特率取決于定時器/計數器1的溢出速率及SMOD,并由下式決定 波特率2SMOD定時器/計數器1溢出速率/32,2020/7/15,單片機原理及應用技術教材編寫組,83,例 設串行接口工作于工作方式3,SMOD0,
49、f=11.059MHz,定時器/計數器1工作于定時器方式2(自動重裝載方式),TLl、THl的初值為FDH,試計算波特率。 因為定時器/計數器1的定時時間為: T(256253)12/(11.059106) 其溢出速率: 1/T11.059106/(256-253)12307194.4 所以波特率為: 20307194.4/329599.839600(位/秒),2020/7/15,單片機原理及應用技術教材編寫組,84,2.7 中斷系統(tǒng),中斷系統(tǒng)在計算機應用系統(tǒng)中起著十分重要的作用,良好的中斷系統(tǒng)能提高計算機對外界異步事件的處理能力和響應速度,從而擴大計算機的應用范圍。在單片機中,實時控制、故障
50、自動處理時往往用到中斷系統(tǒng),計算機與外部設備間傳送數據及實現人機聯系也常常采用中斷方式。,2020/7/15,單片機原理及應用技術教材編寫組,85,2.7.1中斷系統(tǒng)的總體結構 為了實現中斷功能而配置的軟件和硬件,稱為中斷系統(tǒng)。中斷系統(tǒng)的處理過程包括中斷請求、中斷響應、中斷處理和中斷返回。 MCS-5l中斷系統(tǒng)的功能為: 5個中斷請求源 4個用于中斷控制和管理的可編程和可位尋址的特殊功能寄存器(中斷允許控制寄存器IE、中斷優(yōu)先級控制寄存器IP以及定時器/計數器控制寄存器TCON等) 提供兩個中斷優(yōu)先級,可實現二級中斷嵌套,且每一個中斷源可編程為開放或屏蔽。,2020/7/15,單片機原理及應用
51、技術教材編寫組,86,中斷系統(tǒng)結構示意圖,2020/7/15,單片機原理及應用技術教材編寫組,87,2.7.2 中斷源 8031/8051/8751有5個中斷源。 1. 外部中斷0、1 輸入/輸出設備的中斷請求,掉電、設備故障的中斷請求等都可以作為外部中斷源,從引腳INT0或INT1輸入。 外部中斷請求INT0、INT1有兩種觸發(fā)方式: 電平觸發(fā) 跳變觸發(fā) 2定時器/計數器0、1溢出中斷 定時器/計數器計數溢出時,由硬件分別置TF01或TFl1,向CPU申請中斷。CPU響應中斷后,由硬件自動清除TF0或TF1。,2020/7/15,單片機原理及應用技術教材編寫組,88,3串行接口中斷 串行接口
52、的中斷請求由發(fā)送或接收所引起。串行接口發(fā)送了一幀信息,便由硬件置TI1、向CPU申請中斷。串行接口接收了一幀信息,便由硬件置RI1,向CPU申請中斷。CPU響應中斷后必須用軟件清除TI和RI。 8032/8052有6個中斷源,增加了定時器/計數器2中斷請求。該中斷源有溢出中斷和定時器/計數器2外部中斷兩種方式。 除了外部中斷電平觸發(fā)方式外,其他各個中斷實際上是由標志位IE0、IE1、TF0、TFl、TI、RI、TF2及EXF2置位引起的。如果有需要,可以用程序安排產生中斷。,2020/7/15,單片機原理及應用技術教材編寫組,89,2.7.3 中斷控制 1. 中斷允許控制 MCS-51有多個中
53、斷源,為了便于用戶靈活使用,在每一個中斷請求信號的通路中設置了一個中斷屏蔽觸發(fā)器,用KI表示。KI合上,中斷請求信號才能進入CPU,這稱為接口電路中斷允許或中斷開放,否則,即使中斷標志位置1,CPU也不響應中斷,這稱為接口電路中斷屏蔽或中斷禁止。 在CPU內部還設置了一個中斷允許觸發(fā)器,用K2表示。只有在CPU中斷允許(K2合上)的情況下,CPU才會響應中斷。如果CPU中斷屏蔽(K2打開),CPU一律不響應任何中斷,即中斷系統(tǒng)停止工作。,2020/7/15,單片機原理及應用技術教材編寫組,90,中斷屏蔽觸發(fā)器(K1)與中斷允許觸發(fā)器(K2)由中斷允許寄存器IE控制工作。IE的格式如下; IE的
54、每一位都可以由軟件置1或清零。且1中斷允許,0中斷屏蔽。 (1)CPU中斷允許位EA (2)定時器/計數器2中斷允許位ET2 (3)串行接口中斷允許位ES (4)定時器/計數器1中斷允許位ETl (5)外部中斷1中斷允許位EX1 (6)定時器/計數器0中斷允許位ET0 (7)外部中斷0中斷允許位EXO,2020/7/15,單片機原理及應用技術教材編寫組,91,2中斷優(yōu)先權選擇 8051單片機有兩個中斷優(yōu)先級,每一個中斷源都可以通過編程確定為高優(yōu)先級中斷或低優(yōu)先級中斷,高優(yōu)先級的優(yōu)先權高。同一優(yōu)先級別中的中斷源不止一個,所以也有中斷優(yōu)先權排隊問題。 中斷優(yōu)先級由中斷優(yōu)先級寄存器IP控制。IP的格
55、式如下:,2020/7/15,單片機原理及應用技術教材編寫組,92,IP中的每一位都可以由軟件來置1或清零,且1高優(yōu)先級,0低優(yōu)先級。 (1)定時器/計數器2中斷優(yōu)先級選擇位PT2 (2)串行口中斷優(yōu)先級選擇位PS (3)定數器/計數器1中斷優(yōu)先級選擇位PTl (4)外部中斷1中斷優(yōu)先級選擇位PXl (5)定時器/計數器0中斷優(yōu)先級選擇位PT0 (6)外部中斷0中斷優(yōu)先級選擇位PX0,2020/7/15,單片機原理及應用技術教材編寫組,93,同一優(yōu)先級中的中斷源優(yōu)先權排隊由中斷系統(tǒng)的硬件確定,用戶無法自行安排。,2020/7/15,單片機原理及應用技術教材編寫組,94,例 8031芯片的INT
56、0、INT1引腳分別輸入壓力超限及溫度超限中斷請求信號,定時器/計數器0作定時檢測的實時時鐘,用戶規(guī)定的中斷優(yōu)先權排隊次序為: 壓力超限溫度超限定時檢測 要求確定IE、IP的內容,以實現上述要求。,2020/7/15,單片機原理及應用技術教材編寫組,95,MCS-51系列單片機的中斷優(yōu)先權有三條原則: 正在進行的中斷過程不能被新的同級或低優(yōu)先級的中斷請求所中斷,一直到該中斷服務程序結束, 正在進行的低優(yōu)先級中斷服務程序能被高優(yōu)先級中斷請求所中斷,實現二級中斷嵌套。 CPU同時接收到幾個中斷請求時,首先響應優(yōu)先權最高的中斷請求。,2020/7/15,單片機原理及應用技術教材編寫組,96,2.7.
57、4 中斷響應 MCS-51的CPU在每個機器周期的S5P2期間順序采樣各中斷請求標志位,如有置位,且下列三種情況都不存在,那么在下一周期的S1期間響應中斷。否則,采樣的結果被取消。三種情況是: CPU正在處理同級或高優(yōu)先級的中斷。 現行的機器周期不是所執(zhí)行指令的最后一個機器周期。 正在執(zhí)行的指令是RETI或訪問IE、IP的指令。CPU在執(zhí)行RETI或訪問IE、IP的指令后,至少需要再執(zhí)行一條其他指令后才會響應中斷請求。,2020/7/15,單片機原理及應用技術教材編寫組,97,CPU響應中斷后,由硬件執(zhí)行如下功能: 根據中斷請求源的優(yōu)先級高低,使相應的優(yōu)先級狀態(tài)觸發(fā)器置1。 保留斷點,即把程序計數器PC的內容推入堆棧保存。 清相應的中斷請求標志位IE0、IE1、TF0或TFl。 把被響應的中斷服務程序的入口地址送入PC,從而轉入相應的中斷服務程序。 中斷服務程序的最后一條指令必須是中斷返回指令RETI。 保護現場及恢復現場的工作必須由用戶設計的中斷服務程序處理,有些中斷請求的撤除也要由中斷服務程序來實現。,2020/7/15,單片機原理及應用技術教材編寫組,98,2.7.5 中斷請求的撤除 CPU響應中斷請求后,在中斷返回(執(zhí)行RETI)前,必須撤除請求,否則會錯誤地再一次引起中斷過程。
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 燕窩如何營銷活動方案
- 愛國剪紙活動方案
- 愛在派對活動方案
- 愛心協會現場活動方案
- 愛心接送活動方案
- 愛想想區(qū)域活動方案
- 父親感恩活動方案
- 版權日活動方案
- 牙科線下活動方案
- 牛肉公司營銷活動方案
- GB/T 28575-2020YE3系列(IP55)三相異步電動機技術條件(機座號63~355)
- 國際公法學 馬工程課件 4 第四章
- 青海省西寧市《職業(yè)能力測試》事業(yè)單位國考真題
- 溝通中的提問技巧課件
- 2023年浙江黃龍體育發(fā)展有限公司招聘筆試模擬試題及答案解析
- 外科學骨折概論課件
- 阿片類藥物鎮(zhèn)痛機制課件
- 產品成本核算流程圖
- 母線槽安裝檢驗批質量驗收記錄
- 生物吸附課件
- 游泳池水質檢測記錄表
評論
0/150
提交評論