2MCS51單片機(jī)的基本結(jié)構(gòu)與工作原理_第1頁
2MCS51單片機(jī)的基本結(jié)構(gòu)與工作原理_第2頁
2MCS51單片機(jī)的基本結(jié)構(gòu)與工作原理_第3頁
2MCS51單片機(jī)的基本結(jié)構(gòu)與工作原理_第4頁
2MCS51單片機(jī)的基本結(jié)構(gòu)與工作原理_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

本文格式為Word版,下載可任意編輯——2MCS51單片機(jī)的基本結(jié)構(gòu)與工作原理其次章MCS51單片機(jī)的基本結(jié)構(gòu)與工作原理

一、8051單片機(jī)內(nèi)部包含哪些主要規(guī)律功能部件?

提醒:

(1)CPU—包括運(yùn)算器和控制器。其中運(yùn)算器主要有運(yùn)算規(guī)律部件ALU(實(shí)質(zhì)上就是一個全加器)、累加器A、暫存器TMP(如B寄放器、數(shù)據(jù)指針DPTR)、程序狀態(tài)字PSW(寄放程序運(yùn)行的狀態(tài)信息);控制器主要有程序計數(shù)器PC(實(shí)質(zhì)是加1計數(shù)器)、指令寄放器IR(存放指令操作碼的專用寄放器)、指令譯碼器、定時控制規(guī)律電路(按指令的性質(zhì)發(fā)出一系列定時信號)、條件轉(zhuǎn)移規(guī)律電路。(2)內(nèi)部RAM。共有256個RAM單元。其中低128個單元(00H—7FH)供用戶使用,高128個單元(80H—FFH)是專用寄放器,有著特別規(guī)律功能(又名特別功能寄放器SFR)。(3)內(nèi)部ROM。8031內(nèi)部無ROM,8051有4KB掩膜ROM。(4)定時/計數(shù)器。MCS51共有2個16位的定時/計數(shù)器(T0、T1)。

(5)并行I/O口。MCS51共有4個8位并行I/O口(P0、P1、P2、P3)。(6)串行口。MCS51有1個全雙工的串行口。

(7)中斷控制系統(tǒng)。MS51共有5個中斷源,且分兩個優(yōu)先級別。(8)時鐘電路。系統(tǒng)允許的最高晶振頻率為12MHz(主要用于通信)。

二、MCS51的存儲器在物理上和規(guī)律上有何不同?有哪幾種地址空間?容量各為多少?訪問片內(nèi)RAM、片外RAM、片外ROM的指令格式有何不同?

提醒:

(1)從物理結(jié)構(gòu)上存儲器分為程序存儲器和數(shù)據(jù)存儲器,同時分別又有片內(nèi)與片外之分。(2)從尋址空間分布上分為三個存儲器地址空間,即程序存儲器(片內(nèi)外統(tǒng)一編址空間共64KB)、片內(nèi)數(shù)據(jù)存儲器(尋址空間256B。然而事實(shí)上只有低128個單元和高128個單元中的21個單元SFR,高128個單元中的107個空閑地址,用戶不能使用。切記!)、片外數(shù)據(jù)存儲器(尋址空間64KB)。

(3)從功能上劃分為程序存儲器、內(nèi)部數(shù)據(jù)存儲器、特別功能寄放器、位地址空間、外部數(shù)據(jù)存儲器。

訪問片內(nèi)RAM的指令助記符是MOV;如MOVP1,A

訪問片外RAM的指令助記符是MO;如MO@DPTR,A訪問片外ROM的指令助記符是MOVC;如MOVCA,@A+PC

三、MCS51單片機(jī)片內(nèi)RAM按用途可以劃分幾個區(qū)域?各有什么作用?(片內(nèi)RAM低128單元劃分哪三個主要部分?各部分主要功能是什么?)

提醒:

片內(nèi)RAM是最靈活的地址空間,在物理上分成兩個獨(dú)立的功能不同的區(qū)域,即低128個單元(00H—7FH)的數(shù)據(jù)RAM區(qū)、高128個單元(80H—FFH)的特別功能寄放器SFR區(qū)(見下一題的回復(fù))。低128個單元是單片機(jī)真正的RAM存儲器,按其用途又分為三個區(qū)域(說明:這樣單片機(jī)片內(nèi)RAM按用途可以劃分四個區(qū)域),即:

寄放器區(qū)(又稱通用寄放器區(qū)、工作寄放器區(qū)):編址00H—1FH共32個單元,又等分成四個工作寄放器組(0組00H—07H、1組08H—0FH、2組10H—17H、3組18H—1FH),任意時刻,CPU只能使用其中的一組寄放器且稱為當(dāng)前寄放器組(R0、R1、R2、R3、R4、R5、R6、R7)。當(dāng)前寄放器組由程序狀態(tài)字PSW中PSW.4(RS1)、PSW.3(RS0)兩位的狀態(tài)組合所決定。

位尋址區(qū):編址20H—2FH共16個單元,計128位的位地址00H—7FH。16個字節(jié)單元既可以字節(jié)尋址又可以位尋址。

數(shù)據(jù)緩沖區(qū)(又名字節(jié)尋址區(qū)、用戶RAM區(qū)):編址30H—7FH共80個單元。該區(qū)域可以采用直接字節(jié)尋址的方法訪問,一般應(yīng)用中總是將堆棧開拓在此區(qū)域。

四、程序存儲器和數(shù)據(jù)存儲器各有何不同?各有何作用?

提醒:

程序存儲器就是專用于存放已編好的程序和表格常數(shù)。由ROM、EPROM、E2PROM組成。數(shù)據(jù)存儲器就是存放隨機(jī)數(shù)據(jù),如運(yùn)算中間結(jié)果、標(biāo)志位、數(shù)據(jù)暫存、數(shù)據(jù)緩沖等。由RAM(SRAM、DRAM)、E2PROM組成。

說明:關(guān)于程序計數(shù)器(PC)

又名程序地址寄放器,是CPU控制器中最基本的16位自動加1寄放器,專用于存放將要執(zhí)行的指令地址。PC沒有地址,即不占內(nèi)部RAM地址,物理上獨(dú)立。因而PC不可尋址,用戶無法對它進(jìn)行讀/寫操作,只能通過轉(zhuǎn)移、調(diào)用、中斷、返回等指令改變其內(nèi)容。系統(tǒng)復(fù)位后,PC中內(nèi)容自動為0000H(即程序入口地址)。

五、程序狀態(tài)字PSW各位的定義是什么?

提醒:

程序狀態(tài)字PSW是一個既可以字節(jié)尋址也可以位尋址的8位寄放器,用于寄放程序運(yùn)行的狀態(tài)信息。

位序PSW.7PSW.6PSWPSW.4(DOH)PSW.3PSW.2PSW.1PSW.5位標(biāo)志CYACF0RS1RS0OV位地址D0HD1HD2HD3HD4HD5HD6H位含義進(jìn)位標(biāo)志位輔助進(jìn)位標(biāo)志位用戶標(biāo)志位當(dāng)前寄放器組選擇位溢出標(biāo)志位(保存未用)位設(shè)置硬件置位、累加位硬件置位軟件置位、復(fù)位軟件設(shè)置00、01、10、11硬件置位、復(fù)位硬件置位、復(fù)位奇偶標(biāo)志位PSW.0PD7HPSW.7:算術(shù)運(yùn)算高8位進(jìn)位硬件置1;位操作中作累加位;

PSW.6:加減運(yùn)算低4位向高4位進(jìn)位或借位時硬件置1,否則被清0;PSW.5:供用戶定義的標(biāo)志位,以控制程序轉(zhuǎn)向;PSW.4、PSW.3:用于設(shè)定當(dāng)前寄放器組的組號;

