第1章 單片機概念、結(jié)構(gòu)及原理_第1頁
第1章 單片機概念、結(jié)構(gòu)及原理_第2頁
第1章 單片機概念、結(jié)構(gòu)及原理_第3頁
第1章 單片機概念、結(jié)構(gòu)及原理_第4頁
第1章 單片機概念、結(jié)構(gòu)及原理_第5頁
已閱讀5頁,還剩82頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、EEG9231 微機與單片機系統(tǒng)及應(yīng)用2單片機原理及接口技術(shù)分組 請自己組成小組,每組3-4位同學(xué),每小組可每小組可帶一臺計算機到實踐課堂,帶一臺計算機到實踐課堂,請學(xué)習(xí)委員統(tǒng)計分組情況在課后email給我。課堂實踐1: 請搜尋并討論微型計算機的分類,其組成部請搜尋并討論微型計算機的分類,其組成部分以及各部分的主流配置和最高配置分以及各部分的主流配置和最高配置, , 請搜尋并討論現(xiàn)在通用的單片機型號及用法請搜尋并討論現(xiàn)在通用的單片機型號及用法, , 請學(xué)號尾數(shù)的和為_的小組上臺講解自己小組的資料搜尋情況。45第1章 基礎(chǔ)知識預(yù)期學(xué)習(xí)結(jié)果: 掌握單片機的概念、了解單片機的發(fā)展、熟悉基本的結(jié)構(gòu)和特

2、點、了解單片機的應(yīng)用模式和領(lǐng)域以及初步認知MCS-51單片機。61.1 計算機的一些概念 計算機由運算器、控制器、存儲器、輸入設(shè)備和輸出設(shè)備五個部分組成。運算器控制器輸出設(shè)備輸入設(shè)備存儲器計算機的結(jié)構(gòu)78位計算機每個單元可存放一個8位二進制數(shù),即一個字節(jié),每一位的狀態(tài)是0或1。存儲單元保存的8位二進制數(shù)稱為單元的內(nèi)容。0110010101000011001000010000D7D6D5D4D3D2D1D001110010111010101001011101011010001111001010100010000110001101110 0110地址位存儲單元存儲單元示意圖如圖地址為0110單元的

3、內(nèi)容為10101001,表示為(06H)=A9H。8單片機即單片機微型計算機,就是將CPU、RAM、ROM、定時/計數(shù)器和多種接口都集成到一塊集成電路芯片上的微型計算機。單片機也稱為微控制器(Microcontroller unit ,MCU), 嵌入式控制器(Embedded Microcontroller unit,EMCU )1.2.1單片機的概念及特點 單片機分為通用型和專用型,通用型單片機把可開發(fā)的內(nèi)部資源全部提供給用戶。 內(nèi)部資源豐富、性能全面、適應(yīng)性強。專用型單片機針對某些產(chǎn)品的特定用途而制作的單片機,是MCU發(fā)展的一個趨勢。9單片機有以下特點:(1)集成度高,功能強。單片機在一

4、塊芯片上集成了CPU、RAM、ROM、I/O接口等資源,在芯片上還包含了中斷系統(tǒng)、串行通信接口、定時器/計數(shù)器等功能部件,芯片功能強、體積小、集成度高。(2)具有較高的性能價格比。單片機盡可能地把應(yīng)用所需的各種資源集成在一塊芯片內(nèi),性能高,但是價格卻相對較低廉。(3)抗干擾能力強。單片機是面向工業(yè)檢測控制環(huán)境設(shè)計的,因此,抗噪聲干擾能力較強。程序固化在ROM類型的存儲器中不易被破壞;許多資源集成在一個芯片,可靠性高。 1.2.1單片機的概念及特點 10 第1階段(19711976):單片機萌芽階段。 第2階段(19761980):初級單片機階段。 第3階段(19801983):高性能單片機階段

5、。 第4階段(19831990):8位單片機鞏固發(fā)展及16 位單片機推出階段。 第5階段(1990):單片機在集成度、功能、速度、可靠性、應(yīng)用領(lǐng)域等方面全方位地向更高水平發(fā)展。 1.2.2 單片機的發(fā)展 11 () MCS-51單片機的第一代產(chǎn)品: Intel MCS-51 8031/ 8051/ 8751 ()第二代產(chǎn)品系列采用了CMOS技術(shù)制造而成,集成度高,速度快,功耗低:ATMEL MCS-51兼容系列 89C51/ 89C52、89C2051/ 89C2052; () 第三代80C51產(chǎn)品的單片機內(nèi)核SoC(System On Chip, SoC)化。 Cygnal C8051F(D

6、allas & Philips, Silabs ) 1.2.3 MCS-51系列單片機及其兼容單片機12(1)電子產(chǎn)品(2)辦公自動化(3)商業(yè)領(lǐng)域(4)工業(yè)領(lǐng)域(5)汽車電子(6)航空航天與軍事 (7)智能樓宇單片機應(yīng)用從根本上改變了傳統(tǒng)的控制系統(tǒng)設(shè)計思想和設(shè)計方法。以前必須由硬件(模擬電路或數(shù)字電路)實現(xiàn)的控制功能,現(xiàn)在可以用單片機的軟件方法實現(xiàn),這種以軟件取代硬件并能提高系統(tǒng)性能的控制技術(shù),稱之為微控制技術(shù)。隨著單片機應(yīng)用技術(shù)的推廣普及,微控制技術(shù)將發(fā)揮將越來越重要的作用。 1.2.4 單片機的應(yīng)用13第2章 MCS-51單片機結(jié)構(gòu)及原理 預(yù)期學(xué)習(xí)結(jié)果: (1)掌握MCS-51系列的80

