單片機開卷考試整理_第1頁
單片機開卷考試整理_第2頁
單片機開卷考試整理_第3頁
單片機開卷考試整理_第4頁
單片機開卷考試整理_第5頁
已閱讀5頁,還剩5頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

微型計算機:微處理器(CPU).存儲器,接口適配器(輸入輸出接口電路),輸入/輸出(I/O)設(shè)備。單片機:微處理器,RAM,ROM,I/O口,定時器運算器:算術(shù)邏輯單元(簡稱ALU),累加器,寄存器.作用:是把傳送到微處理器的數(shù)據(jù)進行運算或邏輯運算。ALU可對兩個操作數(shù)進行加、減、與、或、比較大小等操作,最后將結(jié)果存入累加器。ALU執(zhí)行不同的運算操作是由不同控制線上的信息所確定的。來源:累加器數(shù)據(jù)寄存器功能:執(zhí)行各種算術(shù)運算執(zhí)行各種邏輯運算,并進行邏輯測試如零值測試或兩個值的比較.控制器:程序計數(shù)器,指令寄存器,指令譯碼器時序產(chǎn)生器,操作控制器。作用:發(fā)布命令的“決策機構(gòu)”,即協(xié)調(diào)和指揮整個計算機系統(tǒng)的操作。功能:從內(nèi)存中取出一條指令,并指出下一條指令在內(nèi)存中的位置。對指令進行譯碼或測試,并產(chǎn)生相應(yīng)的操作控制信號,以便啟動規(guī)定的動作.指揮并控制CPU、內(nèi)存和輸入/輸出設(shè)備之間數(shù)據(jù)流動的方向。CPU中的主要寄存器:累加器(A),數(shù)據(jù)寄存器(DR),指令寄存器(IR),指令譯碼器(ID),程序計數(shù)器(PC),地址寄存器(AR)計算機中常用編碼:BCD碼,ASCII碼80C31片內(nèi)沒有程序存儲器,80C51內(nèi)部設(shè)有4KB的掩膜ROM程序存儲器。87C51是將80C51片內(nèi)的ROM換成EPROM,89C51則換成4KB的閃速E2PROM。89C51單片機的基本組成:1、一個8位的微處理器CPU。2、片內(nèi)數(shù)據(jù)存儲器(RAM128B/256B)3、片內(nèi)4kB程序存儲器FlashROM(4KB)片外最多可擴至64KBROM/EPROM,地址為1000H~FFFFH。4、四個8位并行I/O(輸入/輸出)接口P0?P3:5、兩個或三個定時/計數(shù)器:6、一個全雙工UART的串行I/O口:7、片內(nèi)振蕩器和時鐘產(chǎn)生電路:8、五個中斷源的中斷控制系統(tǒng)。9、具有節(jié)電工作方式單片機中運算器(1)8位的ALU:(2)8位累加器ACC(A)(3)8位程序狀態(tài)字寄存器PSW(4)8位寄存器B(5)布爾處理器(6)2個8位暫存器單片機中控制器(1)程序計數(shù)器PC(16位)(2)指令寄存器IR及指令譯碼器ID(3)振蕩器和定時電路存儲器1)程序存儲器(ROM)89C51片內(nèi)為4KBFlashROM。地址0000H?0FFFH。用于存放程序和表格常數(shù)2)數(shù)據(jù)存儲器(RAM)89C51RAM均為128B,地址為00H?7FH。還有32個字節(jié)單元可指定為工作寄存器。片內(nèi)還有21個特殊功能寄存器(SFR),它們同128字節(jié)RAM統(tǒng)一編址,地址為80H~FFH。I/O接口:四個8位并行I/O接口P0?P3,都是雙向端口,每個端口各有8條I/O線。P0-P3口四個鎖存器同RAM統(tǒng)一編址,可作為SFR來尋址。P0口:漏極開路的8位準(zhǔn)雙向I/O口,每位能驅(qū)動8個LS型TTL負(fù)載。P0口可作為一個數(shù)據(jù)輸入/輸出口;在CPU訪問片外存儲器時,P0口為分時復(fù)用的低8位地址總線和8位數(shù)據(jù)總線。P0口作一般I/O口使用時,應(yīng)外接上拉電阻,才能輸出高電平P1口:帶內(nèi)部上拉電阻的8位準(zhǔn)雙向I/O端口,每位能驅(qū)動4個LS型TTL負(fù)載。P2口:帶內(nèi)部上拉電阻的8位準(zhǔn)雙向I/O端口,每位能驅(qū)動4個LS型TTL負(fù)載.在CPU訪問片外存儲器時,它輸出高8位地址P3口:帶內(nèi)部上拉電阻的8位準(zhǔn)雙向I/O端口,每位能驅(qū)動4個LS型TTL負(fù)載。P3口除作為一般I/O口外,每個引腳都有第二功能。微機的存貯器結(jié)構(gòu)分為普林斯頓結(jié)構(gòu)和哈佛結(jié)構(gòu)兩類堆棧指針SP:系統(tǒng)復(fù)位時,SP初始化為07H.數(shù)據(jù)指針DPTR:一個16位的特殊功能寄存器,由DPH(83H),DPL(82H)組成下面是單片機外接晶振頻率12MHz時的各種時序單位的大小.振蕩周期=1/fOSC=1/12MHz=0.08333狀態(tài)周期=2/fOSC=2/12MHz=0.1673機器周期=12/fOSC=12/12MHz=13指令周期=(1?4)機器周期=1?4|is復(fù)位:1、上電自動復(fù)位:通過外部復(fù)位電路的電容充電實現(xiàn)2、手動復(fù)位:按鍵電平復(fù)位,按鍵脈沖復(fù)位-可編程接口:可用軟件選擇其功能的接口。2-控制器:由程序計數(shù)器、指令寄存器、指令譯碼器、時序發(fā)生器和操作控制器等組成。用來協(xié)調(diào)指揮計算機系統(tǒng)的操作。?機器數(shù)與真值:計算機中的數(shù)稱為機器數(shù),它的實際值叫真值。?累加器:既存操作數(shù)又存操作結(jié)果的寄存器.?微型計算機:由微處理器(CPU)、存儲器、接口適配器(I/O接口電路)及輸人/輸出設(shè)備組成。通過系統(tǒng)總線將它們連接起來,以完成某些特定的運算與控制。?指令系統(tǒng):一臺計算機所能執(zhí)行的全部指令的集合稱為這個CPU的指令系統(tǒng)。7?總線:所謂總線,是連接系統(tǒng)中各擴展部件的一組公共信號線。8?運算器:由算術(shù)邏輯單元ALU、累加器A和寄存器等幾部分組成,用來執(zhí)行各種算術(shù)運算和邏輯運算.9?微處理器:微處理器本身不是計算機它是微型計算機的核心部件,又稱它為中央處理單元CPU.它包括兩個主要部分:運算器、控制器.?指令:指令是CPU根據(jù)人的意圖來執(zhí)行某種操作的命令.?匯編語言:匯編語言是一種用指令的助記符、符號地址、標(biāo)號等編寫程序的語言,又稱符號語言。?尋址方式:尋址方式就是尋找指令申操作數(shù)或操作數(shù)所在地址的方式。也就是如何找到存放操作數(shù)的地址,把操作數(shù)提取出來的方法。?堆棧:堆棧是在片內(nèi)RAM中專門開辟出來的一個區(qū)域數(shù)據(jù)的存取是以"后進先出"的結(jié)構(gòu)方式處理的.實質(zhì)上,堆棧就是一個按照”后進先出"原則組織的一段內(nèi)存區(qū)域。?高級語言:高級語言是完全獨立于機器的通用語言。?匯編:匯編語言源程序在交付計算機執(zhí)行之前,需要先翻譯成目標(biāo)程序,這個翻譯過程叫匯編。?指令周期:指執(zhí)行一條指令所占用的全部時間。通常一個指令周期含1~4個機器周期.?進位和溢出:兩數(shù)運算的結(jié)果若沒有超出字長的表示范圍,則由此產(chǎn)生的迸位是自然進位;若兩數(shù)的運算結(jié)果超出了字長的表示范圍(即結(jié)果不合理),則稱為溢出。例如將正數(shù)3FH和負(fù)數(shù)D0H相加,其結(jié)果不會超出8位字長的表示范圍,所以其結(jié)果10FH中的進位是正常進位(也就是模)。但是,若正數(shù)3FH與正數(shù)70H相加,其結(jié)果為AFH,最高位為”1",成了負(fù)數(shù)的含義,這就不合理了,這種情況稱為溢出。?單片機用于外界過程控制中,為何要進行A/D、D/A轉(zhuǎn)換?答:單片機只能處理數(shù)字形式的信息,但是在實際工程中大量遇到的是連續(xù)變化的物理量,如溫度、壓力、流量、光通量、位移量以及連續(xù)變化的電壓、電流等。對于非電信號的物理量,必須先由傳感器進行檢測,并且轉(zhuǎn)換為電信號,然后經(jīng)過放大器放大為0V?5V電平的模擬量。所以必須加接模擬通道接口,以實現(xiàn)模擬量和數(shù)字量之間的轉(zhuǎn)換。A/D(模/數(shù))轉(zhuǎn)換就是把輸入的模擬量變?yōu)閿?shù)字童供單片機處理;而D/A(數(shù)/模)轉(zhuǎn)換就是將單片機處理后的數(shù)字量轉(zhuǎn)換為模擬量輸出。?具有8位分辨率的A/D轉(zhuǎn)換器,當(dāng)輸入0V?5V電壓時,其最大量化誤差是多少?答:對于8位A/D轉(zhuǎn)換器,實際滿量程電壓為5V,則其量化單位lLSB=5V/255Q0.0196V,考慮到A/D轉(zhuǎn)換時會進行4舍5入處理,所以最大量化誤差為±(1/2)LSB,即±0。0098V或±9。8mV。20。A/D轉(zhuǎn)換芯片中采樣保持電路的作用是什么?省略采樣保持電路的前提條件是什么?答:A/D轉(zhuǎn)換芯片中采樣保持電路的作用是:能把一個時間連續(xù)的信號變換為時間離散的信號,并將采樣信號保持一段時間。當(dāng)外接模擬信號的變化速度相對于A/D轉(zhuǎn)換速度來說足夠慢,在轉(zhuǎn)換期間內(nèi)可視為直流信號的情況下,可以省略采樣保持電路。21?串行數(shù)據(jù)傳送的主要優(yōu)點和用途是什么?答:串行數(shù)據(jù)傳送是將數(shù)據(jù)按位進行傳送的方式。其主要優(yōu)點是所需的傳送線根數(shù)少(單向傳送只需一根數(shù)據(jù)線、雙向僅需兩根),對于遠距離數(shù)據(jù)傳送的情況采用串行方式是比較經(jīng)擠的。?所以串行方式主要用于計算機與遠程終端之間的數(shù)據(jù)傳送22.MCS-51指令集中有無”程序結(jié)束”指令?上機調(diào)試時怎樣實現(xiàn)“程序結(jié)束”功能。答:沒有這樣的指令。但實現(xiàn)"程序結(jié)束”至少可以借助4種辦法:用原地踏步指令SJMP$死循環(huán);在最后一條指令后面設(shè)斷點,用斷點執(zhí)行方式運行程序;用單步方式執(zhí)行程序;在末條指令之后附加一條LJMP0000H,由軟件返回監(jiān)控狀態(tài)。?中斷服務(wù)子程序與普通子程序有哪些異同之處?答:相同點:都是讓CPU從主程序轉(zhuǎn)去執(zhí)行子程序,執(zhí)行完畢后又返回主程序.不同點:中斷服務(wù)子程序是隨機執(zhí)行的,而普通子程序是預(yù)先安排好的;中斷服務(wù)子程序以RETI結(jié)束,而一般子程序以RET結(jié)束。RETI除了將斷點彈回PC動作之外,還要清除對應(yīng)的中斷優(yōu)先標(biāo)志位(片內(nèi)不可尋址的觸發(fā)器),以便新的中斷請求能被響應(yīng).?說明DAA指令的用法.答:DAA為十進制調(diào)整指令。在進行BCD數(shù)加法運算時,該指令要跟在加法指令后面,對A的內(nèi)容進行十進制調(diào)整。25.80C51有幾種尋址方式?各涉及哪些存儲器空間?答:表12-1概括了每種尋址方式可涉及的存儲器空間。■作It導(dǎo)址方式*富我童?翔1作累尋址室聞立尋址程序存瞄HDM中MOVA,55M~直痍暮址片內(nèi)RAM隹mgSERMOV工fl*的1R0-R7MDVfiBHrRSMDVA感RDMDVXa而yn■姬尋址詈序暮A十FC,(BA+皿TOMQVCAf?A+DPTBSJMF&HH片內(nèi)RAMIffMH-ZFH幸中世給址cutMH標(biāo)g*功.■尊加皿SETS£A26。80C51晌應(yīng)中斷的條件是什么?CPU響應(yīng)中斷后,CPU要進行哪些操作?不同的中斷源的中斷入口地址是多少?答:(l)CPU響應(yīng)中斷的條件如下:首先要有中斷源發(fā)出有效的中斷申請;CPU中斷是開放的,即中斷總允許位EA=l,CPU允許所有中斷源申請中斷;申請中斷的中斷源的中斷允許位為1,即此中斷源可以向CPU申請中斷.以上是CPU響應(yīng)中斷的基本條件。如果上述條件滿足則CPU一般會響應(yīng)中斷。但是,若有下列任何一種情況存在,則中斷響應(yīng)會被阻止。CPU正處在為一個同級或高級的中斷服務(wù)中?,F(xiàn)行機器周期不是所執(zhí)行的指令的最后一個機器周期。作此限制的目的在于便當(dāng)前指令執(zhí)行完畢后,才能進行中斷響應(yīng),以確保當(dāng)前指令的完整執(zhí)行。當(dāng)前指令是返回指令(RET、RETI)或訪問IE、IP的指令。因為按MCS—51中斷系統(tǒng)的特性規(guī)定,在執(zhí)行完這些指令之后,還應(yīng)再繼續(xù)執(zhí)行一條指令,然后才能響應(yīng)中斷。若存在上述任何一種情況,CPU將丟棄中斷查詢結(jié)果;否則,將在緊接著的下一個機器周期內(nèi)執(zhí)行中斷查詢結(jié)果,響應(yīng)中斷。CPU響應(yīng)中斷后,保護斷點,硬件自動將(PC)-堆棧,尋找申斷源,中斷矢量一PC,程序轉(zhuǎn)向中斷服務(wù)程序入口地址.INT0=0003H,T0=000BH,INT1=0013H,Tl=00lBH,串行接口=0023H。27?單片機對中斷優(yōu)先級的處理原則是什么?答:(1)低級不能打斷高級,高級能夠打斷低級;(2)一個中斷已被響應(yīng),同級的被禁止;(3)同級,按查詢順序,INT0-T0-INT1-Tl—串行接口。28。80C51的外部中斷有哪兩種觸發(fā)方式?它們對觸發(fā)脈沖或電平有什么要求?答:(1)有電平觸發(fā)和脈沖觸發(fā)。(2)電平方式是低電平有效。只要單片機在中斷請求引入端INT0和INT1上采樣到低電平時,就激活外部中斷。脈沖方式則是脈沖的下跳G有效。這種方式下,在兩個相鄰機器周期對中斷請求引入端進行采樣中,如前一次為高,后一次為低,即為有效中斷請求。因此在這種中斷請求信號方式下,中斷請求信號的高電平狀態(tài)和低電平狀態(tài)都應(yīng)至少維持一個周期以確保電平變化能被單片機采樣到。29?單片機怎樣管理中斷?怎樣開放和禁止中斷?怎樣設(shè)置優(yōu)先級?答:(1)由中斷源提出中斷,再由中斷控制端決定是否中斷,再按設(shè)定好的優(yōu)先級的順序響應(yīng)中斷.如同一級優(yōu)先級的中斷按:外部中斷0,定時中斷0,外部中斷1,定時中斷1,串行中斷.中斷后如果是:脈沖觸發(fā),TEl(0)被清0;電平觸發(fā),舊(0)不被清零,要用軟件清0。它由中斷允許寄存器IE控制:如開放中斷EA必須為1,再使要求中斷的申斷源的中斷允許位為1:要禁止中斷,EA=0即可。由IP控制,1為高級,0為低級,PS為串行中斷優(yōu)先級,PTl(0)為定時中斷1(0)優(yōu)先級,PXl(0)外部中斷1(0)優(yōu)先級。使哪個中斷源為優(yōu)先級,就置哪個優(yōu)先設(shè)定位為1.30。80C51單片機定時器/計數(shù)器作定時和計數(shù)用時,其計數(shù)脈沖分別由誰提供?答:作定時器時:計數(shù)脈沖來自單片機內(nèi)部,其頻率為振蕩頻率的1/12.作計數(shù)器時:計數(shù)脈沖來自單片機的外部,即P3.4(T0)和P3。5(Tl)兩個引腳的輸入脈沖.31.80C51單片機定時器/計數(shù)器的門控信號GATE設(shè)置為1時,定時器如何啟動?答:80C51單片機定時器/計數(shù)器的門控信號GATE設(shè)置為1時,定時器的啟動受外部INT0(INTl)引腳的輸人電平控制:當(dāng)INT0(INTl)引腳為高電平時,置TR0(TRl)為1時啟動定時器/計數(shù)器0(1)工作。32。80C51單片機片內(nèi)設(shè)有幾個定時器/計數(shù)器?它們是由哪些特殊功能寄存器組成?答:80C51單片機片內(nèi)設(shè)有2個定時器/計數(shù)器:定時器/計數(shù)器0和定時器/計數(shù)器1,由TH0、TL0、THl、TLl、TMOD、TCON特殊功能寄存器組成。?定時器/計數(shù)器作定時器用時,其定時時間與哪些因素有關(guān)?作計數(shù)器時,對外界計數(shù)頻率有何限制?答:定時器/計數(shù)器作定時器用時,其定時時間與以下因素有關(guān):定時器的工作模式定時器的計數(shù)初值以及單片機的晶振頻率。作計數(shù)器時,外界計數(shù)脈沖的頻率不能高于振蕩脈沖頻率的1/24。?什么是單片機的機器周期、狀態(tài)周期、振蕩周期和指令周期?它們之間是什么關(guān)系?答:某條指令的執(zhí)行周期由若干個機器周期(簡稱M周期)構(gòu)成,一個機器周期包含6個狀態(tài)周期(又稱時鐘周期,簡稱S周期),而一個狀態(tài)周期又包含兩個振蕩周期(P1和P2,簡稱p周期)。也就是說,指令執(zhí)行周期有長有短,但一個機器周期恒等于6個狀態(tài)周期或12個振蕩周期,即lM=6S=l2P。請見《教材》P28圖.?當(dāng)定時器T0工作于模式3時,如何使運行中的定時器Tl停止下來?答:TRl為定時器Tl的運行控制位,通常將該位置1就可啟動定時器Tl使之運行起來;把TRl清0便停止定時器Tl的運行。但在定時器T0被設(shè)定為模式3運行時,就不能再用這種方法來控制定時器Tl的啟停了。因為在這種情況下,如《教材》Pl06圖6—11所示,TRl借給定時器T0作為8位定時器TH0的運行控制位了.當(dāng)定時器T0在模式3下運行時,若把定時器1設(shè)定為模式3,即將TMOD寄存器的位5(Ml)和位4(M0)寫成llB,則定時器Tl便停止運行;若此后將其從模式3中切換出來,例如,把這兩位再次寫成0lB,則定時器Tl將按模式1運行起來。?若80C51的片內(nèi)ROM內(nèi)容已不符合要求,那么片內(nèi)硬件如何繼續(xù)使用?答:把80C51的EA引腳接地,片外擴接EPROM芯片,就等于宣布片內(nèi)ROM作廢,完全執(zhí)行片外EPROM中的程序。這樣,片內(nèi)硬件資源不受影響,可繼續(xù)使用。?波特率、比特率和數(shù)據(jù)傳送速率的含意各是什么?答:在數(shù)據(jù)通信申,描述數(shù)據(jù)傳送速度的方式有3種:波特率:每秒傳送多少個信號碼元(或每秒信號碼元變換的總個數(shù)),單位是波特(Bd)。比特率:每秒傳送多少個二進制位(或每秒傳送二進制碼元的個數(shù)),單位是b/s。數(shù)據(jù)傳送速率(或字符傳送速率):每秒傳送多少個字符(或單位時間內(nèi)平均數(shù)據(jù)傳移速率),單位是字符/秒.當(dāng)傳輸?shù)男盘柺嵌M制數(shù)位時,波特率和比特率就變成了一回事,尤其是計算機通信中,信號碼元常與二進制碼元相同,此時可以統(tǒng)一起來。例如,甲乙雙方傳送二進制數(shù)據(jù)的速度是每秒傳送300個字符,每個字符附加了起始、停止和校驗各一位,此時描述該速度有3種方式:數(shù)據(jù)字符傳送速率是300字符/秒。忍比特率300X(8+1+1+l)b/s=300Xllb/s=3300b/s.波特率與比特率相同,亦為300XllRd=3300Bd。?開機復(fù)位后,CPU使用的是哪組工作寄存器?它們的地址是什么?CPU如何確定和改變當(dāng)前工作寄存器組?答:系統(tǒng)復(fù)位后,CPU選用第0組工作寄存器即地址分別為00H?07H.如需改變當(dāng)前工作寄存器,可設(shè)置PSW狀態(tài)字中的RSl、RS0。如RSl、RS0為00則指向第0組;為01則指向第1組;為10則指向第2組;為ll則指向第3組。?程序狀態(tài)寄存器PSW的作用是什么?常用狀態(tài)有哪些位?作用是什么?答:程序狀態(tài)字寄存器PSW主要用于保存程序運行中的各種狀態(tài)信息。各位功能如下:CY(PSW?7)為進位標(biāo)志。在進行加或減運算中,表示有無進位或借位。位操作時,又可認(rèn)為是位累加器.AC(PSW?6)為輔助進位標(biāo)志。加或減操作中,表示低4位數(shù)向高4位有無進位或借位,以用作BCD碼調(diào)整的判斷位。F0(PSW-5)為用戶標(biāo)志位。用戶可自行定義的一個狀態(tài)標(biāo)記。RSl、RS0(PSW?4PSW?3)為工作寄存器組指針。用以選擇CPU當(dāng)前工作寄存器組。OV(PSW?2)為溢出標(biāo)志。算術(shù)運算時,表示是否溢出。Fl(PSW?l)為用戶標(biāo)志位。同F(xiàn)0。P(PSW?0)為奇偶標(biāo)志位。表示累加器A中"1”的位數(shù)的奇偶數(shù)。該位多用作串行通信中的奇偶檢驗。40?位地址7CH與字節(jié)地址7CH如何區(qū)別?位地址7CH具體在片內(nèi)RAM中什么位置?答:字節(jié)地址是片內(nèi)RAM的單元地址,而位地址是片內(nèi)RAM單元申的某一位。7CH字節(jié)地址為RAM的7CH單元,而7CH位地址是RAM2FH單元中的D4位。41?Mcs-51單片機的時鐘周期與振蕩周期之間有什么關(guān)系?一個機器周期的時序如何劃分?答:時鐘周期為最基本的時間單位。機器周期則是完成某一個規(guī)定操作所需的時間。一個機器周期為6個時鐘周期,共19個振蕩周期,依次可表示為SlPl、SlP2、…、S6Pl、S6P2,即一個時鐘周期包含有二個振蕩周期。42-MCS-51單片機有幾種復(fù)位方法?應(yīng)注意的事項?答:單片機的復(fù)位有上電自動復(fù)位和按鈕手動復(fù)位兩種。使用時應(yīng)注意:上電復(fù)位的最短時間應(yīng)保證為振蕩周期建立時間加上兩個機器周期的時間。當(dāng)單片機運行程序出錯或進入死循環(huán)時,可用按鈕復(fù)位來重新啟動。43.MCS-51單片機內(nèi)部包含哪些主要邏輯功能部件?答:89C51單片機主要由下列部件組成:一個8位CPU、一個片內(nèi)振蕩器及時鐘電路、4KBFlashROM程序存儲器、256B的RAM、2個16位的定時/計數(shù)器、可尋址64KB片外數(shù)據(jù)存儲器和64KB片外程序存儲器空間的控制電路、4個8位并行I/O端口及一個可編程全雙工串行接口。-MCS-51單片機的存儲器從物理結(jié)構(gòu)上和邏輯上分別可劃分幾個空間?答:MCS-51系列單片機的存儲器配置從物理結(jié)構(gòu)上可分為:片內(nèi)程序存儲器、片外程序存儲器、片內(nèi)數(shù)據(jù)存儲器、片外數(shù)據(jù)存儲器。從邏輯上可分為片內(nèi)外統(tǒng)一編址的64KB的程序存儲器、片內(nèi)256B的數(shù)據(jù)存儲器以及片外64KB的數(shù)據(jù)存儲器.?存儲器中有幾個具有特殊功能的單元?分別作什么用?答:MCS-51系列單片機的存儲器中有6個保留特殊功能單元,其中0000H為復(fù)位入□)0003H為外部中斷0矢量入口、000BH為T0溢出中斷人口、0013H為外部中斷1矢量入口、00lBH為Tl溢出中斷入口、0093H為串行接口中斷入口。46.MCS-51單片機片內(nèi)256B的數(shù)據(jù)存儲器可分為幾個區(qū)?分別作什么用?答:MCS—51單片機片內(nèi)數(shù)據(jù)存儲器可分為二個區(qū):00H?7FH單元組成的低128B的片內(nèi)RAM區(qū)、80H?FFH單元組成的高128B的專用寄存器區(qū)。其中低128B的RAM區(qū)又分為:00H?lFH單元為工作寄存器區(qū)、20H~2FH單元為位尋址區(qū)以及30H~7FH單元為用戶RAM區(qū)。工作寄存器區(qū)可作通用寄存器用用戶RAM區(qū)可作堆棧和數(shù)據(jù)緩沖用。專用寄存器區(qū)又稱特殊功能寄存器。?MCS-51單片機的程序存儲器和數(shù)據(jù)存儲器共處同一地址空間為什么不會發(fā)生總線沖突?答:訪問不同存儲器,使用不同的指令.如訪問ROM用MOVC,訪問片內(nèi)RAM則用MOV,片外RAM用MOVX。不同的指令控制信號有所不同,故可避免總線沖突。?MCS—51單片機的P0~P3四個I/O端口在結(jié)構(gòu)上有何異同?使用時應(yīng)注意的事項?答:MCS-51單片機的四個端口在結(jié)構(gòu)上相同之處,P0~P3都是準(zhǔn)雙向I/O口,作輸入時,必須先向相應(yīng)端口的鎖存器寫入"1".不同之處:P0口的輸出級與Pl?P3口不相同,它無內(nèi)部上拉電阻,不能提供拉電流輸出,而Pl?P3則帶內(nèi)部上拉電阻,可以提供拉電流輸出。當(dāng)P0口作通用I/O口輸出使用時,需外接上拉電阻才可輸出高電平;但作地址/數(shù)據(jù)總線時,不需要外接上拉電阻。Pl~P3作I/O輸出時,均不需外接上拉電阻。49.MCS—51單片機有幾種低功耗方式?如何實現(xiàn)?答:MCS—51單片機有兩種低功耗方式,分別為待機(休閑)方式和掉電方式。置PCON中的D0位即IDL為”1",單片機即迸人待機方式置Dl位即PD為"1”,則進入掉電方式。50?試說明指令CJNE@Rl,#7AH,l0H的作用。若本指令地址為8100H,其轉(zhuǎn)移地址是多少?答:CJNE@Rl,#7AH,l0H指令是進行以Rl間址單元的內(nèi)容與一個立即數(shù)進行比較。當(dāng)((Rl))=7AH時:(PC)+3一PC,0一CY當(dāng)((Rl))>7AH時:(PC)+3+10H—PC,0一CY當(dāng)((Rl)<7AH時:(PC)+3+10H—PC,l一CY若本指令地址為8100H,其轉(zhuǎn)移地址為:目的地址=8100H十3十10H=8113H.-如何將80C51S80C31使用?答:把80C51的EA引腳接地,片外擴接EPROM芯片,就等于宣布片內(nèi)ROM作廢,完全執(zhí)行片外EPROM中的程序。這樣,80C51就可當(dāng)80C31使用.?程序存儲器的0543H和0544H兩單元中存有一條AJMP指令.若其代碼為E165H.則目的地址等于什么?答:AJMP指令之目的地址的高5位來自程序計數(shù)器PC的高5位。在把這條指令的兩個字節(jié)從程序存儲器取出并送入指令寄存器IR中去之后,Pr內(nèi)容加2,由原來的0543H變成了0545H。其高5位為00000B,目的地址的低11位為操作碼高3位與指令第二個字節(jié)的有序組合。指令代碼第一個字節(jié)是ElH,其最高3位等于1llB:第二個字節(jié)為65H。因此這條AJMP指令的目的地址等于0765H。?某CJNE指令代碼的第一個字節(jié)位于0800H單元,其跳轉(zhuǎn)目的地址為07E2H,試問(0802H)=?答:CJNE指令代碼含3B,其中第3個字節(jié)為偏移量,這題的意思就是要求算出偏移量來。執(zhí)行此指令時(PC)=0803H,目的地址為07E2H,故偏移量等于07E2H-0803H=FFDFH,8位偏移量為DFH,即(0802H)=DFH。54?DJN2R7,LABEL指令的代碼為DF0FH。若該指令的第一個字節(jié)位于0800H單元,則標(biāo)號LABEL所代表的目的地址等于什么?答:執(zhí)行這條DJNZ指令時,(PC)=0802H。指令代碼申的第2個字節(jié)DFH為偏移量.目的地址等于PC值與偏移量的代數(shù)和。但應(yīng)注意,求兩者的代數(shù)和時,偏移量應(yīng)擴展成16位。擴展的原則是:若8位偏移量為正數(shù).則前面加OOH;若為負(fù)數(shù),則前面加FFH。這里的8位偏移量DFH是負(fù)數(shù),所以其16位形式為FFDFH。最后求得目的地址=0809H+FFD-FH=07ElH。55?讀下面一段程序,并以簡單方法對它進行改寫,限用5條指令。MOVR0,#21HMOVA,20HMOVA,20HSWAPAANLA,#0FHANLA,#0FHMOV@R0,AMOV@R0,AINCR0答:這段程序的任務(wù)是把片內(nèi)RAM20H單元的內(nèi)容分解成高4位和低4位,低4位存入21H單元,高4位存入22H單元.可以認(rèn)為這是把20H單元內(nèi)的數(shù)據(jù)分成兩個十六進制位或兩個BCD位。這可用除法進行:MOVA,20H;取數(shù)MOVB,#10H;除數(shù)為16DIVAB;分離十六進制位MOV21H,B;存低位MOV22H,A;存高位56?執(zhí)行過某LCALL指令后,堆棧的內(nèi)容如圖12—1所示。試問:這條LCALL指令的首