PSW.2:符號數(shù)的加、減、乘、除運(yùn)算超出有效的范圍,硬件置1;

PSW.0:說明累加器A中“1〞個數(shù)的奇偶性,“1〞的個數(shù)為偶數(shù),硬件自動置1;

六、MCS51單片機(jī)擴(kuò)展系統(tǒng)中,片外的程序存儲器與數(shù)據(jù)存儲器使用一致的地址編址,是否會在數(shù)據(jù)總線上出現(xiàn)競爭總線的現(xiàn)象?為什么?

提醒:

CPU訪問外部程序存儲器時主要使用特別功能寄放器—程序計數(shù)器(程序地址指針、16位加1計數(shù)器)PC。對于程序存儲器向累加器A傳送數(shù)據(jù)的查表指令,還可以使用數(shù)據(jù)指針DPTR采用變址尋址的尋址方式,有專用的MOVC指令。

CPU訪問外部數(shù)據(jù)存儲器只用一個特別功能寄放器—16位數(shù)據(jù)指針寄放器DPTR尋址,有專用指令MO;訪問內(nèi)部數(shù)據(jù)存儲器用MOV指令。

CPU在訪問外部存儲器時,控制信號有PSEN與RD來區(qū)分片外程序存儲器和片外數(shù)據(jù)存儲器的選通,數(shù)據(jù)傳送指令有MOV、MO、MOVC之區(qū)別,因此,片外程序存儲器和片外數(shù)據(jù)存儲器的編址可以全部64KB地址重疊,也可以與片內(nèi)數(shù)據(jù)存儲器128B地址重疊。

七、MCS51單片機(jī)有哪些特別功能寄放器?可以分成幾個組?各有何作用?

提醒:

單片機(jī)片內(nèi)RAM的高128個單元(編址80H—FFH),又稱特別功能寄放器區(qū)、專用寄放器區(qū),簡寫為SFR(SpecialFunctionRegister)。其特別之處在于:

專用于控制/管理單片機(jī)內(nèi)算術(shù)運(yùn)算規(guī)律部件、并行I/O口鎖存器、串行口數(shù)據(jù)緩沖器、定時/計數(shù)器、中斷系統(tǒng)、數(shù)據(jù)地址指針等功能模塊的作用。

SFR中僅有21個字節(jié)單元作為特別功能寄放器離散分布在128個字節(jié)的范圍內(nèi),其余字節(jié)未定義,用戶也不能訪問。其中有11個字節(jié)單元可以位尋址,且可尋址位有83位。而其余的10個單元只能字節(jié)尋址。

SFR按功能的不同分為兩大類:一類作為芯片內(nèi)部功能的控制寄放器,共17個。一類與芯片引腳有關(guān)的寄放器,共4個。功能運(yùn)算部件寄放作為芯片內(nèi)部功能的控制用寄放器串行SCON98H87H99H80H90HA0HB0H定時/計數(shù)器控制TCONTL0TL1TH0TH188H8AH8BH8CH8DH中斷控制IPB8H器數(shù)據(jù)指針PSWSPDPLDPHIED0H81H82H83HA8H符號ACCB單元地址E0HFOH名稱累加器乘寄放器程序狀態(tài)字堆棧指針低8位高8位中斷允許EACYACF0位地址符號ACC.7—ACC.0B.7—B.0PSW.7—PSW.0RS1RS0OVP地址E7H—E0HF7H—F0HD7H—D0HIE.7—IE.0ESET1EX1ET0EX0AFH—A8H中斷優(yōu)先定時器控制T0低8位T0高8位T1低8位T1高8位串行控制器IP.7—IP.0PSPT1PX1PT0PX0BFH—B8HTCON.7—TCON.0TF1TR1TF0TR0IE1IT1IE0IT08FH—88HSCON.7—SCON.0SM0SM1SM2RENTB8RB8TIRI9FH—98H控制PCONSBUFP0I/O口P1P2P3電源控制及波特率選擇串行數(shù)據(jù)緩沖器通道0通道1通道2通道3P0.7—P0.0P1.7—P1.0P2.7—P2.0P3.0—P3.087H—80H97H—90HA7H—A0HB7H—B0H說明:對SFR只能使用直接尋址方式,書寫時可使用寄放器符號或單元地址。