7、51的基本結(jié)構(gòu); (2)了解存儲器結(jié)構(gòu)及其配置; (3)掌握P0、P1、P2、P3四個I/O口的基本工作原理和操作特點; (4)掌握單片機的時序 (5)了解復(fù)位142.1.1 MCS-51的基本組成 MCS-51單片機(以8051為例,Intel產(chǎn)品)l1個8位CPU;l1個片內(nèi)振蕩器及時鐘電路;l128字節(jié)RAM(數(shù)據(jù)存儲器);l4K字節(jié)ROM(程序存儲器);l2個16位定時器/計數(shù)器;l32條可編程的I/O線(四個8位并行I/O端口);l1個全雙工串行口;l5個中斷源;15振蕩電路外部中斷CPU中斷控制4K字節(jié)ROM128字節(jié)RAM定時/計數(shù)器1定時/計數(shù)器0總線控制4個 I/0口串行口計

8、數(shù)器輸入P0P2P1P3RXDTXDEARESETXTAL1XTAL2OSCC1C2PSENALE 地址/數(shù)據(jù)總線n1個8位CPU;n1個片內(nèi)振蕩器及時鐘電路;n128字節(jié)RAM(數(shù)據(jù)存儲器);n4K字節(jié)ROM(程序存儲器);n2個16位定時器/計數(shù)器;n32條可編程的I/O線(四個8位并行I/O端口);n1個全雙工串行口;n5個中斷源;16邏輯符號引腳分配17(1)電源線 5V供電VCC (40)5V GND (20) 地引腳分配P0(2)晶體振蕩器信號輸入輸出XTAL1(18)晶體振蕩器信號輸入XTAL1(19)晶體振蕩器信號輸出(3)輸入/輸出線 P0.0P0.7 P0口P1.0P1.7

9、 P1口P2.0P2.7 P2口P3.0P3.7 P3口P1P2P318(4)控制信號線l ALE(30)地址鎖存控制信號 (Address Latch Enable), ALE用于將地址總線的低八位鎖存。該信號頻率為晶振頻率 的1/6,可作為外部定時或時鐘使用。引腳分配PSENl (29)外部程序存儲器讀選通信號( Program Store Enable),該信號為低電平時,CPU從外部程序存儲器單元讀取指令。19l (31)內(nèi)外程序存儲器選擇控制 (External Access Enable) 0,CPU對程序存儲器的操作僅限于單片機外部程序存儲器。 1, CPU對程序存儲器的操作從單

10、片機內(nèi)部程序存儲器開始,并可延伸到單片機的外部程序存儲器。EAEAEA(4)控制信號線(續(xù))引腳分配lRESET(9) 復(fù)位信號。 RESET持續(xù)2個機器周期以上的高電平,單片機復(fù)位。20(5)部分引腳的第二功能(復(fù)用,同一個引腳被雙重定義)第二功能RXD 串行輸入T1 定時器1外部計數(shù)信號的輸入端T0 定時器0外部計數(shù)信號的輸入端INT1 外部中斷1,輸入TXD 串行輸出INT0 外部中斷0,輸入WR 外部數(shù)據(jù)存儲器寫選通信號,輸出端口引腳P3.0P3.2P3.1P3.3P3.4P3.5P3.6P3.7RD 外部數(shù)據(jù)存儲器讀選通信號,輸出21(5)部分引腳的第二功能 ALE/PROG 還可作

11、為片內(nèi)程序存儲器的編程脈沖輸入信號 /VPP 還可作為編程電壓引入端 (在單片機內(nèi)部程序存儲器寫入程序期間,通過該引腳引入編程電壓) RESET/VPD 還可作為備用電源引入端: 當電源電壓下降到某個給定下限時,備用電源由該引腳向單片機芯片內(nèi)部RAM供電,以保護內(nèi)部RAM的內(nèi)容不丟失。2.1.2 MCS-51單片機的引腳與功能EA22TMP1TMP2ALUPSW4K字節(jié)ROMACCSPB寄存器RAM地址寄存器地址譯碼器與128字節(jié)RAMP2口鎖存器P2口驅(qū)動器P3口鎖存器P3口驅(qū)動器P1口鎖存器P1口驅(qū)動器P0口鎖存器P0口驅(qū)動器程序地址寄存器PCPC加1寄存器緩沖器DPTRPCONSCON

12、TMOD TCONTH0TL0TH1TL1SBUFIEIP中斷模塊 串行口模塊定時器/計數(shù)器模塊指令寄存器定時與控制電路PSENALERESETEAXTAL1XTAL2OSCC1C2P2.0P2.7P0.0P0.7P3.0P3.7P1.0P1.7VccGND振蕩器總線 數(shù)據(jù)存儲器 程序存儲器 特殊功能 寄存器 I/O口 I/O口 運算器 控制器內(nèi)部結(jié)構(gòu)圖內(nèi)部結(jié)構(gòu)圖2.1.3 MCS-51單片機的內(nèi)部結(jié)構(gòu)23(一) 中央處理器(CPU) CPU由運算器和控制器組成,它是單片機的核心,完成運算和控制操作。 2.1.3 MCS-51單片機的內(nèi)部結(jié)構(gòu)1. 運算器組成: 算術(shù)邏輯運算單元ALU,算術(shù)累加