地址是多少?它執(zhí)行前SP的內(nèi)容等于多少?子程序中兩條保護現(xiàn)場指令依次是什么?答:從堆棧的內(nèi)容看,返回地址為504AH。LCATL指令代碼含3B,故這條LCALL指令的首地址圖等于504AH-3=5047H.這條指令執(zhí)行前,(SP)=2FH。子程序中兩條保護現(xiàn)場的指令依次是PUSHACC和PUSHPSW.57?用一條什么指令可以取代下列4條指令?答:這4條指令的任務(wù)是要轉(zhuǎn)移到目的地址1234H去,所以可用一條LIMP1234H指令來取代它們。利用乘法指令編寫15HX33H的程序,將乘積的高利用乘法指令編寫15HX33H的程序,將乘積的高8位存入31H單元,低8位存入30H單元MOVA,#15HMOVB,#33HMULA,BMOV31H,BMOV30H,A編程將片內(nèi)35H?55H單元中的內(nèi)容送入到以3000H為首的數(shù)據(jù)存儲區(qū)中。M:MOVR0,#35HMOVR1,#21HMOVDPTR,#3000HLOOP:MOVA,@R0MOVX@DPTR,AINCR0INCDPTRDJNZR1,LOOPRET拆字。將片內(nèi)RAM20H單元的內(nèi)容拆成兩段,每段四位。并將它們分別存入21H與22H單元中。ORG2000HSTART:MOVR0,#21H;21H—R0MOVA,20H;(20H)fAANLA,#0FH;AA#0FH^AMOV@R0,A;(A)f(R0)INCR0;R0+1(R0MOVA,20H;(20H)—ASWAPA,;A0?--A4~7ANLA,#0FH;AA#0FH—AMOV@R0,A;(A)—(R0)SJMP$片內(nèi)RAMONE和TWO兩個單元中存有兩

溫馨提示

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

最新文檔

評論

0/150

提交評論