八、程序計數(shù)器(PC)作為不可尋址寄放器有哪些特點(diǎn)?地址指針DPTR有哪些特點(diǎn)?DPTR與PC有何不同?(或:決定程序執(zhí)行順序的寄放器是哪個?它是幾位寄放器?是否屬于特別

功能寄放器?)

提醒:PC的特點(diǎn):①PC沒有地址,不占用內(nèi)部RAM單元,物理結(jié)構(gòu)上獨(dú)立;

②PC不可尋址,用戶無法對它進(jìn)行讀/寫操作,只可能通過程序的轉(zhuǎn)移、調(diào)用、中斷、返回等指令改變其內(nèi)容;

③PC是一個加1的16位計數(shù)器,可對64KB程序存儲器尋址;

④系統(tǒng)復(fù)位后,PC內(nèi)容自動為0000H,即程序入口地址;

DPTR的特點(diǎn):①DPTR占用內(nèi)部RAM單元,是兩個8位寄放器DPH、DPL;

②DPTR可以分別尋址,用戶可以進(jìn)行讀/寫操作;③DPTR可以作為外部數(shù)據(jù)存儲器的數(shù)據(jù)地址指針;

④DPTR可以作為訪問程序存儲器時的基址寄放器;⑤系統(tǒng)復(fù)位時,DPTR的內(nèi)容為0000H;

DPTR與PC的一致點(diǎn):①16位寄放器,且都作為地址指針;

②都通過P0、P2口輸出;DPTR與PC的不同點(diǎn):PC——只能作為16位寄放器,具有自動加1功能,不可以尋址或訪問,其變化軌跡決定著程序的流程,PC只與程序存儲器地址有關(guān),輸出與ALE、PSEN相關(guān)聯(lián);

DPTR——可作為16位寄放器,也可作為兩個8位寄放器,可以尋址,可以訪問,作為地址指針輸出時,輸出與ALE、RD、WR相關(guān)聯(lián)。九、MCS51單片機(jī)設(shè)有4個通用工作寄放器組,有什么特點(diǎn)?系統(tǒng)復(fù)位后,CPU使用哪一組工作寄放器?它們的地址是什么?如何改變當(dāng)前工作寄放器組?如何實(shí)現(xiàn)工作寄放器組的現(xiàn)場保護(hù)?

提醒:

內(nèi)部RAM塊中的00H—1FH區(qū)共分4個組(00H—07H為第0組,08H——0FH為第1組,10H—17H為第2組,18H—1FH為第3組),每組有8個工作寄放器R0—R7,合計32個內(nèi)部RAM單元。

4個工作寄放器組中,程序每次只用1組,其它各組不工作。不用的工作寄放器組所對應(yīng)的單元可以作為一般的數(shù)據(jù)寄放器使用。

CPU通過軟件修改PSW中RS0、RS1兩位的狀態(tài),則可以任意選擇一個寄放器組工作,這個特點(diǎn)使MCS51單片機(jī)具有快速保護(hù)現(xiàn)場功能,有利于提高程序速度和中斷響應(yīng)。

系統(tǒng)復(fù)位后,CPU使用第0組工作寄放器,對應(yīng)地址是00H—07H。

實(shí)現(xiàn)工作寄放器組的現(xiàn)場保護(hù)就是在子程序或中斷服務(wù)程序開始時改變當(dāng)前工作寄放器組,在子程序或中斷服務(wù)程序終止時還原當(dāng)前工作寄放器組。

