版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、第二章 MCS-51微處理器,2-1 微處理器概述: 2-2 微處理器結(jié)構(gòu): 2-3 MCS-51硬件結(jié)構(gòu): 2-4 時鐘、復(fù)位和時序:,2-1 微處理器概述,一、微處理器和微控制器: 二、CISC和RISC體系結(jié)構(gòu): 三、4位、8位、16位32位單片機:,一、微處理器和微控制器,微處理器: 不同于普通數(shù)字邏輯電路,其功能由設(shè)計人員編制的程序來實現(xiàn)。特點:可編程 是構(gòu)成巨型機、微型機、嵌入式系統(tǒng)等計算機系統(tǒng)的核心 微控制器: 特別適合嵌入式應(yīng)用的計算機系統(tǒng)。 除了微處理器本身性能的提升,更體現(xiàn)在其外圍部件的發(fā)展。 微處理器是微控制器的核心; 微控制器是微處理器的擴展 。,二、CISC和RISC
2、體系結(jié)構(gòu),1、指令系統(tǒng): 指令系統(tǒng)設(shè)計體現(xiàn)了微處理器性能。 是指微處理器能夠執(zhí)行的所有機器指令的集合。是軟件實現(xiàn)硬件功能的基礎(chǔ)。 指令系統(tǒng)的發(fā)展分為“復(fù)雜化”和“簡單化”兩個方向。 2、CISC結(jié)構(gòu):(Complex Instruction Set Computer) 背景:設(shè)計初衷是提高程序效率 特點:指令機器碼長短不一、指令執(zhí)行時間多周期且長短不一。 3、RISC結(jié)構(gòu):(Reduced Instruction Set Computer) 背景:并行處理和流水線工作方式逐漸成熟 特點:指令機器碼長度一致、指令執(zhí)行時間大多數(shù)在單周期內(nèi)完成。,三、4位、8位、16位32位單片機,1、微處理器的字
3、長: 一次運算能夠并行處理的二進制數(shù)據(jù)的位數(shù)。 2、通用微處理器的字長: 4位、8位、16位、32位、64位 3、微控制器的字長: 4位、8位、16位、32位 單片機的工作頻率和字長是兩個比較重要的性能指標。 發(fā)展方向:1、高性能的16、32位機 2、高性價比的8位機,2-2 微處理器結(jié)構(gòu),一、微處理器的基本組成: 二、運算器與運算結(jié)果: 三、控制器和指令執(zhí)行: 四、寄存器組: 五、總線和存儲組織: 六、堆棧,一、微處理器的基本組成,CPU:中央處理單元 計算機中執(zhí)行運算和控制的部件,由算術(shù)邏輯部件和控制部件組成。 CPU和寄存器集成,構(gòu)成微處理機。 微處理機必須具有指令控制、操作控制、時間控
4、制、數(shù)據(jù)處理等功能 指令控制:按程序規(guī)定的指令順序執(zhí)行程序; 操作控制:根據(jù)指令進行相應(yīng)的硬件操作; 時間控制:具有嚴格的時間約束; 數(shù)據(jù)處理:算術(shù)運算,邏輯運算等。,一、微處理器的基本組成,1、微處理器內(nèi)部結(jié)構(gòu) 運算器ALU:實現(xiàn)數(shù)據(jù)處理功能 控制器CU:實現(xiàn)指令、操作和時間控制 寄存器REG:配合ALU和CU工作 2、模型機的指令執(zhí)行過程; 送出地址:程序計數(shù)器送出指令地址到片外地址總線;(地址總線) 獲取指令:控制器發(fā)出取指令信號,從程序存儲器取得指令并送到指令寄存器;(數(shù)據(jù)總線) 譯碼取數(shù):指令譯碼器對指令譯碼,取相應(yīng)的操作數(shù)(地址總線與數(shù)據(jù)總線) 操作輸出: ALU 結(jié)合累加器、緩沖
5、器、程序狀態(tài)字等進行數(shù)據(jù)處理。(地址總線與數(shù)據(jù)總線),輸入輸出接口,二、運算器與運算結(jié)果,1、運算器功能及相關(guān)部件: ALU:由補碼加法運算、邏輯運算、移位/取反、BCD碼加法的電路組成。 能夠完成加、減、乘、除等算術(shù)運算及與、或、非、異或等邏輯操作; 還具有較強的位處理能力:位置1、位清零、位“與”、位“或”等操作; 通過對運算結(jié)果的判斷,影響程序狀態(tài)寄存器相關(guān)位的內(nèi)容。 相關(guān)部件:ALU、累加器、緩沖器、程序狀態(tài)字 2、運算結(jié)果及處理: 直接結(jié)果:通常在累加器中 間接結(jié)果:硬件修改程序狀態(tài)字,ALU相關(guān)寄存器,累加器A 存放第一操作數(shù)及操作結(jié)果的專用寄存器,也稱ACC;(E0H) 累加器B
6、 也稱B寄存器,乘、除法運算時用作累加器功能;(F0H) 程序狀態(tài)字PSW 存放程序運行時指令操作的輔助結(jié)果,三、控制器和指令執(zhí)行(1),1、控制器:完成指揮控制工作,協(xié)調(diào)單片機各部分正常工作,是整個單片機的指揮中心。 控制器主要作用: 指令的讀出、譯碼和執(zhí)行 指揮并控制運算器、存儲器和輸入輸出設(shè)備之間的數(shù)據(jù)流。 控制器(CU)主要包括: 程序計數(shù)器(PC) 指令寄存器(IR) 指令譯碼器(ID) 時序部件:定時和控制電路 數(shù)據(jù)指針(DPTR)和堆棧指針(SP),三、控制器和指令執(zhí)行(2),2、指令譯碼和執(zhí)行: 馮諾依曼計算機的特點:程序存儲 程序運行過程:取指令、譯碼、執(zhí)行 CPU執(zhí)行指令的
7、過程: 1 由程序存儲器PC中讀取的指令代碼送入指令存儲器 2 經(jīng)譯碼器譯碼后分析指令內(nèi)容,由定時與控制電路發(fā)出相應(yīng)的控制信號; 3 取操作數(shù),完成指令所指定的操作。,指令執(zhí)行過程,單片機工作過程實質(zhì)就是執(zhí)行程序的過程。 馮諾依曼結(jié)構(gòu)的CISC計算機要求指令嚴格按照三個階段逐條依次執(zhí)行 RISC計算機采用流水線方式,允許指令并行執(zhí)行,三重流水線,程序計數(shù)器PC,PC(Program Counter)用于存放CPU下一條要執(zhí)行的指令地址, 是一個 16 位的專用寄存器, 可尋址范圍是0000H0FFFFH共 64 KB。 程序中的每條指令存放在ROM區(qū)的某一單元, 并都有自己的存放地址。 CPU
8、 要執(zhí)行哪條指令時, 就把該條指令所在的單元的地址送上地址總線。 在順序執(zhí)行程序中, 當PC的內(nèi)容被送到地址總線后, 會自動加 1, 即(PC) (PC)+1, 又指向CPU 下一條要執(zhí)行的指令地址。,指令寄存器和指令譯碼器,指令寄存器 保存當前執(zhí)行的指令 指令譯碼器 完成按指令產(chǎn)生控制信號的譯碼問題,四、寄存器組(1),1、通用寄存器 用于存放數(shù)據(jù)或地址,能被ALU直接使用而用于提高數(shù)據(jù)處理速度。 MCS-51有四組8個8位的通用寄存器,即32個8位通用寄存器。 通用寄存器的二進制位數(shù)通常與微處理器的字長相一致。,四、寄存器組(2),2、專用寄存器 一個專用寄存器的二進制位數(shù)可以是單字節(jié)、多
9、字節(jié)甚至是一個二進制位。 累加器、指針寄存器; 標志寄存器、中斷寄存器; I/O數(shù)據(jù)、控制、狀態(tài)寄存器; 指令、緩沖等各種透明型寄存器。,四、寄存器組(3),累加器:專門用于存放第一操作數(shù)和操作結(jié)果的專用寄存器。 指針寄存器:包括堆棧指針寄存器、數(shù)據(jù)指針寄存器、變址指針寄存器等。 數(shù)據(jù)指針DPTR是一個 16 位的專用寄存器, 其高位字節(jié)寄存器用DPH表示,低位字節(jié)寄存器用DPL表示。 DPTR 主要用來存放 16 位地址,當對 64 KB外部數(shù)據(jù)存儲器空間尋址時,作為間址寄存器用。在訪問程序存儲器時,用作基址寄存器。,DPTR,五、總線和存儲組織(1),1、總線的類型: 片內(nèi)總線:微處理機內(nèi)
10、部各功能部件之間連接起來的公用信息通道稱為片內(nèi)總線(或者稱CPU總線); 片外總線:微處理機系統(tǒng)中把微處理機、存儲器、輸入輸出接口電路連接起來的公用信息通道稱為片外總線(或者稱板級總線); 系統(tǒng)總線:微處理機系統(tǒng)之間進行信號傳輸?shù)墓眯畔⑼ǖ婪Q為系統(tǒng)總線(或者稱通訊總線); 2、總線的工作模式:任意時刻只允許一個設(shè)備占用總線,以防止數(shù)據(jù)沖突。,五、總線和存儲組織(2),3、片外三總線: 數(shù)據(jù)總線:雙向總線,必須進行雙方向的連接或隔離(即雙向緩沖); 地址總線:單向總線,只須進行單方向的連接或隔離(由CPU指向片外); 控制總線:定向總線,即有的由CPU指向片外,有的由片外指向CPU。,六、堆棧
11、(1),1、什么叫堆棧: 微處理機中一組按照數(shù)據(jù)后進先出規(guī)律管理的特殊的二進制數(shù)據(jù)存儲器件。 2、堆棧的作用: 數(shù)據(jù)暫存、參數(shù)傳遞等, 特別是子程序調(diào)用和中斷過程中的地址保護。,六、堆棧(2),3、堆棧的種類: 硬件堆棧 是CPU內(nèi)部一組硬件自主管理的專用寄存器堆,堆棧操作只能針對棧頂進行,無法訪問堆棧內(nèi)部其它單元。特點:快、淺 軟件堆棧 軟件堆棧利用CPU內(nèi)部通用寄存器或者系統(tǒng)的數(shù)據(jù)存儲器進行,堆棧的棧頂通過堆棧指針SP由軟件管理,通過重新設(shè)置SP,可以訪問堆棧內(nèi)部任何一個單元。特點:深、慢,六、堆棧(3),堆棧指針SP(Stack Pointer) 軟件堆棧操作是在內(nèi)存RAM區(qū)開辟的按照“
12、先進后出”原則進行數(shù)據(jù)存取的一種工作方式; 主要用于子程序調(diào)用及返回和中斷處理斷點的保護及返回; SP用來指示堆棧所處的位置,在進行操作之前, 先用指令給SP賦值,以規(guī)定棧區(qū)在RAM區(qū)的起始地址(棧底層)。當數(shù)據(jù)推入棧區(qū)后,SP的值也自動隨之變化。 MCS - 51 系統(tǒng)復(fù)位后,SP初始化為07H。,六、堆棧(4),六、堆棧(5),4、軟件堆棧的種類: 按堆棧操作時SP中地址的增大或減小劃分: 向上生成型(入棧時SP中地址增大)51 向下生成型(入棧時SP中地址減?。?按堆棧操作時棧頂數(shù)據(jù)處理方式劃分: 空頂法(入棧時先操作后修改地址) 滿頂法(入棧時先修改地址后操作)51,2-3 MCS-5
13、1硬件結(jié)構(gòu),一、硬件資源 二、結(jié)構(gòu)框圖 三、引腳功能 四、CPU結(jié)構(gòu) 五、存儲空間,51單片機兼容產(chǎn)品,ATMEL 89c52 ADAdC812 WINBORDW78E51B PHILIPS P87LPC764 CYGNALC8051 ,51單片機開發(fā)板,一、硬件資源(1),1、CPU: 8位運算器、帶累加器結(jié)構(gòu) 2、存儲器: 片內(nèi)程序存儲器51子系列為4K、52子系列為8K 片內(nèi)數(shù)據(jù)存儲器51子系列為128B、 52子系列為256B 3、并行I/O口:4個8位雙向端口 4、串行I/O口:1個全雙工的異步串行通訊接口 5、定時器/計數(shù)器: 51子系列為2個、 52子系列為3個 6、中斷配置:
14、51子系列為3類5個中斷源、52子系列為3類6個中斷源 MCS-51系列芯片硬件資源配置見表所示。,MCS-51系列芯片硬件資源配置表,二、結(jié)構(gòu)框圖 (1),1、運算器: 運算器: 8位的ALU; 暫存器: 暫存器1的數(shù)據(jù)來自于B寄存器等; 暫存器2的數(shù)據(jù)來自于A累加器等; 累加器: 累加器A(8位); 輔助累加器B(8位),也稱乘法寄存器; 程序狀態(tài)字寄存器: PSW(8位),也可稱之為標志寄存器; 堆棧指針寄存器: SP(8位); 數(shù)據(jù)指針寄存器: DPTR(16位); 程序計數(shù)器: PC(16位);,結(jié)構(gòu)框圖,相關(guān)概念,由PC發(fā)起的取指令過程,二、結(jié)構(gòu)框圖 (2),2、控制器: 指令寄存
15、器: 定時及控制: 振蕩器: 中斷系統(tǒng): 16位地址寄存器; 3、寄存器: 片內(nèi)RAM; RAM地址寄存器; 4、存儲器: 片內(nèi)ROM或EPROM (51子系列4K、52子系列8K);,結(jié)構(gòu)框圖,二、結(jié)構(gòu)框圖 (3),5、I/O接口: 定時器/計數(shù)器; 串行口; 并口鎖存器: P0P3四個; 并口驅(qū)動器: P0P3四個;,結(jié)構(gòu)框圖,三、引腳功能(1)1、I/O引腳: 共32根,:和引腳數(shù)量相適應(yīng) P0.0P0.7: 共8根,作AD0AD7,不擴展時可作準雙向I/O口; P1.0P1.7: 共8根,作準雙向I/O口, 52子系列中P1.0作T2脈沖輸入、P1.1作T2外部控制; P2.0P2.7
16、: 共8根,作A8A15,不擴展時可作準雙向I/O口; P3.0P3.7: 共8根,除可作為準雙向I/O口外還具第二功能。,P3口功能表,芯片封裝,51芯片引腳圖,三、引腳功能(2) 2、控制引腳: 共4根+2根復(fù)用,ALE/PROG: 作輸出時:ALE稱地址鎖存允許,用于分離AD0AD7; 作輸入時:PROG,片內(nèi)EPROM編程時編程脈沖輸入端; RST/VPD:輸入復(fù)位引腳RESET,維持2個機器周期以上高電平時實現(xiàn)復(fù)位,也可用于備用電源輸入引腳VPD; EA/VDD:輸入引腳EA低電平有效時選擇片外程序存儲器;高電平無效時選擇片內(nèi)程序存儲器,也用作編程電源引腳VDD; PSEN:輸出引腳
17、,稱片外取指信號輸出端,在向片外存儲器進行讀操作時,每個機器周期兩次低電平有效; RD:輸出引腳,片外數(shù)據(jù)存儲器讀選通信號輸出,與并行口引腳P3.7復(fù)用; WR:輸出引腳,片外數(shù)據(jù)存儲器寫選通信號輸出,與并行口引腳P3.6復(fù)用;,51芯片引腳圖,三、引腳功能(3)3、其他引腳: 共4根+2根復(fù)用,XTAL1:片內(nèi)反相放大器輸入端,外接晶振; XTAL2:片內(nèi)反相放大器輸出端,外接晶振; VCC:主電源輸入,即+5V電源正端; VSS:主電源公共端,即GND,接電源負端; VPD:備用電源+5V0.5V的輸入端,當主電源下降到規(guī)定數(shù)值以下時便向片內(nèi)RAM供電以保持RAM中的數(shù)據(jù); 該引腳與控制引
18、腳RST復(fù)用; VDD:片內(nèi)EPROM編程電源+21V的輸入引腳,與EA復(fù)用;,51芯片引腳圖,51外接晶振電路,四、CPU結(jié)構(gòu)(1),MCS-51的CPU由運算器、寄存器組合、控制器組成。 1、運算器: 8位ALU:(核心) 能夠完成加、減、乘、除等算術(shù)運算及與、或、非、異或等邏輯操作; 算術(shù)運算和邏輯操作都必須在寄存器的配合下才能完成。,四、CPU結(jié)構(gòu)(2),ALU操作過程中必須配合的寄存器: 累加器A: 存放第一操作數(shù)及操作結(jié)果的專用寄存器,也稱ACC;(E0H) 累加器B: 也稱B寄存器,乘、除法運算時用作累加器功能;(F0H) 程序狀態(tài)字PSW: 存放程序運行時指令操作的輔助結(jié)果,(
19、D0H)其各位為:,程序狀態(tài)字結(jié)構(gòu)(1),進位標志C(D7): 加、減法運算有進、借位時C=1,否則C=0; 位處理時,作位累加器用,即存放第一操作數(shù)與結(jié)果; 輔助進位標志AC(D6): 加、減法運算時低半字節(jié)的D3位有進、借位時 AC=1,否則AC=0; 軟件標志F0(D5): 由軟件置位或復(fù)位,歸用戶定義使用;,D7 D6 D5 D4 D3 D2 D1 D0,程序狀態(tài)字結(jié)構(gòu)(2),工作寄存器組選擇位:RS1(D4)、RS0(D3): 由軟件置位或復(fù)位,用以選擇4組工作寄存器中的一組; 溢出標志OV(D2): OV=1反映放回累加器A中的運算結(jié)果已經(jīng)超出補碼形式表示的有符號數(shù)表達范圍(-12
20、8+127),具體操作為: 做加、減法運算時,若最高位、次高位二位中有一位產(chǎn)生進、借位,則OV位被硬件置1; OV=C7C6 即異或 關(guān)系相同時為0,不相同時為1,程序狀態(tài)字結(jié)構(gòu)(3),做乘法運算時,當積大于255時OV=1,否則OV=0,由于積的高8位在B中,低8位在A中,因此當OV=0時只要從A中取積即可; 做除法運算時,若寄存器B中的除數(shù)為0則OV=1,否則OV=0; 奇偶標志P(D0): 表達每次指令操作之后累加器A中的“1”的個數(shù),若A中“1”的個數(shù)為奇數(shù)個則P=1,偶數(shù)個則P=0;,四、CPU結(jié)構(gòu)(3),2、寄存器組合: MCS-51CPU中寄存器組合包括如下: 工作寄存器組:(0
21、0H1FH) R0R7每組8個,共4組,由RS1、RS0的值來選擇: 當值為0、0時第0組,R0R7的地址是:00H07H; 當值為0、1時第1組,R0R7的地址是:08H0FH; 當值為1、0時第2組,R0R7的地址是:10H17H; 當值為1、1時第3組,R0R7的地址是:18H1FH;,四、CPU結(jié)構(gòu)(4),位尋址區(qū):(20H2FH)16字節(jié), 168=128位, 其位地址分別為00H7FH; 通用寄存器區(qū):通常堆棧設(shè)在該區(qū); (30H7FH) 共80字節(jié)(51子系列) (30HFFH) 共208字節(jié)(52子系列) 特殊功能寄存器區(qū):(80HFFH) 也稱SFR,只使用128字節(jié)中的一部
22、分: 51子系列用了21個、52子系列用了26個;,片內(nèi)寄存器分布圖,數(shù)據(jù)指針DPTR,端口P0-P3,未定義的尋址區(qū),位尋址表,四、CPU結(jié)構(gòu)(5),3、控制器: 程序計數(shù)器PC: (PROGRAM COUNTER)用于存放下一條取指指令的地址,由于為16位,可尋址范圍為64K;(注意:PC無地址指令不能對PC直接尋址) 指令寄存器IR: 存放當前正在執(zhí)行的指令; 指令譯碼器ID: 對IR中的指令操作碼進行分析、解釋,產(chǎn)生相應(yīng)的控制信號控制計算機的運行; 定時及控制電路: 按ID產(chǎn)生的控制信號以一定的時序控制計算機運行。,取指令過程,指令執(zhí)行過程,指令執(zhí)行簡例,四、CPU結(jié)構(gòu)(6),附一:M
23、CS-51的布爾處理器 片內(nèi)數(shù)據(jù)存儲器中128位和專用功能寄存器中的85位(51子系列)或93位(52子系列)構(gòu)成了MCS-51的布爾處理器的操作區(qū)。 具有自己的指令系統(tǒng)、自己的累加器C 。 可執(zhí)行置位、清零、取反、等于1轉(zhuǎn)移、等于0轉(zhuǎn)移、等于1轉(zhuǎn)移并清零等操作。也可進行一些簡單的邏輯操作。 位處理的好處是: 可以不使用過多的數(shù)據(jù)傳送,字節(jié)屏蔽和測試分支樹,就可以實現(xiàn)復(fù)雜的組合邏輯功能。,四、CPU結(jié)構(gòu)(7),附二:MCS-51的堆棧: MCS-51采用滿頂法向上生成的軟件堆棧; 堆棧指針SP:(地址為81H)只是低7位有效的 8位寄存器,堆棧深度最大可達128單元,注意只可設(shè)置在片內(nèi)RAM區(qū)
24、(或稱通用寄存器區(qū)),不能設(shè)置在片外RAM區(qū)。,軟件堆棧結(jié)構(gòu)圖,堆棧指針和壓棧操作實例,五、存儲空間(1),1、存儲空間概念: 微處理機指令系統(tǒng)能夠訪問的存儲器的地址范圍稱作存儲器的可尋址地址空間,簡稱存儲空間。 2、存儲器組織方式: 普林斯頓結(jié)構(gòu):程序存儲器、數(shù)據(jù)存儲器及I/O接口統(tǒng)一編址的方式; 哈佛結(jié)構(gòu):程序存儲器與數(shù)據(jù)存儲器(含I/O接口)分開編址的方式。,基本概述,半導體存儲器的分類: 一、只讀:相當于印刷好了的書。 ROM(READ ONLY MEMORY) PROM、OTP(ONE TIME PROGRAM) EPROM、EEPROM、FLASH ROM等均需要特殊的“印刷”工具
25、編程器才能將內(nèi)容固化進去。 二、隨機:相當于可隨時修改的顯示屏幕。 RAM(RANDOM ACCESS MEMORY),五、存儲空間(2),3、MCS-51系列存儲器組織: 三個概念空間4個物理空間存儲器: 64KB的片內(nèi)、片外統(tǒng)一編址的程序存儲器空間; 128B或256B的片內(nèi)單獨數(shù)據(jù)存儲器空間;(寄存器、存儲器雙重性質(zhì)) 64KB片外單獨數(shù)據(jù)存儲器空間 。,五、存儲空間(3),4、片內(nèi)數(shù)據(jù)存儲器區(qū): 數(shù)據(jù)存儲器的實際物理空間: A、51子系列有2個數(shù)據(jù)存儲器物理空間: 片內(nèi)RAM:00HFFH,(含SFR) 片外RAM:0000HFFFFH B、52子系列有3個數(shù)據(jù)存儲器物理空間: 片內(nèi)R
26、AM:00HFFH 片內(nèi)SFR:80HFFH 片外RAM:0000HFFFFH 注意:通過使用不同指令尋址來解決物理空間的編址重疊問題。,片內(nèi)寄存器分布圖,五、存儲空間(4),片內(nèi)數(shù)據(jù)存儲器區(qū)可分為四個區(qū)域 工作寄存器區(qū): 00H1FH,共32字節(jié) 每組8個字節(jié),分別記作R0R7,共4組,由PSW中RS1、RS0( D4、D3)指定當前組: 當RS1=0、RS0=0時選擇0組地址為00H07H 當RS1=0、RS0=1時選擇1組地址為08H0FH 當RS1=1、RS0=0時選擇2組地址為10H17H 當RS1=1、RS0=1時選擇3組地址為18H1FH,工作寄存器操作實例,五、存儲空間(5),
27、位尋址區(qū): 20H2FH,共16字節(jié) 每字節(jié)8位,可尋址位為816=128位,位地址分別為00H7FH 注意: 該16字節(jié)既可以進行字節(jié)尋址,又可以進行位尋址(即布爾處理器可對此部分進行操作)。,位尋址寄存器位地址表,位尋址舉例,位尋址區(qū)操作,五、存儲空間(6),數(shù)據(jù)緩沖區(qū): 51子系列為30H7FH,共80字節(jié) 52子系列為30HFFH,共208字節(jié) 可作片內(nèi)RAM或通用寄存器使用,低地址區(qū)常作堆棧區(qū)。 例如執(zhí)行指令: MOV SP,#2FH 即:從30H單元開始用作堆棧。,五、存儲空間(7),特殊寄存器區(qū):地址:80HFFH 也稱SFR(SPECIAL FUNCTION REGISTER)
28、區(qū) 共128字節(jié),但僅用了一小部分: 51子系列只用了21個單元,即18個SFR,其中含有3個雙字節(jié)的SFR; 52子系列只用了26個單元,即21個SFR,其中含有5個雙字節(jié)的SFR。 SFR用于片內(nèi)硬件的管理,通常只能以字節(jié)為單位借助于MOV指令直接尋址,但其地址為能夠被8所整除的單元(即以0、8結(jié)尾的單元)可實現(xiàn)位尋址。 51子系列有11個SFR單元的85個有效位可進行位尋址; 52子系列有12個SFR單元的93個有效位可進行位尋址;,五、存儲空間(8),片內(nèi)數(shù)據(jù)存儲器區(qū)也是前面CPU結(jié)構(gòu)中提到的寄存器組合。因此: 該部分物理單元具有寄存器和存儲器的雙重特性。,五、存儲空間(9),5、片外
29、數(shù)據(jù)存儲器區(qū): 0000HFFFFH,共64K字節(jié),使用MOVX指令尋址 當尋址范圍256字節(jié)時,可借助于工作寄存器R0或R1間接尋址: 從片外RAM區(qū)取數(shù)據(jù): MOVX A,Rj 向片外RAM區(qū)存數(shù)據(jù): MOVX Rj,A 當尋址范圍256字節(jié)時,可借助16位的數(shù)據(jù)指針DPTR間接尋址: 從片外RAM區(qū)取數(shù)據(jù): MOVX A,DPTR 向片外RAM區(qū)存數(shù)據(jù): MOVX DPTR,A,五、存儲空間(10),6、程序存儲器的物理空間: A、對于8051、8751、8951可以有2個物理空間: 片內(nèi)的4K空間: 0000H0FFFH 片外的64K空間: 0000HFFFFH B、對于8052可以有
30、2個物理空間: 片內(nèi)的8K空間: 0000H1FFFH 片外的64K空間: 0000HFFFFH C、對于8031、8032只有1個物理空間: 片外的64K空間: 0000HFFFFH 靠EA引腳上的電平來解決空間編址的重疊問題。,五、存儲空間(11),、片內(nèi)ROM區(qū): A、對于8051、8751、8951為4K: 0000H0FFFH; 對于8052為8K: 0000H1FFFH; B、該區(qū)的尋址由EA引腳上的電平保證,即EA=1時尋址片內(nèi)空間; C、取指令: 當EA=1時,控制器按PC中地址從片內(nèi)ROM中取指令; D、取數(shù)據(jù): 當EA=1時,使用指令 MOVC A,A+DPTR 或使用指令
31、 MOVC A,A+PC 從片內(nèi)ROM的表格中取數(shù)據(jù);,五、存儲空間(12),片外ROM區(qū): A、片外程序存儲器的使用范圍可以是52子系列的56K(2000HFFFFH)、51子系列的60K(1000HFFFFH)或者51、52子系列的64K(0000HFFFFH); B、對于51子系列的片外0000H0FFFH這4K區(qū)域或52子系列的片外0000H1FFFH這8K區(qū)域均必須使EA=0才能尋址。,五、存儲空間(13),ROM區(qū)的特殊地址: 51子系列有6個: 一個復(fù)位入口和5個中斷入口; 52子系列有7個: 一個復(fù)位入口和6個中斷入口; 其特殊地址和用途分別為:,五、存儲空間(14),0000
32、H0002H 3個單元 復(fù)位入口復(fù)位時PC=0000H 0003H000AH 8個單元 外部中斷0的中斷入口 000BH0012H 8個單元 T0溢出中斷的中斷入口 0013H001AH 8個單元 外部中斷1的中斷入口 001BH0022H 8個單元 T1溢出中斷的中斷入口 0023H002AH 8個單元 串行口中斷的中斷入口 002BH 無限止 T2溢出或T2EX端跳變 中斷的中斷入口(52) 51子系列除串行中斷、52子系列除T2溢出中斷之外,由于入口地址所含單元較少,故特殊地址中往往用來存放無條件轉(zhuǎn)移指令。,MCS-51存儲器的訪問 A、計算機運行時,控制器按照PC中的地址直接從ROM中
33、 獲取指令; B、MCS-51系列CPU從ROM中獲取數(shù)據(jù)的方法: 借助16位的數(shù)據(jù)指針DPTR: MOVC A,A+DPTR 借助16位的程序計數(shù)器PC: MOVC A,A+PC C、MCS-51系列CPU從RAM中獲取數(shù)據(jù)的方法: 借助16位的數(shù)據(jù)指針DPTR: MOVX A,DPTR 借助8位的工作寄存器R0或R1: MOVX A,Rj D、MCS-51系列CPU向RAM中存放數(shù)據(jù)的方法: 借助16位的數(shù)據(jù)指針DPTR: MOVX DPTR,A 借助8位的工作寄存器R0或R1: MOVX Rj,A,2-4 時鐘、復(fù)位和時序,一、時鐘和時鐘電路 二、復(fù)位和復(fù)位電路 三、總線與操作時序,一、
34、時鐘和時鐘電路,1、時鐘的作用: 為CPU內(nèi)部以及CPU與其他部件的協(xié)調(diào)工作提供基本節(jié)拍。 2、時鐘的來源: 芯片內(nèi)部自己產(chǎn)生; 芯片外部輸入脈沖。 外部輸入時注意不同工藝芯片從不同引腳輸入的處理方法。,晶體振蕩電路,MCS-51復(fù)位電路,二、復(fù)位和復(fù)位電路(1),1、復(fù)位的作用: 復(fù)位使所有硬件處于初始化狀態(tài)。 復(fù)位能夠使系統(tǒng)從頭開始工作或者使系統(tǒng)退出死機、無效狀態(tài),重新初始化后開始工作。 2、復(fù)位的方式: 硬件冷復(fù)位(上電自動復(fù)位) 硬件熱復(fù)位(手動按鍵復(fù)位) 軟件復(fù)位(MCS-51無相應(yīng)指令),二、復(fù)位和復(fù)位電路(2),3、復(fù)位條件: RST引腳上出現(xiàn)10ms以上的高電平; 4、復(fù)位電路
35、: 由反相器A、電阻R、電容C構(gòu)成上電自動復(fù)位電路;按鍵K為手動復(fù)位而設(shè),二極管D用以增加斷電后短時間上電的電路可靠性; 5、復(fù)位結(jié)果:復(fù)位后硬件所處初始化狀態(tài)為: (PC)=0000H; (SP)=07H; (PSW)=00H; P0P3口鎖存器全為1,可用作輸入; 除串行數(shù)據(jù)緩沖器SBUF不變之外,其余SFR均清0;,MCS-51復(fù)位電路,三、總線與操作時序(1),1、振蕩周期t0: 利用片內(nèi)放大器和外接的反饋器件(晶體)形成自激振蕩,若振蕩產(chǎn)生的信號頻率為f0,則振蕩周期為:t0=1/f0; 振蕩周期是MCS-51的基本節(jié)拍,稱P。 2、時鐘周期S: 也稱狀態(tài)周期,是自激振蕩信號經(jīng)2分頻
36、后得到,則:S=2t0=2/f0; 時鐘周期是MCS-51的工作節(jié)拍,稱S。,三、總線與操作時序(2),3、機器周期T: 每6個時鐘周期構(gòu)成一個機器周期,因此:T=6S=12t0=12/f0; 4、指令周期: CPU執(zhí)行一條指令所需的時間稱指令周期。MCS-51的乘、除法指令的指令周期為4T,其余指令為單或雙周期指令;,讀片外存儲器時序圖,指令周期概念及實例,三、總線與操作時序(3),5、片外三總線: 數(shù)據(jù)總線DB: 8位、雙向,P0口(分時復(fù)用)引出; 地址總線AB: 16位、單向,P0(低)P2(高)引出; 控制總線CB: 6根、定向,專用或P3口第二功能。,片外三總線圖,三、總線與操作時
37、序(4),6、取指與指令執(zhí)行: 單字節(jié)指令 單字節(jié)單周期指令 取指令操作碼2個字節(jié),丟棄1個字節(jié) 單字節(jié)雙周期指令 取指令操作碼4個字節(jié),丟棄3個字節(jié) (涉及片外存儲器時除外) 單字節(jié)四周期指令 取指令操作碼8個字節(jié),丟棄7個字節(jié),三、總線與操作時序(5),雙字節(jié)指令: 雙字節(jié)單周期指令 取指令操作碼、地址碼各1個字節(jié) 雙字節(jié)雙周期指令 取指令操作碼、地址碼各1個字節(jié)后再取指令操作碼2個字節(jié)并丟棄,三、總線與操作時序(6),叁字節(jié)指令: 叁字節(jié)雙周期指令 取出操作碼1個字節(jié)、地址碼2個字節(jié)后,再取出1個字節(jié)的操作碼并丟棄,本章小結(jié),1、微處理器的結(jié)構(gòu); 2、MCS-51系列的片內(nèi)資源; 3、M
38、CS-51系列的存儲空間; 4、MCS-51系列的時鐘和復(fù)位; 5、MCS-51系列的總線和時序。,本章作業(yè),P0口驅(qū)動器,P0口鎖存器,P2口驅(qū)動器,P3口驅(qū)動器,P1口驅(qū)動器,P2口鎖存器,P3口鎖存器,P1口鎖存器,RAM 地址鎖存器,RAM,EPROM/ROM,ACC,B寄存器,TMP2,TMP1,程序地址 寄存器,PSW,緩沖器,PC遞增器,PC,DPTR,OSC,定時 和 控制,指 令 寄 存 器,PSEN ALE EA RST,ALU,中斷、串行口 和定時器等部件,SP,P0.0P0.7 P2.0P2.7,P1.0P1.7 P3.0P3.7,MCS-51硬件內(nèi)部結(jié)構(gòu)方框圖,返回,
39、4,5,5,1 40 2 39 3 38 4 37 5 36 6 35 7 34 8 33 9 8031 32 10 8051 31 11 8751 30 12 8032 29 13 8052 28 14 8752 27 15 26 16 25 17 24 18 23 19 22 20 21,VCC P0.0 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7 EA/VDD ALE/PROG PSEN P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0,T2/P1.0 T2EX/P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7
40、RST/VPD RXD/P3.0 TXD/P3.1 INT0/P3.2 INT1/P3.3 T0/P3.4 T1/P3.5 WR/P3.6 RD/P3.7 XTAL2 XTAL1 VSS,MCS-51 芯 片 引 腳 圖,返回,DIP封裝,集成電路芯片封裝,集成電路芯片常見的封裝有: DIP:雙列直插式封裝技術(shù); PLCC:貼片封裝的一種,引腳在芯片底部向內(nèi)彎曲,焊接采用回流焊工藝; QFP:方型扁平式封裝技術(shù),該技術(shù)實現(xiàn)的CPU芯片引腳之間距離很小,管腳很細,在大規(guī)模或超大規(guī)模集成電路采用; TQFP:薄四方扁平封裝; SOIC:小外形集成電路封裝 ,一般引線數(shù)不超過28條。 封裝僅僅是芯片
41、的外部表現(xiàn)形式。,返回,MCS-51 RST,A,R D,C,K,+5V,MCS-51 的 復(fù) 位 電 路,返回,: :,堆棧的底部,堆棧的頂部,SP,軟件堆棧結(jié)構(gòu)圖,堆棧特點: 先進后出 后進先出,壓 入,彈 出,返回,地 址 增 大,堆棧指針與壓棧操作,當堆棧指針SP=07H時, 實際的堆棧空間是從08H開始,也就是說若有地址自動壓棧 操作時,將會填寫08H和09H單元的內(nèi)容??梢姇c工作寄存器 1組產(chǎn)生沖突; 當堆棧指針SP=1FH時, 實際的堆??臻g是從20H開始,也就是說若有地址自動壓棧 操作時,將會填寫20H和21H單元的內(nèi)容??梢姇c位尋址區(qū)產(chǎn) 生沖突; 當堆棧指針SP=2FH時
42、, 實際的堆棧空間是從30H開始,也就是說若有地址自動壓棧操作時, 將會填寫30H和31H單元的內(nèi)容??梢姇c數(shù)據(jù)緩沖區(qū)產(chǎn)生沖突。 因此,通??墒苟褩V羔楽P5FH 或6FH.也就是說,編程時最好要對 工作寄存器、位尋址區(qū)、數(shù)據(jù)緩沖區(qū)、堆棧等的使用有一個基本的規(guī)劃。 思考:當堆棧指針SP=7FH時,實際的堆棧會從什么地址開始?,返回,FFH FFH 80H 80H 7FH 30H 2FH 20H 1FH 00H,僅52子系列有,SFR 特殊 寄存器,通用寄存器區(qū),位尋址區(qū),工作寄存器3組,工作寄存器2組,工作寄存器1組,工作寄存器0組,片 內(nèi) 寄 存 器 分 布 圖,返回,D7 D6 D5 D
43、4 D3 D2 D1 D0,字節(jié) 2FH 2EH 2DH 2CH 2BH 2AH 29H 28H 27H 26H 25H 24H 23H 22H 21H 20H,位尋址寄存器每一位的位地址表,返回,數(shù)據(jù)指針寄存器DPTR,數(shù)據(jù)指針寄存器DPTR 16位 主要有兩個用途: 一是用基址加變址的尋址方法,訪問程序存儲器讀表格常數(shù) MOVC A,A+DPTR 二是用來保持16位地址,對64K片外數(shù)據(jù)存儲器空間尋址. MOVX A,DPTR MOVX DPTR,A 除上述兩種用途外,亦可分成兩個獨立的8位寄存器來使用. MOV DPH,A MOV A,DPL DPH 地址 83H DPL 地址 82H,
44、返回,端口地址P0-P3,MCS51的口線鎖存器作為專用寄存器處理,因此 都有相應(yīng)的SFR地址。(寄存器化) P0 80H P1 90H P2 A0H P3 B0H 注意:在使用8031芯片或外擴程序存儲器數(shù)據(jù)存儲器時,P0 、P2口要用作地址線和數(shù)據(jù)線,因此不能簡單地使用指令 MOV P0,A MOV A,P2 (指令無效) 使用P3口時也要注意同樣問題。,返回,未定義的SFR,剩余未定義的一百多個尋址地址,無法用作用戶數(shù)據(jù)存儲器. 比如: MOV A,0FFH 將FFH單元的內(nèi)容送到A MOV 85H,A 將A的內(nèi)容送到85H單元 這些指令沒有任何意義.讀取的可能是 不確定的隨機數(shù).,返回
45、,MCS-51CPU讀片外存儲器的時序圖,P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 S1 S2 S3 S4 S5 S6 S1 S2 S3 S4 S5 S6, 第 一 機 器 周 期 第 二 機 器 周 期 ,F0 ALE PSEN P2口 P0口 373出 RD,PCH出 PCH輸出 PCH或P2輸出 PCH出,指令 PCL 指令 PCL 數(shù)據(jù) PCL 指令,PCL出 PCL輸出 PCL輸出 PCL輸出,MOVX的讀指令時序,返回,指令周期概念,CPU執(zhí)行一條指令所需的時間稱指令周期。 在MCS-51系列單片機指令系統(tǒng)中: 單字節(jié)和雙字節(jié)指令都可能是單周期或雙周期的, 三字節(jié)指令都是雙周期的, 乘、除法指令是4周期指令。 例如: RET 22 單字節(jié) 雙周期 INC 08H 05 08 雙字節(jié) 單周期 PUSH 30H CO 30 雙字節(jié) 雙周期 LJMP 0500H 02 05 00 三字節(jié) 雙周期 MUL AB A4 單字節(jié) 4周期,返回,P3口引腳的
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 歷史巨匠風采錄
- 桃江安全生產(chǎn)實踐講解
- 安全培訓職工代表發(fā)言課件
- 貴陽職業(yè)規(guī)劃師培訓指南
- 機務(wù)人員培訓課件
- 機加工操作員安全培訓
- 水庫水生態(tài)綜合治理及供水工程項目可行性研究報告
- 未成年人反詐宣傳課件
- 小學英語口語教學中的教學策略創(chuàng)新與實踐教學研究課題報告
- 期末食堂安全培訓課件
- 2026年中國港口機械市場分析報告-市場規(guī)模現(xiàn)狀與發(fā)展趨勢分析
- 2025年江蘇省淮安市高二上學期學業(yè)水平合格性考試調(diào)研歷史試題(解析版)
- 服裝服飾公司經(jīng)營管理制度
- 室內(nèi)混凝土知識培訓內(nèi)容課件
- 職業(yè)衛(wèi)生應(yīng)急預(yù)案
- 2025年超聲波金焊機行業(yè)研究報告及未來行業(yè)發(fā)展趨勢預(yù)測
- DB14∕T 1049.2-2021 《山西省用水定額第2部分:工業(yè)用水定額》
- 醫(yī)學單招面試真題及答案
- 醫(yī)院窗口服務(wù)8S管理規(guī)范
- 患者突發(fā)昏迷的應(yīng)急預(yù)案演練腳本
- 高速輔警管理辦法
評論
0/150
提交評論