13、器A,寄存器B,暫存器TMP1,暫存器TMP2,布爾累加器Cy等功能:進行移位、算術(shù)運算和邏輯運算;MCS-51運算器還包含有一個布爾(位)處理器,用來處理位操作。24 (1)累加器A(8位) 功能:暫存操作數(shù)及保存運算結(jié)果; A是MCS-51單片機中最繁忙的寄存器; (2)寄存器B(8位) 功能:協(xié)助A實現(xiàn)乘法、除法運算,其它情況下,可作為一個寄存器使用; (3 )程序狀態(tài)字寄存器PSW(8位) 功能:存放累加器A在運算過程標志位(P,OV,AC,Cy)的狀態(tài);指出CPU所使用的當前工作寄存器組。2.1.3 MCS-51單片機的內(nèi)部結(jié)構(gòu)25CyACF0RS0OVPRS1PSW.7PSW.0

14、Cy (PSW.7) 進位/借位標志位。 若ACC在運算過程中發(fā)生了進位或借位,則Cy=1;否則=0。它也是布爾處理器的位累加器,可用于布爾操作。 AC(PSW.6)半進位/借位標志位。 若ACC在運算過程中,D3位向D4位發(fā)生了進位或借位,則AC=1,否則=0。機器在執(zhí)行“DA A”指令時自動要判斷這一位,我們可以暫時不關(guān)心它。 F0 (PSW.5) 用戶標志位。PSW.6 PSW.52.1.3 MCS-51單片機內(nèi)部結(jié)構(gòu)PSW262.1.3 MCS-51單片機的內(nèi)部結(jié)構(gòu)PSW.7PSW.0 RS1(PSW.4)、RS0(PSW.3)工作寄存器組選擇位。RS1,RS0 = 0 1 則選擇了工

15、作寄存器組 1 區(qū)R0R7分別代表08H 0FH單元。RS1,RS0 = 1 0 則選擇了工作寄存器組 2 區(qū) R0R7分別代表10H 17H單元。RS1,RS0 = 1 1 則選擇了工作寄存器組 3 區(qū)R0R7分別代表18H 1FH單元。CyACF0RS0OVPRS1PSW.4 PSW.3RS1,RS0 = 0 0 則選擇了工作寄存器組 0 區(qū)R0R7分別代表08H 0FH單元。PSW27CyACF0RS0OVPRS1PSW.7PSW.0OV (PSW.2)溢出標志位。 OV=1時特指累加器在進行帶符號數(shù)(-128+127)運算時出錯(超出范圍);OV=0時未出錯。PSW.1 未定義。P (

16、PSW.0)奇偶標志位。 P=1表示累加器中“1”的個數(shù)為奇數(shù) P=0表示累加器中“1”的個數(shù)為偶數(shù) CPU隨時監(jiān)視著ACC中的“1”的個數(shù),并反映在PSW中PSW.2 PSW.12.1.3 MCS-51單片機的內(nèi)部結(jié)構(gòu)PSW28(4)布爾處理器Cy 實現(xiàn)各種位邏輯運算和傳送;MCS-51具有一個位尋址空間。 (5) TMP1和TMP2為8位暫存寄存器 存放參與預(yù)算的操作數(shù)。2.1.3 MCS-51單片機的內(nèi)部結(jié)構(gòu)MCS-51僅能實現(xiàn)兩個8位二進制數(shù)的算術(shù)邏輯運算! 29 2. 控制器l組成: 定時與控制部件,復(fù)位電路,程序計數(shù)器(PC),指令寄存器、指令譯碼器,數(shù)據(jù)指針(DPTR),堆棧指針

17、(SP)等l作用:產(chǎn)生計算機所需的時序,控制程序自動執(zhí)行(單片機指令執(zhí)行過程,p23)。CPU程序存儲器指令寄存器外外RAM,EPROM,外外I/O指令譯碼器控制單片機各部分的運行,產(chǎn)生ALE,PSEN,RD/WR2.1.3 MCS-51單片機的內(nèi)部結(jié)構(gòu)30l程序計數(shù)器PC(16位)程序計數(shù)器PC用來存放即要執(zhí)行的指令地址,共16位,低8位經(jīng)P0 口輸出,高8位經(jīng)P2口輸出。CPU每取一次機器碼,PC內(nèi)容自動加一, CPU執(zhí)行一條指令,PC內(nèi)容自動增加該指令的長度。CPU復(fù)位后,PC內(nèi)容為0000H,它標志著程序從頭開始執(zhí)行。 PC的內(nèi)容變化決定程序的流向。l指令寄存器(8位) 指令寄存器中存

18、放將要執(zhí)行的指令代碼,通過指令譯碼器,將指令代碼轉(zhuǎn)化為電信號控制信號,如ALE等。 2.1.3 MCS-51單片機的內(nèi)部結(jié)構(gòu)312.1.3 MCS-51單片機的內(nèi)部結(jié)構(gòu)l數(shù)據(jù)指針DPTR(16位) 用于訪問外部RAM或外部I/O口,提供十六位地址。也用于程序存儲器的查表和程序散轉(zhuǎn)指令,作為基地址寄存器,提供十六位基地址。l堆棧指針寄存器SP(8位) 用于管理堆棧,指出棧頂位置。 MCS-51單片機復(fù)位后, (SP)=07H 322.1.3 MCS-51單片機的內(nèi)部結(jié)構(gòu)(二)存儲器 1.內(nèi)部數(shù)據(jù)存儲器內(nèi)部數(shù)據(jù)存儲器單片機的內(nèi)部數(shù)據(jù)存儲器由RAM地址寄存器、地址譯碼器以及128個單元的RAM構(gòu)成,