十、為什么說MCS51單片機(jī)具有很強(qiáng)的布爾(位)處理功能?共有多少單元可以位尋址?

提醒:

按位尋址的地址空間稱為位地址空間。

MCS51單片機(jī)位尋址空間一部分在內(nèi)部RAM的20H—2FH的16個字節(jié)內(nèi),共128位;一部分在SFR的80H—FFH內(nèi),凡字節(jié)地址能被8整除的專用寄放器(有11個寄放器)都有位地址,共82位(其余6位沒有含義);總共210個可尋址位。

位尋址單元與布爾指令集構(gòu)成單片機(jī)獨(dú)有的布爾處理機(jī)系統(tǒng),即1位微計算機(jī)。1位機(jī)在開關(guān)決策、規(guī)律電路仿真、實(shí)時控制等方面十分有利。

十一、什么是堆棧?堆棧有哪些功能?堆棧指示器(SP)的作用是什么?系統(tǒng)復(fù)位后堆棧指針是多少?在程序設(shè)計中,為什么要對SP重新賦值?

提醒:

所謂堆棧就是一種數(shù)據(jù)結(jié)構(gòu),是只允許在其一端進(jìn)行數(shù)據(jù)插入(入棧)和數(shù)據(jù)刪除(出棧)操作的線性表。其最大特點(diǎn)是“后進(jìn)先出(LIFO)〞的數(shù)據(jù)操作規(guī)則。數(shù)據(jù)寫入堆棧稱為插入運(yùn)算(PUSH),又名入棧。數(shù)據(jù)從堆棧中讀出稱為刪除運(yùn)算(POP),又名出棧。

堆棧是為子程序調(diào)用或中斷操作而設(shè)置的,其功能有兩個:

保護(hù)斷點(diǎn)—預(yù)先把主程序的斷點(diǎn)保護(hù)起來,為程序的正確返回作準(zhǔn)備;

保護(hù)現(xiàn)場—在轉(zhuǎn)去執(zhí)行子程序或中斷服務(wù)程序前將有關(guān)寄放器的內(nèi)容保存起來。

可見:斷點(diǎn)和現(xiàn)場的內(nèi)容就保存在堆棧中。

SP是一個專用8位寄放器(單元地址81H),在系統(tǒng)復(fù)位時,SP的內(nèi)容為07H。然而使堆棧有可能占用工作寄放器組。在程序設(shè)計時,應(yīng)注意把SP值初始化為30H單元以后(即30H—7FH之間)。SP初始化值越小,堆??捎蒙疃仍缴睿梢娪捎赟P可初始化為不同的值,則堆棧位置是浮動的)。

十二、MCS51單片機(jī)的堆棧區(qū)一般設(shè)在哪個區(qū)間?堆棧的最大容量是多少?

提醒:在系統(tǒng)復(fù)位時,SP的內(nèi)容為07H。然而使堆棧有可能占用工作寄放器組。在程序設(shè)計時,應(yīng)注意把SP值初始化為30H單元以后(即30H—7FH之間)。假使編程時不使用工作寄放器組,堆棧最大空間可以是內(nèi)部RAM的低128B(00H—7FH),實(shí)際最大容量有127個單元。假使編程時要使用工作寄放器組以及內(nèi)部數(shù)據(jù)RAM的位尋址空間,則堆??臻g只能是30H—7FH,實(shí)際容量有80個單元??梢奡P初始化為不同值時,則堆棧位置是浮動的。(注意:SP的內(nèi)容始終是堆棧棧頂?shù)拇鎯卧刂?。)十三、MCS51單片機(jī)有哪幾個并行I/O口?各有何不同?分別擔(dān)負(fù)什么作用?提醒:

MCS51單片機(jī)有4個8位并行輸入/輸出接口,即P0、P1、P2、P3口共計32根輸入/輸出線。在系統(tǒng)復(fù)位時,四個口全部為FFH(即均為高電平)(說明:四個口在電路結(jié)構(gòu)上稍有區(qū)別)。

