《80C51單片機(jī)的存儲(chǔ)器在結(jié)構(gòu)上有何特點(diǎn)?在物理上和邏》由會(huì)員分享,可在線閱讀,更多相關(guān)《80C51單片機(jī)的存儲(chǔ)器在結(jié)構(gòu)上有何特點(diǎn)?在物理上和邏(3頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、1、80C51單片機(jī)的存儲(chǔ)器在結(jié)構(gòu)上有何特點(diǎn)?在物理上和邏輯上各有哪幾種地址空間?訪問(wèn)片內(nèi)RAM和片外RAM的指令格式有何區(qū)別?
答:80C51單片機(jī)采用將數(shù)據(jù)存儲(chǔ)器和程序存儲(chǔ)器分開(kāi),分別尋址的結(jié)構(gòu),稱(chēng)為Harvard結(jié)構(gòu)。在物理上有四個(gè)存儲(chǔ)器空間:片內(nèi)程序存儲(chǔ)器,片外程序存儲(chǔ)器,片內(nèi)數(shù)據(jù)存儲(chǔ)器和片外數(shù)據(jù)存儲(chǔ)器。
在邏輯上有三個(gè)存儲(chǔ)器空間:片內(nèi)外統(tǒng)一的程序空間,片內(nèi)數(shù)據(jù)空間,
片外數(shù)據(jù)空間。
訪問(wèn)格式:訪問(wèn)片內(nèi)采用格式,訪問(wèn)片外采用格式。
2、80C51單片機(jī)的EA信號(hào)有什么功能?在使用80C51時(shí),EA信號(hào)引腳應(yīng)如何處理?在
使用80C31時(shí),EA信號(hào)引腳應(yīng)如何處理?答:80C5
2、1單片機(jī)的EA信號(hào)為外部程序存儲(chǔ)器選擇信號(hào),低電平有效。該信號(hào)用于選擇低端程序存儲(chǔ)器。但EA=0時(shí),控制器認(rèn)為低端程序在片外;當(dāng)EA=1時(shí),控制器認(rèn)為低端程序存儲(chǔ)器在片內(nèi)。對(duì)于80C51,由于有片內(nèi)ROM,可以將EA接成高電平,這時(shí)先運(yùn)行的是片內(nèi)0地址開(kāi)始的掩膜程序;也可以將EA接成低電平,以屏蔽片內(nèi)ROM,強(qiáng)制執(zhí)行片外擴(kuò)展的程序存儲(chǔ)器中的程序。在使用80C31時(shí),由于沒(méi)有片內(nèi)ROM,故將EA接成低
電平。
3、80C51單片機(jī)內(nèi)RAM低128個(gè)存儲(chǔ)單元?jiǎng)澐譃槟?個(gè)主要部分?各部分主要功能是什么?
答:80C51單片機(jī)內(nèi)RAM低128個(gè)存儲(chǔ)單元?jiǎng)澐譃楣ぷ骷拇嫫鲄^(qū),位尋址區(qū)和用戶RAM區(qū)三
3、個(gè)部分。
工作寄存區(qū):片內(nèi)RAM的00H~1FH,共32個(gè)單元,包括4個(gè)工作寄存器組,每個(gè)組有8個(gè)8位通用寄存器。這些單元可以寄存器尋址,指令的數(shù)量最多,均為單周期指令,執(zhí)行的速度最快。
為尋址區(qū):片內(nèi)RAM的20H~2FH,既可以進(jìn)行字節(jié)尋址,又可以為尋址。
用戶RAM區(qū):片內(nèi)RAM的30H~7FH,共80個(gè)單元。一般用來(lái)存放各種用戶數(shù)據(jù),如A/D轉(zhuǎn)換數(shù)據(jù),鍵盤(pán)掃描碼,溫度液位設(shè)定值,數(shù)據(jù)處理暫存結(jié)果,反饋控制量,顯示緩沖區(qū)等,也用于開(kāi)辟堆棧。
4、程序存儲(chǔ)器的哪些單元被保留用于特定場(chǎng)合?
答:地址向量為0000H,復(fù)位;地址向量為0003H,外部中斷0;地址向量為000BH,計(jì)時(shí)
4、器T0溢出;地址向量0013H,外部中斷1;地址向量001BH,計(jì)時(shí)器T1溢出;地址向量0023H,竄行口中斷;地址向量002BH,計(jì)時(shí)器T2/T2EX。
5、什么是堆棧?堆棧有哪些功能?堆棧指針SP的作用是什么?在程序設(shè)計(jì)時(shí),為什么還要對(duì)SP重新賦值?
答:堆棧是一個(gè)特殊的存儲(chǔ)區(qū),按照“先進(jìn)后出”的特點(diǎn)存取數(shù)據(jù)。堆棧的功能有數(shù)據(jù)暫存,參數(shù)傳遞,子程序調(diào)用和中斷處理。堆棧指針sp是一個(gè)8位寄存器,是用于指示堆棧的棧頂?shù)刂返募拇嫫鳎瑳Q定了堆棧在內(nèi)部RAM中的物理位置,通過(guò)改變SP來(lái)完成出棧和入棧操作。在程序設(shè)計(jì)時(shí),通過(guò)對(duì)sp重新賦值,可以將堆棧設(shè)定在片內(nèi)RAM的任何位置,更為方便明了。
6
5、、80C51單片機(jī)的布爾處理機(jī)包括哪些部分?它們具有哪些功能?共有多少個(gè)單元可以位尋址?
答:80C51單片機(jī)包含自己的累加器一程序狀態(tài)字PSW中的進(jìn)位標(biāo)志位CY;自己的RAM—內(nèi)部數(shù)據(jù)RAM中低128B中的128個(gè)可直接尋址位和SFR中的可尋址位83個(gè);自己的I/O口一P0~P3口的各位;有自己的一套完整的指令系統(tǒng),包含17條指令,可用于各種布爾變量的處理。
布爾處理機(jī)具有的功能:置位、清0和取反;位傳送;位邏輯運(yùn)算和位判斷轉(zhuǎn)移。80C51位處理機(jī)能夠訪問(wèn)的空間有兩個(gè):
1) 位尋址區(qū)中的16個(gè)單元計(jì)128位;
2) SFR中的可尋址位83個(gè)。因此一共可以訪問(wèn)211個(gè)位地址。
7、
6、80C51單片機(jī)的節(jié)拍、狀態(tài)、機(jī)器周期、指令周期是如何設(shè)置的?當(dāng)主頻為12MHz時(shí),各種周期等于多少微秒?
答:時(shí)鐘周期又稱(chēng)為振蕩周期,由單片機(jī)內(nèi)部振蕩電路OSC產(chǎn)生,定義OSC時(shí)鐘頻率的倒數(shù)。時(shí)鐘周期又稱(chēng)為節(jié)拍。時(shí)鐘周期是時(shí)序的最小單位。一個(gè)狀態(tài)有兩個(gè)節(jié)拍。
機(jī)器周期定義為實(shí)現(xiàn)特定功能所需的時(shí)間。80C51的機(jī)器周期12個(gè)時(shí)鐘周期構(gòu)成。執(zhí)行一條指令所需要的時(shí)間為指令周期,指令周期是時(shí)序中的最大單位。由于機(jī)器執(zhí)行不同指令所需的時(shí)間不同。因此不同指令所包含的機(jī)器周期數(shù)也不同。80C51的指令包括1~4個(gè)不等的機(jī)器周期。
當(dāng)主頻為12MHz時(shí),一個(gè)節(jié)拍為1/12ys,—個(gè)狀態(tài)為1/6€s,機(jī)
7、器周期為1ps,指令周期為1~4€s。
8、說(shuō)明80C51單片機(jī)的程序狀態(tài)字PSW的主要功能。
答:程序狀態(tài)字PSW是8位寄存器,用于存放程序運(yùn)行的狀態(tài)信息,PSW中各位狀態(tài)通常是在指令執(zhí)行的過(guò)程中自動(dòng)形成的,但也可以由用戶根據(jù)需要采用傳送指令加以改變。各個(gè)標(biāo)志位的意義如下:
PSW.7(Cy):進(jìn)位標(biāo)志位。
PSW.6(AC):輔助進(jìn)位標(biāo)志位,又稱(chēng)為半進(jìn)位標(biāo)志位。
PSW.5(F0):用戶標(biāo)志位。
PSW.4、PSW.3(RS1和RS0):寄存器組選擇位。
PSW.2(OV):溢出標(biāo)志位。
PSW.1(空缺位):此位為定義。
PSW.0(P):奇偶校驗(yàn)位。
9、談?wù)凪CS
8、-51是怎么避免存儲(chǔ)空間重疊而產(chǎn)生數(shù)據(jù)沖突的?
答:(1)片內(nèi)/片外程序存取器空間地址重疊:MCS-51在復(fù)位后用EA引腳來(lái)區(qū)分是對(duì)片內(nèi)程序存儲(chǔ)器還是片外程序存儲(chǔ)器尋址。當(dāng)EA接地時(shí),選擇全部從片外程序存儲(chǔ)器尋址;當(dāng)
EA接高電平時(shí),選擇從由片內(nèi)到片外的合成程序存儲(chǔ)器空間尋址。
(2)數(shù)據(jù)存儲(chǔ)器和程序存儲(chǔ)器地址重疊:片內(nèi)數(shù)據(jù)存儲(chǔ)器使用MOV指令訪問(wèn),片外數(shù)據(jù)存儲(chǔ)器使用MOVX指令訪問(wèn)。程序存儲(chǔ)器有兩種訪問(wèn)情況:取指時(shí)根據(jù)當(dāng)前PC值訪問(wèn),查表取數(shù)據(jù)時(shí)根據(jù)PC或DPTR中的內(nèi)容和A中的數(shù)值一起用MOVC指令訪問(wèn)。如果訪問(wèn)的是片外程序存儲(chǔ)器,PSEN信號(hào)失效。
3)片內(nèi)/片外數(shù)據(jù)存儲(chǔ)器低地址
9、重疊:片內(nèi)數(shù)據(jù)使用MOV指令訪問(wèn),8位的片內(nèi)地址由RO或R1給出,內(nèi)部讀寫(xiě)信號(hào)由指令時(shí)序控制器在片內(nèi)產(chǎn)生,RD、WR信號(hào)無(wú)效;片外數(shù)據(jù)使用MOVX指令訪問(wèn),16位片外地址可以由DPTR數(shù)據(jù)指針給出,也可以由R0或R1送出片外地址的低8位,結(jié)合P2口鎖存的高8位信息形成16位的被尋址地址,讀寫(xiě)期間RD、
WR信號(hào)有效。
(4)片內(nèi)RAM高128B和SFR地址重疊:52子系列的片內(nèi)RAM高128B和SFR屬于片內(nèi)單元,由MOV指令訪問(wèn)。所不同的是,片內(nèi)RAM高128B通過(guò)R0或R1使用間接尋址方式訪問(wèn);SFR使用直接尋址方式訪問(wèn)。
10、80C51單片機(jī)的4個(gè)I/O口在使用上有哪些分工和特點(diǎn)
10、?在用作通用I/O口時(shí),需注意什么?
答:P0口:漏極開(kāi)路8位雙向并行口。第二功能可以分時(shí)復(fù)用為片外數(shù)據(jù)總線和地址總線低8位,系統(tǒng)不作片外擴(kuò)展之時(shí),也可作為普通8位雙向并行口使用。P0口每位的驅(qū)動(dòng)能力為800uA,可驅(qū)動(dòng)8個(gè)74LS系列TTL型負(fù)載。由于是漏極開(kāi)路輸出,在驅(qū)動(dòng)NMOS電路時(shí)需外接上拉電阻。
P1口:帶內(nèi)部上拉電阻的8位準(zhǔn)雙向并行口。51子系列沒(méi)有第二功能,故通用輸入輸出口使用。P1口每位的驅(qū)動(dòng)能力為400uA,能夠直接驅(qū)動(dòng)4個(gè)TTL負(fù)載。
P2口:帶內(nèi)部上拉電阻的8位準(zhǔn)雙向并行口。第二功能用于提供片外地址總線的高8位;系統(tǒng)不作片外擴(kuò)展時(shí),也可作為普通的8位雙向并行口使用。P2口驅(qū)動(dòng)能力同P1口。
P3口:帶內(nèi)部上拉電阻的8位準(zhǔn)雙向并行口。P3口通常用于第二功能,他們定義了單片機(jī)的一些重要控制信號(hào);不作第二功能使用時(shí)的口線,也可以作為普通雙向輸入輸出口使用。P3口的驅(qū)動(dòng)能力同P1口。
在用作通用I/O口時(shí),要求輸入外部信號(hào)之前必須先在內(nèi)部鎖存器相應(yīng)的位上鎖存為“1”,使其輸出高阻浮空,方可作為輸入端使用。由于復(fù)位后P0~P3內(nèi)部鎖存器的值為“FFH”即全“1”狀態(tài),所以可以直接作為輸入口使用。
王奇科
3061101244