19、用于存放可讀寫的數(shù)據(jù)。2. 內(nèi)部程序存儲器內(nèi)部程序存儲器 MCS-51系列單片機(8031除外)的內(nèi)部程序存儲器由程序地址寄存器、地址譯碼器以及4K(4096)個單元的ROM構(gòu)成,用于存放程序的機器代碼和常數(shù)。 3 . 特殊功能寄存器(特殊功能寄存器(Special Function Register,SFR) MCS-51系列單片機有21個可以尋址的特殊功能寄存器,包括單片機內(nèi)的I/O口、串行口、定時/計數(shù)器、中斷系統(tǒng)等相關(guān)的數(shù)據(jù)寄存器(或緩沖器)以及控制寄存器和狀態(tài)寄存器,用于存放相應(yīng)功能部件的控制命令、狀態(tài)和數(shù)據(jù)。33 2.1.3 MCS-51單片機的內(nèi)部結(jié)構(gòu)(三)并行口(Paralle

20、l Port) 有4個并行的I/O口:P0、P1、P2、P3,每根口線都可獨立地用作輸入或輸出。(四)串行口(Serial Port) 有1個全雙工的串行口,用于串行通信。串行口由發(fā)送緩沖器SBUF、接收緩沖器RBUF、移位寄存器和串行口控制邏輯等部分組成。(五) 定時/計數(shù)器(Timer/Counter) 有2個16位的定時/計數(shù)器T0和T1,T0由TH0和TL0構(gòu)成,T1由TH1和TL1構(gòu)成,定時/計數(shù)器方式寄存器TMOD選擇定時/計數(shù)器的工作模式和方式,定時/計數(shù)器控制寄存器TCON控制T0和T1的啟動和停止,同時反映T0和T1的溢出狀態(tài)。(六)中斷系統(tǒng)(Interrupt System

21、) 有5個中斷源,分別為2個外部中斷、2個定時/計數(shù)器溢出產(chǎn)生的中斷、1個串行口接收/發(fā)送產(chǎn)生的中斷,提供2個中斷優(yōu)先級。342.2 MCS51單片機的存儲器 MCS-51單片機的程序存儲器和數(shù)據(jù)存儲器分開設(shè)置,地址空間相互獨立。MCS51存儲器地址空間可分為以下5類:(1)程序存儲器,最大空間64K;(2)片內(nèi)數(shù)據(jù)存儲器,128個單元;(3)特殊功能寄存器,共21個;(4)位尋址空間,211位;(5)外部數(shù)據(jù)寄存器,最大空間64K。這些資源與單片機應(yīng)用的關(guān)系密切,下面我們介紹上述5類存儲空間的功能。 352.2.1 程序存儲器程序存儲器用來存放程序和常數(shù),最大尋址空間64K單元。MCS51系

22、列產(chǎn)品按程序存儲器配置類型分為3類:8051芯片含有4k個單元的ROM;8751芯片含有4k個單元的EPROM;8031中無程序存儲器,需要擴展程序存儲器。在實際應(yīng)用中,用戶既可使用芯片內(nèi)部的程序存儲器,也可以使用芯片外部的程序存儲器,但最大空間為64k,程序存儲器的地址空間構(gòu)成與引腳的 接法有關(guān)。EA362.2.1 程序存儲器(1)芯片內(nèi)部含有程序存儲器的單片機( 8051/8751 )當 =1(接高電平)時,8051/8751的程序存儲器結(jié)構(gòu)如圖: EA00000FFF1000FFFF00010FFEFFFE 1001芯片內(nèi)部的4K 芯片外部的60K程序存儲器結(jié)構(gòu)鎖存器P0P2ALEPSE

23、NEAVccR片外ROMDBOE AB8751/8051程序存儲器連接電路372.2.1 程序存儲器(1)芯片內(nèi)部含有程序存儲器的單片機(8051/8751)當 =0(接低電平)時,8051/8751的程序存儲器結(jié)構(gòu)如圖: EA0000FFFFFFFE0001 芯片外部的64K程序存儲器結(jié)構(gòu)鎖存器P0P2ALEPSENEAROMDBOE AB8751/8051程序存儲器連接電路382.2.1 程序存儲器(2)芯片內(nèi)部不含有程序存儲器的單片機( 8031 ) 必須接地,8031的程序存儲器結(jié)構(gòu)如圖: 0000FFFFFFFE0001 芯片外部的64K程序存儲器結(jié)構(gòu) 不論哪一種MCS-51單片機,

24、如果 接地,其內(nèi)部的程序存儲器將被CPU忽略。EAEA鎖存器P0P2ALEPSENEAROMDBOE AB8751/8051程序存儲器連接電路8031392.2.1 程序存儲器在單片機的程序存儲器中,有在單片機的程序存儲器中,有5個特殊的單元地址被定義個特殊的單元地址被定義為中斷入口地址,為中斷入口地址,分別為:外部中斷INT0入口地址0003H,外部中斷INT1入口地址000BH,定時/計數(shù)器T0入口地址0013H,定時/計數(shù)器T1入口地址001BH,串行口中斷入口地址0023H。0000000100020003000B0013001B0023復(fù)位INT0中斷入口INT1中斷入口T0中斷入口

25、T1中斷入口串行口中斷入口中斷入口地址映射 402.2.2 片內(nèi)數(shù)據(jù)存儲器MCS-51單片機的片內(nèi)RAM按照功能可分為3個區(qū)域:001FH:32個單元為工作寄存器區(qū)202FH:16個單元為位尋址區(qū)307FH:80個單元為數(shù)據(jù)緩沖區(qū)000102031F202F7F數(shù)據(jù)緩沖區(qū)(80個單元)位尋址區(qū)工作寄存器區(qū)30 (16個單元)(32個單元)片內(nèi)RAM分區(qū)示意圖41(一)工作寄存器區(qū)(Register Bank)(00-1FH) 0001020304050607R0R1R2R3R4R5R6R7080F1017181FR0R7R0R7R0R7BANK0BANK1BANK2BANK3工作寄存器組分區(qū)

26、工作寄存器區(qū)也稱為通用寄存器區(qū)。工作寄存器區(qū)包含4個工作寄存器組,每個工作寄存器組中包含8個工作寄存器R0R7: BANK0(0007H) BANK1(080FH) BANK2(1017H) BANK3(181FH)2.2.2 片內(nèi)數(shù)據(jù)存儲器42 表2.1 工作寄存器組的工作寄存器R0R7與片內(nèi)RAM單元的對應(yīng)關(guān)系PSW.4(RS1)PSW.3(RS0)寄存器區(qū)R0R1R2R3R4R5R6R700BANK000H01H02H03H04H05H06H07H01BANK108H09H0AH0BH0CH0DH0EH0FH10BANK210H11H12H13H14H15H16H17H11BANK318

27、H19H1AH1BH1CH1DH1EH1FH2.2.2 片內(nèi)數(shù)據(jù)存儲器程序狀態(tài)字寄存器PSW432.2.2 片內(nèi)數(shù)據(jù)存儲器(二)位尋址區(qū)(Bit Addressable Area)(202FH) MCS-51單片機的片內(nèi)RAM中, 202FH單元被開辟為位尋址區(qū);這些單元的每一位都具有一個自己的位地址,共168128位。位尋址區(qū)位地址范圍為007FH,CPU可以對每一位直接操作。 442.2.2 片內(nèi)數(shù)據(jù)存儲器單元地址 D7 D6 D5 D4 D3 D2 D1 D02C67666564636261602B5F5E5D5C5B5A59582A5756555453525150294F4E4D4C4

28、B4A4948284746454443424140273F3E3D3C3B3A3938263736353433323130252F2E2D2C2B2A2928242726252423222120231F1E1D1C1B1A1918221716151413121110210F0E0D0C0B0A09082D6F6E6D6C6B6A69682007060504030201002E77767574737271702F7F7E7D7C7B7A7978表2.2 位地址與單元的數(shù)位對應(yīng)關(guān)系位地址45202F單元的位地址區(qū)的使用: (I)在片內(nèi)RAM中只有202FH單元的位能夠進行位操作,我們經(jīng)常表示為20

29、H.0,它與位地址00H是等價的。 (II)位尋址區(qū)16個單元也可以按單元訪問,所以,當位尋址區(qū)16個單元的128位未完全使用時,其剩余單元也可作為RAM單元使用。2.2.2 片內(nèi)數(shù)據(jù)存儲器46(三) 數(shù)據(jù)緩沖區(qū)(Data Buffer Area)(307FH)(1)數(shù)據(jù)緩沖區(qū)的作用:作為數(shù)據(jù)緩沖、數(shù)據(jù)暫存、堆棧區(qū)使用;這些單元只能按單元訪問。(2)堆棧堆棧是為了保護CPU執(zhí)行程序的現(xiàn)場,在存儲器中開辟了一個“先進后出”(后進先出)的區(qū)域;堆棧的操作:入棧,出棧;操作規(guī)則:先進后出;堆棧由堆棧指針SP管理,它始終指向棧頂位置,一般情況下,將堆棧設(shè)在30H單元之后。程序設(shè)計時,堆棧區(qū)最好設(shè)在片內(nèi)

30、RAM的末端,如 MOV SP, #60H, 以避免堆棧向上生成時覆蓋所存儲的數(shù)據(jù)。2.2.2 片內(nèi)數(shù)據(jù)存儲器472.2.3 特殊功能寄存器(SFR) 2.2.3 2.2.3 特殊功能寄存器(特殊功能寄存器(SFRSFR) MCS-51芯片內(nèi)部有21個可尋址的SFR(具有地址),它們離散的分布在片內(nèi)RAM 80HFFH范圍內(nèi),并與內(nèi)RAM統(tǒng)一編址。 MCS-51芯片內(nèi)部還有1個不可尋址的SFR程序計數(shù)器PC。 對可尋址的SFR只能采用直接尋址方式,即按單元地址訪問的模式。482.2.3 特殊功能寄存器MCS-51單片機SFR的使用:(1)對于SFR以單元形式訪問時,只能采用直接尋址方式。 如:

31、 MOV SBUF, A MOV 99H, A 二者是等價的。 (2)對于80FFH區(qū)間未定義的單元,用戶不得使用。同 樣,對于未定義位地址所對應(yīng)的位操作也是無效的。 (3)在編程時,最好不要采用SFR作為中間寄存器暫存中間結(jié)果。因為復(fù)位時,多數(shù)SFR被清0.492.2.3 特殊功能寄存器SFR符號符號SFR名稱名稱SFR對應(yīng)單元對應(yīng)單元ACC累加器E0HBB寄存器F0HPSW程序狀態(tài)字寄存器D0HDPTR數(shù)據(jù)指針83H /82HSP堆棧指針81HP0P0口80HP1P1口90HP2P2口A0HP3P3口B0HIP中斷優(yōu)先級B8HIE中斷允許控制A8HSFR符號符號SFR名稱名稱SFR對應(yīng)單元

32、對應(yīng)單元TMODTimer工作方式89HTCONTimer控制寄存器88HTH0T0計數(shù)寄存器(H)8CHTL0T0計數(shù)寄存器(L)8AHTH1T1計數(shù)寄存器(H)8DHTL1T0計數(shù)寄存器(L)8BHSCON串行口控制寄存器98HSBUF串行口緩沖器99HPCON電源控制寄存器87H 可尋址的SFR中部分SFR (單元地址能夠被8整除)具有位尋址功能。502.2.3 特殊功能寄存器特殊功能寄存器(SFR)的位地址空間:凡是SFR的地址能被8整除的SFR(單元地址的末位是0或8)都具有位尋址功能,MCS-51單片機共有11個SFR具有位尋址功能,這些寄存器(單元)的每一位都有一個位地址。位地址

33、空間:80FFH。特殊功能寄存器(SFR)的位地址空間的特點:(1)一個具有位尋址功能的SFR,它所有位的位地址是以對應(yīng)的單元地址為起始位地址而編排的。(2)由SFR構(gòu)成的位尋址區(qū)地址是不連續(xù)的。512.2.3 特殊功能寄存器 SFR位尋址空間地址映射(p31)SFR D7 D6 D5 D4 D3 D2 D1 D0ACCE7E6E5E4E3E2E1E0BF7F6F5F4F3F2F1F0單元地址PSWD7D6D5D4D3D2D1D0IPBFBEBDBCBBBAB9B8B8P3B7B6B5B4B3B2B1B0B0IEAFAEADACABAAA9A8A8P2A7A6A5A4A3A2A1A0A0SCO

34、N9F9E9D9C9B9A999898P19796959493929190TCON8F8E8D8C8B8A8988P08786858483828180908880D0E0F0CyACF0RS1RS0OVPPSPT1PX1PT0PX0P3.7P3.6P3.5P3.4P3.3P3.2P3.1P3.0EAESET1EX1ET0EX0P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0SM0SM1SM2RENTB8RB8TIRITF1TR1TF0TR0IE1IT1IT0IE0522.2.4 MCS-51單片機的位尋址空間 MCS-51單片機的位尋址空間由兩部分組成,位地址范圍為00 FFH

35、。MCS-51位尋址空間片內(nèi)RAM位尋址區(qū)的20-2FH單元的128位,占用位地址范圍:007FH;地址能被8整除的SFR具有位尋址功能,占用位地址范圍:80FFH,共83位。532.2.5 外部數(shù)據(jù)存儲器 MCS51系列單片機的外部數(shù)據(jù)存儲器是一個獨立的物理空間,外部數(shù)據(jù)存儲器和外部I/O口共同占用這個空間,最大可以擴展到64k,地址范圍為:0000HFFFFH。 外部數(shù)據(jù)存儲器一般由靜態(tài)RAM構(gòu)成,簡稱外部RAM。鎖存器P0P2ALEEARAM或I/O口DBOE AB8751/8051RDWEWRVccP3.6P3.7(1)外部RAM和外部I/O口與單片機的連接 外部RAM和外部I/O口結(jié)

36、構(gòu)映射54一、單片機I/O的作用單片機芯片上的輸入輸出口有4個,P0,P1,P2和P3。它們的作用與單片機是否擴展有較大關(guān)系: (1)8051/8751不進行存儲器和I/O口擴展時 P0:I/O口;作為通用的I/O口 P1:I/O口;作為通用的I/O口P2:I/O口;作為通用的I/O口 P3:I/O口,也可以作為第二功能使用;當P3口某些引腳作為第二功能使用時,不可再作為I/O口線使用。如 P3.0和P3.1作為RXD和TXD時,不可再作為I/O口線使用。2.3 MCS-51單片機的I/O口 55(2) 8031及8051/8751進行存儲器和I/O口擴展時 P0:低八位地址總線/數(shù)據(jù)總線 P

37、2:高八位地址總線,用于訪問外部ROM、外部RAM和外部I/O口 P1:I/O口;作為通用的I/O口 P3:I/O口或第二功能,當P3口某些引腳作為第二功能使用時,不可再作為I/O口線使用。2.3 MCS-51單片機的I/O口 56(一)P0.0P0.7:雙向I/O (內(nèi)置場效應(yīng)管上拉) 訪問外部程序存儲器時分時作為低8位地址輸出和雙向8位數(shù)據(jù)復(fù)用口;不接外部程序存儲器時可作為8位雙向I/O口使用,此時,引腳應(yīng)接外部上拉電阻。引腳P0.X21DQCK/Q讀引腳讀鎖存器寫鎖存器內(nèi)部總線地址/數(shù)據(jù) 控制34Vcc2.3 MCS-51單片機的I/O口二、單片機I/O的工作原理圖2.14 P0口某位的

38、邏輯結(jié)構(gòu)三態(tài)緩沖器輸出驅(qū)動電路:FET場效應(yīng)管V1、V2多路轉(zhuǎn)換開關(guān)MUX與門非門鎖存器572.3 MCS-51單片機的I/O口21DQCK/Q讀引腳 =0讀鎖存器=0寫鎖存器內(nèi)部總線地址地址/數(shù)據(jù)數(shù)據(jù) 控制控制引腳P0.X34控制=0 時,此腳作輸出口(外接上拉電阻)00100截止截止(導(dǎo)通)=0Vcc (1)P0.0P0.7作為輸出口,引腳應(yīng)外接上拉電阻。VccR(外接)輸出=1582.3 MCS-51單片機的I/O口21DQCK/Q讀引腳 =1讀鎖存器=0寫鎖存器內(nèi)部總線地址/數(shù)據(jù) 控制引腳P0.X34控制=0 時,此腳作輸入口(事先必須對鎖存器寫入“1”)00100截止截止=0Vcc(

39、2)P0.0P0.7做輸入口,事先必須對鎖存器寫入1,然后再讀引腳的狀態(tài)(p35)。5921DQCK/Q讀引腳 =0讀鎖存器=0寫鎖存器內(nèi)部總線地址/數(shù)據(jù) 控制=1引腳P0.X34控制=1時,此腳作地址/數(shù)據(jù)復(fù)用口:(1)輸出地址/數(shù)據(jù) =0 時1011=0導(dǎo)通截止=0Vcc(3)P0.0P0.7作為雙向8位數(shù)據(jù)口和輸出低8位地址復(fù)用口【 輸出0】2.3 MCS-51單片機的I/O口602.3 MCS-51單片機的I/O口(4)P0.0P0.7作為雙向8位數(shù)據(jù)口和輸出低8位地址復(fù)用口【輸出1】21DQCK/Q讀引腳 =0讀鎖存器=0寫鎖存器內(nèi)部總線引腳P0.X34控制=1時,此腳作地址/數(shù)據(jù)復(fù)

40、用口:(2)輸出地址/數(shù)據(jù) =1 時1100=1截止導(dǎo)通=1地址/數(shù)據(jù) 控制=1VccVcc612.3 MCS-51單片機的I/O口 (二) P1.0P1.7: 準雙向I/O口(內(nèi)置了上拉電阻)21DQCK/Q讀引腳=0讀鎖存器=0寫鎖存器內(nèi)部總線Vcc引腳P1.X內(nèi)部上拉電阻三態(tài)緩沖器鎖存器場效應(yīng)管V622.3 MCS-51單片機的I/O口21DQCK/Q讀引腳=0讀鎖存器=0寫鎖存器內(nèi)部總線Vcc引腳P1.X內(nèi)部上拉電阻輸出數(shù)據(jù) = 0 時Dx=001=0導(dǎo)通 (1)P1.0P1.7作為輸出口【輸出0】632.3 MCS-51單片機的I/O口 (2)P1.0P1.7作為輸出口【輸出1】21

41、DQCK/Q讀引腳=0讀鎖存器=0寫鎖存器內(nèi)部總線Vcc引腳P1.X內(nèi)部上拉電阻輸出數(shù)據(jù) = 1 時Dx=110截止=1642.3 MCS-51單片機的I/O口21DQCK/Q讀引腳 =1讀鎖存器=0寫鎖存器內(nèi)部總線Vcc引腳P1.X內(nèi)部上拉電阻當作為輸入數(shù)據(jù)時,要先向鎖存器寫入“1”110截止 (3)P1.0P1.7作為輸入口652.3 MCS-51單片機的I/O口 (三)P2.0P2.7: 準雙向I/O (內(nèi)置了上拉電阻) 外部程序存儲器時輸出高8位地址;不接外部程序存儲器時可作為8位準雙向I/O口使用。21DQCK/Q讀引腳讀鎖存器寫鎖存器內(nèi)部總線地址高8位 控制引腳 P2.X3內(nèi)部上拉

42、電阻Vcc圖2.17 P2口某位的邏輯結(jié)構(gòu)多路轉(zhuǎn)換開關(guān)MUX反相器662.3 MCS-51單片機的I/O口21DQCK/Q讀引腳 =0讀鎖存器=0寫鎖存器內(nèi)部總線地址高8位 控制=1 引腳P2.X01導(dǎo)通3內(nèi)部上拉電阻0=0=0控制=1時,此腳作高8位地址A8A15輸出口:輸出=0(1)P2.0P2.7作為高八位地址總線【輸出地址】。Vcc672.3 MCS-51單片機的I/O口(2)P2.0P2.7作為8位準雙向I/O口使用【輸出】。21DQCK/Q讀引腳 =1讀鎖存器=0寫鎖存器內(nèi)部總線地址高8位 控制 引腳P2.X控制=0時,此腳作通用輸出口: 輸出=1110截止3內(nèi)部上拉電阻11Vcc

43、=1=0682.3 MCS-51單片機的I/O口21DQCK/Q讀引腳 =1讀鎖存器=0寫鎖存器內(nèi)部總線地址高8位 控制 引腳P2.X控制=0時,先向鎖存器寫入 “1”,此腳作通用輸入口10截止3內(nèi)部上拉電阻11Vcc=0(3)P2.0P2.7作為8位準雙向I/O口使用【輸入】。692.3 MCS-51單片機的I/O口 (四)P3.0P3.7: 雙功能口(內(nèi)置了上拉電阻) 具有特定的第二功能。在不使用它的第二功能時它就是普通的通用準雙向I/O口。21DQCK/Q讀引腳讀鎖存器寫鎖存器內(nèi)部總線第二輸出功能引腳 P3.X3內(nèi)部上拉電阻Vcc第二輸入功能4圖2.18 P3口某位電路的邏輯結(jié)構(gòu)與門70

44、2.3 MCS-51單片機的I/O口 (1)P3.0P3.7作為通用I/O口【輸出】。21DQCK/Q讀引腳 = 0讀鎖存器=0寫鎖存器內(nèi)部總線引腳 P3.X3內(nèi)部上拉電阻Vcc 第二功能輸入4輸出=1的操作1110截止1第二功能輸出此端自動1輸出1712.3 MCS-51單片機的I/O口 (2)P3.0P3.7作為通用I/O口【輸入】。21DQCK/Q讀引腳=1讀鎖存器=0寫鎖存器內(nèi)部總線引腳 P3.X3內(nèi)部上拉電阻Vcc 第二功能輸入4先向鎖存器寫入“1”,使引腳P3.X處于高阻輸入狀態(tài),再讀引腳1110截止第二功能輸出此端自動1722.3 MCS-51單片機的I/O口 (3)P3.0P3

45、.7作為第二功能【輸出RD/RW/TXD】。21DQCK/Q讀引腳讀鎖存器=0寫鎖存器內(nèi)部總線第二輸出功能(WR,TxD)引腳 P3.X3內(nèi)部上拉電阻Vcc4第二功能輸出時,內(nèi)部自動置Q=1, D=1111反相器732.3 MCS-51單片機的I/O口21DQCK/Q讀引腳=0讀鎖存器=0寫鎖存器內(nèi)部總線第二輸出功能此端自動1引腳 P3.X3內(nèi)部上拉電阻Vcc 第二輸入功能(RxD/T0/T1/INT0/INT1)4第二功能輸入時,信號經(jīng)緩沖器4 直接進入內(nèi)總線1110截止 (4)P3.0P3.7作為第二功能【輸入RXD/T0/INT0】。742.3 MCS-51單片機的I/O口21DQCK/

46、Q讀引腳 =0讀鎖存器1寫鎖存器內(nèi)部總線Vcc引腳P1.X內(nèi)部上拉電阻 (五)讀單片機I/O口鎖存器(以P1口為例)75(1)驅(qū)動能力: P0:雙向,8個TTL(肖特基雙極晶體管)負載 P1、 P2和 P3:準雙向,4個TTL (2)作為輸入口使用,必須先寫 “1”,再讀引腳狀態(tài)。 (3)由于P0口為內(nèi)置場效應(yīng)管上拉,作為輸出口時,上拉的場效應(yīng)截止,輸出引腳與電源Vcc之間呈現(xiàn)開路狀態(tài),因此,為了保證輸出口能夠輸出標準的高低電平,其輸出引腳應(yīng)接上拉電阻。2.3 MCS-51單片機的I/O口三、單片機I/O的負載能力和接口要求762.4 MCS-51單片機的時鐘電路與時序 2.4.1 MCS-5

47、1單片機的時鐘電路 時鐘電路用來產(chǎn)生CPU工作所需的時鐘控制信號。時鐘的頻率直接影響單片機的速度,時鐘電路的質(zhì)量直接影響單片機系統(tǒng)的穩(wěn)定性。 時鐘電路的設(shè)計形式:內(nèi)部方式和外部方式(一)內(nèi)部方式: 原理:借助于單片機內(nèi)部電路(反相放大器)外接晶體振蕩器和微調(diào)電容構(gòu)成自激振蕩器,提供時鐘信號。 OSC:1.2M12MHz C1、C2:530pF 內(nèi)部方式內(nèi)部方式XTAL2XTAL18051C1C2OSC772.4.1 MCS-51單片機的時鐘電路XTAL1XTAL2外部振蕩源外部方式外部方式8051VCCR(二)外部方式 直接使用外部振蕩脈沖信號。(常用于多CPU系統(tǒng),以保持各個CPU同步工作)

48、外部振蕩脈沖信號為滿足一定的幅寬的方波,頻率不大于12MHz。78 在計算機中,一條指令可分解為若干個基本的微操作,這些微操作所對應(yīng)的脈沖信號在時間上有嚴格的先后次序,即為計算機的時序。 (一)機器周期與指令周期 與時序有關(guān)的定時單位:時鐘周期、機器周期、指令周期。 時鐘周期(T)與晶體振蕩器(晶振)的振蕩周期(Tosc)的關(guān)系為2.4.2 MCS-51單片機的時序oscfToscT22 機器周期(TM) : CPU完成一個基本操作所用的時間。 MCS-51單片機的1個機器周期包含12個振蕩周期(即,6個時鐘周期):oscfToscT1212M指令周期(TI):執(zhí)行一條指令所用的時間; MCS

49、-51單片機:1TI = 1 4 TM792.4.2 MCS-51單片機的時序MCS-51單片機的機器周期(TM)狀態(tài)P1相P2相TMTM802.4.2 MCS-51單片機的時序(二) 典型指令的時序(p41) (1)單字節(jié)單周期指令04XXXXXXXXXXXXXX程序存儲器2000H2002H2003H2004H2005H2006H2007H2001HINC A 的機器碼P1相P2相讀機器碼讀下一個機器碼,丟棄CPU執(zhí)行指令:執(zhí)行指令:I NC A該指令對應(yīng)的指令代碼為該指令對應(yīng)的指令代碼為04,該指令代碼存儲在存儲器,該指令代碼存儲在存儲器2000H單元中單元中(PC)加加1(PC)不加不加1地址鎖存信號,用來鎖存低8位的地址信號,該信號在每個機器周期中2次有效。S1P2S2P1S6P2結(jié)束指令操作81 (2)雙字節(jié)單周期指令2.4.2 MCS-51單片機的時序2450XXXXXXXXXXXX程序存儲器2000H

溫馨提示

  • 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)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論