P0口:在外部擴(kuò)展存儲器時總是作為地址/數(shù)據(jù)分時復(fù)用口(地址/數(shù)據(jù)總線口),此時是一個真正的三態(tài)雙向口;在沒有外部存儲器時,也可以作為通用I/O口,此時只是一個準(zhǔn)雙向口(應(yīng)用時要外接上拉電阻)。P0口的輸出級具有驅(qū)動8個LSTTL負(fù)載的能力,即輸出電流不小于800μA。

P1口:在組成系統(tǒng)時總是作為通用I/O口,是一個準(zhǔn)雙向口(內(nèi)部有上拉電阻而不需外接上拉電阻),具有驅(qū)動4個LSTTL負(fù)載的能力。

P2口:在外部擴(kuò)展存儲器時總是作為高8位地址總線;在沒有外部存儲器時,也可以作為通用I/O口,此時類同P1口。

P3口:在組成系統(tǒng)時總是作為系統(tǒng)的部分控制總線;也可以作為通用I/O口,此時類同P1口。

十四、MCS51單片機(jī)對外有幾條專用控制線?其功能是怎樣的?

提醒:

①由RST、ALE、EA、PSEN、RD、WR、INT0、INT1、T0、T1共10個引腳組成系統(tǒng)的控制線;②ALE、PSEN信號允許帶8個LSTTL負(fù)載;③P0口允許帶8個LSTTL負(fù)載;④P1、P2、P3口只能帶4個LSTTL負(fù)載;⑤要關(guān)注RD、WR信號是否需要增加驅(qū)動電路以提高帶負(fù)載能力;

十五、MCS51單片機(jī)的ALE引腳有何作用?在不訪問外部RAM或ROM時ALE的信號有何特點(diǎn)?

提醒:

ALE(30腳)—是地址鎖存允許信號,在訪問片外存儲器(RAM或ROM)時,用它來鎖存P0口送出的低8位地址信號。其其次功能PROG是在對8751的EPROM編程時,編程脈沖的輸入端。

在不訪問外部存儲器時,ALE端以振蕩頻率的1/6的頻率周期性出現(xiàn)正脈沖信號,可作為對外輸出的時鐘脈沖或用于定時目的。注意:在訪問片外RAM時ALE脈沖會跳過一個,此時作為時鐘輸出就不妥當(dāng)。

十六、MCS51單片機(jī)的PSEN、RD、WR、XTAL1、XTAL2引腳各有何作用?

提醒:

PSEN(29腳)—片外程序存儲器讀選通信號輸出端,低電平有效;

(P3.7、17腳)—片外RAM讀選通信號輸出端,低電平有效;WR(P3.6、16腳)—片外RAM寫選通信號輸出端,低電平有效;

XTAL1(19腳)、XTAL2(18腳)—外接晶振引腳(當(dāng)采用外部時鐘時,HMOS單片機(jī)則是18

RD腳輸入,19腳接地;CHMOS單片機(jī)則是19腳輸入,18腳懸空);十七、單片機(jī)的EA端有何作用?應(yīng)用8031時對其EA端應(yīng)如何處理?為什么?

提醒:

EA端的作用是訪問片外ROM的控制信號,且低電平有效。=“1〞時,程序自動從片內(nèi)程序存儲器開始執(zhí)行指令(即訪問片內(nèi)ROM),當(dāng)PC值超出片內(nèi)

ROM時,會自動轉(zhuǎn)向片外ROM。EA=“0〞時,迫使系統(tǒng)全部執(zhí)行片外程序存儲器。由于8031的片內(nèi)無ROM,則EA端只能接系統(tǒng)的公共地端,即低電平。EA十八、什么是時序?MCS51單片機(jī)的振蕩周期、時鐘周期、機(jī)器周期、指

溫馨提示

  • 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

提交評論