單片機(jī)原理與應(yīng)用.doc
《單片機(jī)原理與應(yīng)用.doc》由會員分享,可在線閱讀,更多相關(guān)《單片機(jī)原理與應(yīng)用.doc(30頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。
第一章習(xí)題 1.1單項(xiàng)選擇題 (1)單片機(jī)又稱為單片微計(jì)算機(jī),最初的英文縮寫是____。答案(D) A.MCPB.CPUC.DPJD.SCM (2)Intel公司的MCS-51系列單片機(jī)是______的單片機(jī)。答案(C) A.1位B.4位C.8位D.16位 (3)單片機(jī)的特點(diǎn)里沒有包括在內(nèi)的是______。答案(C) A.集成度高B.功耗低C.密封性強(qiáng)D.性價(jià)比高 (4)單片機(jī)的發(fā)展趨勢中沒有包括的是______。答案(B) A.高性能B.高價(jià)格C.低功耗D.高性價(jià)比 (5)十進(jìn)制數(shù)56的二進(jìn)制數(shù)是______。答案(A) A.00111000BB.01011100BC.11000111BD.01010000B (6)十六進(jìn)制數(shù)93的二進(jìn)制數(shù)是______。答案(A) A.10010011BB.00100011BC.11000011BD.01110011B (7)二進(jìn)制數(shù)11000011的十六進(jìn)制數(shù)是______。答案(B) A.B3HB.C3HC.D3HD.E3H (8)二進(jìn)制數(shù)11001011的十進(jìn)制無符號數(shù)是______。答案(B) A.213B.203C.223D.233 (9)二進(jìn)制數(shù)11001011的十進(jìn)制有符號數(shù)是______。答案(B) A.73B.-75C.-93D.75 (10)十進(jìn)制數(shù)29的8421BCD壓縮碼是______。答案(A) A.00101001BB.10101001BC.11100001BD.10011100B (11)十進(jìn)制數(shù)-36在8位微機(jī)中的反碼和補(bǔ)碼是______。答案(D) A.00100100B、11011100BB.00100100B、11011011BC.10100100B、11011011BD.11011011B、11011100B (12)十進(jìn)制數(shù)+27在8位微機(jī)中的反碼和補(bǔ)碼分別是______。答案(C) A.00011011B、11100100BB.11100100B、11100101BC.00011011B、00011011BD.00011011B、11100101B (13)字符9的ASCII碼是______。答案(D) A.0011001BB.0101001BC.1001001BD.0111001B (14)ASCII碼1111111B的對應(yīng)字符是______。答案(C) A.SPACE B.P C.DEL D.{ (15)或邏輯的表達(dá)式是______。答案(B) A.A*B=F B.A+B=F C.A⊕B=F D.(A?B) ?=F (16)異或邏輯的表達(dá)式是______。答案(C) A.A*B=F B.A+B=F C.A⊕B=F D.(A?B) ?=F (17)二進(jìn)制數(shù)10101010B與00000000B的“與”、“或”和“異或”結(jié)果是______。答案(B) A.10101010B、10101010B、00000000B B.00000000B、10101010B、10101010B C.00000000B、10101010B、00000000B D.10101010B、00000000B、10101010B (18)二進(jìn)制數(shù)11101110B與01110111B的“與”、“或”和“異或”結(jié)果是______。答案(D) A.01100110B、10011001B、11111111B B.11111111B、10011001B、01100110B C.01100110B、01110111B、10011001B D.01100110B、11111111B、10011001B (19)下列集成門電路中具有與門功能的是______。答案(D) A.74LS32 B.74LS06 C.74LS10 D.74LS08 (20)下列集成門電路中具有非門功能的是______。答案(B) A.74LS32 B.74LS06 C.74LS10 D.74LS08 (21) Proteus軟件由以下兩個(gè)設(shè)計(jì)平臺組成______。答案(C) A.ISIS和PPT B.ARES和CAD C.ISIS和ARES D.ISIS和CAD (22) ISIS模塊的主要功能是______。答案(A) A.電路原理圖設(shè)計(jì)與仿真 B.高級布線和編輯 C.圖像處理 D.C51源程序調(diào)試 (23) ARES模塊的主要功能是______。答案(B) A.電路原理圖設(shè)計(jì)與仿真 B.高級布線和編輯 C.ISIS和ERAS D.ISIS和CAD (24)家用電器如冰箱、空調(diào)、洗衣機(jī)中使用的單片機(jī)主要是利用了它的______能力。答案(D) A.高速運(yùn)算 B.海量存儲 C.遠(yuǎn)程通信 D.測量控制 1.2問答思考題 (1)什么是單片機(jī)?單片機(jī)與通用微機(jī)相比有何特點(diǎn)?提示單片機(jī)是在一塊半導(dǎo)體硅片上集成了計(jì)算機(jī)基本功能部件的微型計(jì)算機(jī)。兩者的比較:(1)通用微機(jī)的CPU主要面向數(shù)據(jù)處理,其發(fā)展主要圍繞數(shù)據(jù)處理功能、計(jì)算速度和精度的提高。單片機(jī)主要面向控制,數(shù)據(jù)類型、計(jì)算速度和精度都相對低一些;(2)通用微機(jī)中存儲器組織結(jié)構(gòu)主要針對增大存儲容量和CPU對數(shù)據(jù)的存取速度。單片機(jī)中存儲器的組織結(jié)構(gòu)比較簡單,尋址空間一般都為64KB;(3)通用微機(jī)中I/O接口主要面向標(biāo)準(zhǔn)外設(shè)(如顯示器、鍵盤、鼠標(biāo)、打印機(jī)等)。單片機(jī)的I/O接口是面向用戶的特定電路,需要用戶掌握接口電路設(shè)計(jì)技術(shù)。 (2)單片機(jī)的發(fā)展有哪幾個(gè)階段?它今后的發(fā)展趨勢是什么?提示1、單片微型計(jì)算機(jī)階段,即SCM,代表性產(chǎn)品是Intel公司的8位MCS-51系列單片機(jī);2、微控制器階段,即MCU,代表性產(chǎn)品是基于51內(nèi)核的微控制器系列產(chǎn)品;片上系統(tǒng)(或系統(tǒng)級芯片)階段,即SoC,代表性產(chǎn)品有各類專用的SoC器件。單片機(jī)總的發(fā)展趨勢是多功能、高速度、低功耗、高性價(jià)比、強(qiáng)I/O功能及結(jié)構(gòu)兼容。 (3)舉例說明單片機(jī)的主要應(yīng)用領(lǐng)域。提示主要應(yīng)用于領(lǐng)域:1、工業(yè)自動化控制,如過程控制器、機(jī)器人模塊、物流計(jì)量模塊、機(jī)電一體化控制系統(tǒng)等;2、智能儀器儀表,如溫度儀表、流量儀表、分析儀器、醫(yī)療儀器、智能傳感器等;3、通信設(shè)備,如路由器、標(biāo)準(zhǔn)鍵盤、打印機(jī)、傳真機(jī)、復(fù)印機(jī)等;4、汽車電子與航空電子系統(tǒng),如動力監(jiān)測系統(tǒng)、自動駕馭系統(tǒng)、運(yùn)行監(jiān)視器(黑匣子)等;5、家用電器,如空調(diào)、冰箱、洗衣機(jī)、微波爐、電視機(jī)、音響、電子玩具等。 (4)在眾多單片機(jī)類型中,8位單片機(jī)為何不會過時(shí),還占據(jù)著單片機(jī)應(yīng)用的主導(dǎo)地位?提示51單片機(jī)技術(shù)成熟、價(jià)格低廉,可以滿足許多簡單工況的應(yīng)用要求;基于51單片機(jī)內(nèi)核發(fā)展的8位高性能單片機(jī)已彌補(bǔ)了51單片機(jī)的性能不足,并已占有相當(dāng)?shù)氖袌龇蓊~;51單片機(jī)涉及微機(jī)原理、電工電路、軟件編程等許多技術(shù)基礎(chǔ),主流微控制器產(chǎn)品也大都與51機(jī)保持兼容,非常適合初學(xué)者作為計(jì)算機(jī)入門知識。綜上所述,由于8位單片機(jī)在學(xué)習(xí)和應(yīng)用方面的獨(dú)特地位,目前仍然不會過時(shí)淘汰。 (5)掌握單片機(jī)原理及應(yīng)用技術(shù)要注意哪些學(xué)習(xí)方法?提示單片機(jī)是一門課程,與學(xué)習(xí)其他課程的基本方法是一樣的,就是要理解,并做到在理解基礎(chǔ)上記憶。單片機(jī)更是一門技術(shù),實(shí)踐環(huán)節(jié)尤其重要。只有通過實(shí)踐才能展現(xiàn)單片機(jī)的價(jià)值、體會到單片機(jī)的精髓、激發(fā)起學(xué)好這門課程的動力。此外,還要養(yǎng)成課前預(yù)習(xí)、課后復(fù)習(xí)、勤做練習(xí)的良好學(xué)習(xí)習(xí)慣。 (6)單片機(jī)技術(shù)開發(fā)的主力軍為何是有工程專業(yè)背景的技術(shù)人員而非計(jì)算機(jī)專業(yè)人員?提示單片機(jī)技術(shù)門檻較低,是一種適合大眾掌握的先進(jìn)技術(shù)。學(xué)習(xí)單片機(jī)只需要具備基本的電子基礎(chǔ)和初中以上文化程度即可參與其中。另外,單片機(jī)開發(fā)有較強(qiáng)的應(yīng)用專業(yè)背景要求,不懂被控對象的特殊要求,就不可能開發(fā)出緊密結(jié)合需求的單片機(jī)產(chǎn)品?;谏鲜鲈?,工程技術(shù)人員是單片機(jī)技術(shù)開發(fā)的主力軍。 (7)學(xué)習(xí)單片機(jī)原理及應(yīng)用技術(shù)需要哪些必要的基礎(chǔ)知識?提示C語言、電子技術(shù)基礎(chǔ)等(8)二進(jìn)制數(shù)的位與字節(jié)是什么關(guān)系?51單片機(jī)的字長是多少?提示位即bit,是二進(jìn)制數(shù)中的1位,也是計(jì)算機(jī)數(shù)據(jù)存儲的最小單位。1個(gè)二進(jìn)制位只可以表示0和1兩種狀態(tài)。字節(jié),即Byte,由8個(gè)二進(jìn)制位構(gòu)成(1Byte=8bit)。字節(jié)是計(jì)算機(jī)數(shù)據(jù)處理的基本單位。字,即Word,是計(jì)算機(jī)一次存取和傳送的數(shù)據(jù)長度,不同計(jì)算機(jī)的字的長度是不同的,51單片機(jī)的字長是8位。 (9)簡述數(shù)字邏輯中的與、或、非、異或的運(yùn)算規(guī)律。提示運(yùn)算規(guī)律如下:與運(yùn)算,全1為1其余為0;或運(yùn)算,全0為0其余為1;非運(yùn)算,逐位取反;異或運(yùn)算,相同為0相異為1。 (10)Proteus仿真軟件為何對學(xué)習(xí)單片機(jī)原理及應(yīng)用具有重要價(jià)值?提示單片機(jī)學(xué)習(xí)中應(yīng)特別強(qiáng)調(diào)的是理論與實(shí)踐相結(jié)合的方法,然而實(shí)驗(yàn)器材的限制常常很難使每個(gè)學(xué)習(xí)者都得到充分的練習(xí)機(jī)會。近年來出現(xiàn)的單片機(jī)仿真設(shè)計(jì)軟件—Proteus已經(jīng)克服這種限制。Proteus不僅可以作為單片機(jī)應(yīng)用的重要開發(fā)工具,也可以充當(dāng)一種非常高效的輔助教學(xué)手段。用戶只需在PC上即可獲得接近全真環(huán)境下的單片機(jī)技能培訓(xùn),為學(xué)習(xí)者提供了極大的便利。(11)ProteusISIS的工作界面中包含哪幾個(gè)窗口?菜單欄中包含哪幾個(gè)選項(xiàng)?提示參考圖1.2,列出圖中標(biāo)出的3個(gè)主要窗口,3個(gè)主要工具欄和菜單欄的12個(gè)選項(xiàng)。 (12)利用ISIS模塊開發(fā)單片機(jī)系統(tǒng)需要經(jīng)過哪幾個(gè)主要步驟?提示開發(fā)過程是:1、啟動ISIS,繪制電路原理圖,保存為*.dsn文件;2、輸入單片機(jī)匯編程序,保存為*.asm文件;3、進(jìn)行源文件編譯,排除語法錯(cuò)誤后保存為*.hex文件;4、單步或斷點(diǎn)仿真調(diào)試,排除邏輯錯(cuò)誤后形成最終*.hex文件;5、連續(xù)仿真運(yùn)行。 (13)何謂PCB?利用ProteusARES模塊進(jìn)行PCB設(shè)計(jì)需要經(jīng)過哪幾個(gè)主要步驟?提示PCB是印刷電路板Printedcircuitboard的英文縮寫,它是以絕緣板為基材,切成一定尺寸,其上附有用電子印刷術(shù)制成的導(dǎo)電圖形和孔眼(如元件孔、緊固孔、金屬化孔等)的電子元器件安裝底板。利用ARES模塊進(jìn)行PCB設(shè)計(jì)可以從元器件布局、布線、覆銅、形成光繪文件等方面進(jìn)行考慮。 第二章習(xí)題 2.1單項(xiàng)選擇題 (1)下列關(guān)于程序計(jì)數(shù)器PC的描述中____是錯(cuò)誤的。答案(C) A.PC不屬于特殊功能寄存器B.PC中的計(jì)數(shù)值可被編程指令修改C.PC可尋址64KBRAM空間D.PC中存放著下一條指令的首地址 (2)MCS-51單片機(jī)的復(fù)位信號是______有效。答案(D) A.下降沿B.上升沿C.低電平D.高電平 (3)以下選項(xiàng)中第______項(xiàng)不是80C51單片機(jī)的基本配置。答案(A) A.定時(shí)/計(jì)數(shù)器T2B.128B片內(nèi)RAMC.4KB片內(nèi)ROMD.全雙工異步串行口 (4)單片機(jī)中的CPU主要由______兩部分組成。答案(B) A.運(yùn)算器和寄存器B.運(yùn)算器和控制器C.運(yùn)算器和譯碼器D.運(yùn)算器和計(jì)數(shù)器 (5)在51單片機(jī)的下列特殊功能寄存器中,具有16位字長的是______。答案(D) A.PCONB.TCONC.SCOND.DPTR (6)80C51單片機(jī)的ALE引腳是______引腳。答案(A) A.地址鎖存使能輸出端B.外部程序存儲器地址允許輸入端C.串行通信口輸出端D.復(fù)位信號輸入端 (7)80C51單片機(jī)的存儲器為哈佛結(jié)構(gòu),其內(nèi)包括______。答案(A) A.4個(gè)物理空間或3個(gè)邏輯空間B.4個(gè)物理空間或4個(gè)邏輯空間C.3個(gè)物理空間或4個(gè)邏輯空間D.3個(gè)物理空間或3個(gè)邏輯空間 (8)在通用I/O方式下,欲從P1口讀取引腳電平前應(yīng)當(dāng)______。答案(B) A.先向P1口寫0B.先向P1口寫1C.先使中斷標(biāo)志清零D.先開中斷 (9)程序狀態(tài)字寄存器中反映進(jìn)位(或借位)狀態(tài)的標(biāo)志位符號是______。答案(A) A.CYB.F0C.OVD.AC (10)單片機(jī)中的程序計(jì)數(shù)器PC用來______。答案(C) A.存放指令B.存放正在執(zhí)行的指令地址C.存放下一條指令的地址D.存放上一條指令的地址 (11)單片機(jī)上電復(fù)位后,PC的內(nèi)容和SP的內(nèi)容為______。答案(B) A.0000H,00HB.0000H,07HC.0003H,07HD.0800H,08H (12)80C51單片機(jī)要使用片內(nèi)RAM,/EA引腳______。答案(D) A.必須接+5VB.必須接地C.必須懸空D.沒有限定 (13)PSW中的RS1和RS0用來______。答案(A) A.選擇工作寄存器區(qū)號B.指示復(fù)位C.選擇定時(shí)器D.選擇中斷方式 (14)上電復(fù)位后,PSW的初始值為______。答案(D) A.1B.07HC.FFHD.0 (15)單片機(jī)80C51的XTAL1和XTAL2引腳是______。答案(D) A.外接定時(shí)器B.外接串行口C.外接中斷D.外接晶振 (16)80C51單片機(jī)的VSS(20)引腳是______。答案(B) A.主電源+5VB.接地C.備用電源D.訪問片外存儲器 (17)80C51單片機(jī)的P0~P3端口中具有第二功能的端口是______。答案(D) A.P0B.P1C.P2D.P3 (18)80C51單片機(jī)的/EA引腳接+5V時(shí),程序計(jì)數(shù)器PC的有效地址范圍是(假設(shè)系統(tǒng)沒有外接ROM)______。答案(D) A.1000H~FFFFHB.0000H~FFFFHC.0001H~0FFFHD.0000H~0FFFH (19)當(dāng)程序狀態(tài)字寄存器PSW中的R0和R1分別為0和1時(shí),系統(tǒng)選用的工作寄存器組為______。答案(B) A.組0B.組1C.組2D.組3 (20)80C51單片機(jī)的內(nèi)部RAM中具有位地址的字節(jié)地址范圍是______。答案(B) A.0~1FHB.20H~2FHC.30H~5FHD.60H~7FH (21)若80C51單片機(jī)的機(jī)器周期為12微秒,則其晶振頻率為______MHz。答案(A) A.1B.2C.6D.12 (22)80C51單片機(jī)內(nèi)部程序存儲器容量為______。答案(C) A.16KB.8KC.4KD.2K (23)80C51單片機(jī)的復(fù)位功能引腳是______。答案(C) A.XTAL1B.XTAL2C.RSTD.ALE (24)80C51內(nèi)部反映程序運(yùn)行狀態(tài)或運(yùn)算結(jié)果特征的寄存器是______。答案(B) A.PCB.PSWC.AD.DPTR (25)PSW=18H時(shí),則當(dāng)前工作寄存器是______。答案(D) A.第0組B.第1組C.第2組D.第3組 第二章習(xí)題 2.2 問答思考題 (1)51單片機(jī)內(nèi)部結(jié)構(gòu)由哪些基本部件組成?各有什么功能? 提示 從圖2.1的內(nèi)部圖框中可得到各基本部件的名稱,其中CPU具有解釋指令、執(zhí)行操作、控制時(shí)序和處理數(shù)據(jù)等功能;ROM主要用于存放程序代碼及程序中用到的常數(shù);RAM主要用于存放中間運(yùn)算結(jié)果、數(shù)據(jù)暫存和標(biāo)志位等信息;定時(shí)/計(jì)數(shù)器可實(shí)現(xiàn)定時(shí)控制、脈沖計(jì)數(shù)和波特率發(fā)生器功能;可編程I/O口可以實(shí)現(xiàn)單片機(jī)與外部設(shè)備間的數(shù)據(jù)與信息傳輸功能;可編程串行口具有單片機(jī)與外部串行設(shè)備間的數(shù)據(jù)的收發(fā)功能;時(shí)鐘振蕩器具有產(chǎn)生單片機(jī)各系統(tǒng)所必需的時(shí)鐘信號的功能。 (2) 單片機(jī)的程序狀態(tài)字寄存器PSW中各位的定義分別是什么? 提示 CY(PSW7)進(jìn)位標(biāo)志,AC(PSW6)輔助進(jìn)位標(biāo)志,F(xiàn)0(PSW5)用戶標(biāo)志位,RS1、RS0(PSW4、PSW3)工作寄存器組指針,OV(PSW2)溢出標(biāo)志,F(xiàn)1(PSW1)用戶標(biāo)志位。 (3) 51單片機(jī)引腳按功能可分為哪幾類?各類中包含的引腳名稱是什么? 提示 電源及晶振引腳(4只)——VCC、VSS、XTAL1、XTAL2;控制引腳(4只)——/PSEN,ALE、/EA、RST;并行 I/O口引腳(32只)——P0.0~P0.7、P1.0~P1.7、P2.0~P2.7、P3.0~P3.7。 (4)51單片機(jī)在沒接外部存儲器時(shí),ALE引腳上輸出的脈沖頻率是多少? 提示 6分頻 (5)計(jì)算機(jī)存儲器地址空間有哪幾種結(jié)構(gòu)形式?51單片機(jī)屬于哪種結(jié)構(gòu)形式? 提示 普林斯頓結(jié)構(gòu)是一種將程序指令存儲器和數(shù)據(jù)存儲器合并在一起的存儲器結(jié)構(gòu),即ROM和RAM位于同一存儲空間的不同物理位置處。哈佛結(jié)構(gòu)是一種將程序指令存儲器和數(shù)據(jù)存儲器分開設(shè)置的存儲器結(jié)構(gòu),即ROM和RAM位于不同的存儲空間。51系列單片機(jī)屬于這種結(jié)構(gòu)。 (6)如何認(rèn)識80C51存儲空間在物理結(jié)構(gòu)上可劃分為4個(gè)空間,而在邏輯上又可劃分為3個(gè)空間? 提示 51系列單片機(jī)共有4個(gè)存儲空間,即片內(nèi)ROM、片外ROM、片內(nèi)RAM和片外RAM。由于片內(nèi)、片外程序存儲器是統(tǒng)一編址的,因此從邏輯地址來看只有3個(gè)存儲器空間,即ROM、片內(nèi)RAM和片外RAM。 (7)80C51片內(nèi)低128B RAM區(qū)按功能可分為哪幾個(gè)組成部分?各部分的主要特點(diǎn)是什么? 提示 可分為3個(gè)組成部分:地址00H~1FH的32個(gè)數(shù)據(jù)存儲單元可作為工作寄存器使用。這32個(gè)單元又分為4組,每組8個(gè)單元,按序命名為通用寄存器R0~R7;地址為20H~2FH的16字節(jié)單元,既可以像普通RAM單元按字節(jié)地址進(jìn)行存取,又可以按位進(jìn)行存取。這16字節(jié)共有128個(gè)二進(jìn)制位,位地址為00H~7FH;地址為30H~7FH的80字節(jié)單元為用戶RAM區(qū),這個(gè)區(qū)只能按字節(jié)存取。在此區(qū)內(nèi)用戶可以設(shè)置堆棧區(qū)和存儲中間數(shù)據(jù)。 (8)80C51片內(nèi)高128B RAM區(qū)與低128B RAM區(qū)相比有何特點(diǎn)? 提示 高128B RAM區(qū)中僅有21個(gè)字節(jié)單元(稱為特殊功能寄存器)可被用戶使用,其余為系統(tǒng)保留單元用戶不可用,而低128 RAM區(qū)的所有單元用戶都可使用。 (9)80C52片內(nèi)高128B RAM區(qū)與80C51片內(nèi)高128B RAM區(qū)相比有何特點(diǎn)? 提示 80C52有兩個(gè)并列的高128B RAM區(qū),地址都是80H~FFH,其中一個(gè)作為特殊功能寄存器專用,另一個(gè)則可作為普通RAM使用,但卻只能采用寄存器間接尋址方式訪問。 (10)什么是復(fù)位?單片機(jī)復(fù)位方式有哪幾種?復(fù)位條件是什么? 提示 單片機(jī)在開機(jī)和死機(jī)時(shí)需要復(fù)位,以便使各功能部件處于一個(gè)確定的初始狀態(tài)開始工作。復(fù)位可以由兩種方式產(chǎn)生,即上電復(fù)位方式和按鍵復(fù)位方式。復(fù)位的條件是,在RST引腳端出現(xiàn)滿足復(fù)位時(shí)間要求的高電平狀態(tài),該時(shí)間等于系統(tǒng)時(shí)鐘振蕩周期建立時(shí)間再加2個(gè)機(jī)器周期時(shí)間(一般不小于10ms)。 (11) 什么是時(shí)鐘周期和指令周期?當(dāng)振蕩頻率為12MHz時(shí),一個(gè)機(jī)器周期為多少微秒? 提示 晶振或外加振蕩源的振蕩周期稱為時(shí)鐘周期,執(zhí)行一條指令所需要的時(shí)間稱為指令周期。振蕩頻率為12MHz時(shí),一個(gè)機(jī)器周期為1微秒。 (12)簡述負(fù)邊沿D觸發(fā)器的輸入端、時(shí)鐘端和輸出端之間的時(shí)序關(guān)系,解釋D觸發(fā)器的導(dǎo)通、隔離、鎖存功能的實(shí)現(xiàn)原理。 提示 當(dāng)時(shí)鐘端為脈沖下降沿之前時(shí),輸入端和輸出端之間是斷開的,此時(shí)兩者間為隔離狀態(tài);當(dāng)時(shí)鐘端為脈沖下降沿時(shí),輸入端和輸出端之間是導(dǎo)通的,輸出端跟隨輸入端變化;當(dāng)時(shí)鐘端為脈沖下降沿之后時(shí),輸入端和輸出端之間又是斷開的,此時(shí)輸出端的狀態(tài)不會隨輸入端變化,即為鎖存狀態(tài)。 (13)如何理解單片機(jī)I/O端口與特殊功能寄存器P0~P3的關(guān)系?提示 I/O端口P0~P3對應(yīng)于并行I/O口的單元電路,特殊功能寄存器P0~P3則可視為并行I/O口中的4個(gè)8位的D觸發(fā)器。 (14)如何理解通用I/O口的準(zhǔn)雙向性?怎樣確保讀引腳所獲信息的正確性?提示 無條件輸出和有條件輸入的I/O口稱為準(zhǔn)雙向I/O口,讀引腳前先寫1到I/O口可避免引腳內(nèi)電位被鉗制到0 (15)80C51中哪個(gè)并行I/O口存在漏極開路問題?此時(shí)沒有外接上拉電阻會有何問題?提示: P0口工作在通用I/O口方式時(shí),上拉場效應(yīng)管V2將處于截止?fàn)顟B(tài),由此會產(chǎn)生漏極開路現(xiàn)象,此時(shí)若沒有外接上拉電阻會造成P0口引腳的電平狀態(tài)不確定。 (16)P0端口中的地址/數(shù)據(jù)復(fù)用功能是如何實(shí)現(xiàn)的?提示 當(dāng)希望利用P0口傳輸CPU地址和數(shù)據(jù)信息時(shí),需要先使與門A解鎖,同時(shí)使多路開關(guān)MUX與非門X接通,這樣內(nèi)部“地址/數(shù)據(jù)”端的電平便可傳輸?shù)揭_P0.n上。與經(jīng)由鎖存器輸出的通用I/O口方式不同,這種方式稱為地址/數(shù)據(jù)分時(shí)復(fù)用方式。不過要使傳輸?shù)絇0.n上的地址和數(shù)據(jù)信息分開還需要地址/數(shù)據(jù)鎖存接口電路的配合才行。 第三章習(xí)題 3.1 單項(xiàng)選擇題 (1) 指令中包含“@Ri”或“@DPTR”形式操作數(shù)的尋址方式稱為寄存器____。 答案(B) A.變址尋址B.間接尋址C.直接尋址D.立即尋址 (2) 能實(shí)現(xiàn)“先將操作數(shù)減1,若結(jié)果仍不為零則轉(zhuǎn)移到目標(biāo)地址”功能的匯編操作碼是______。 答案(A) A.DJNZB.CJNEC.LJMPD.MOVX (3) 已知P0 = #23H,執(zhí)行下列第______項(xiàng)指令后可使其第3位置1。答案(C) A.ADD?P0,#34HB.ANL?P0,#3BHC.ORL?P0, #3BHD.MOV?P0,#34H (4) 下列指令中,能訪問外部數(shù)據(jù)存儲器的正確指令為______。答案(D) A.MOV?A,@DPTRB.MOVX?A,RiC.MOVC?A,@A+DPTRD.MOVX?A,@Ri (5) 80C51匯編語言指令格式中,唯一不可缺少的部分是______。答案(B) A.標(biāo)號B.操作碼C.操作數(shù)D.注釋 (6) 下列完成80C51片內(nèi)RAM數(shù)據(jù)傳送的指令是______。答案(C) A.A.MOVX?A,@DPTRB.MOVC?A,@A+PCC.MOV?A,@RiD.JMP?@A+DPTR (7)80C51的立即尋址的指令中,立即數(shù)就是______。答案(B) A.放在寄存器R0中的內(nèi)容B.放在指令中的常數(shù)C.放在A中的內(nèi)容D.放在B中的內(nèi)容 (8) 指令JB 0E0H,LP 中的0E0H是指______。答案(C) A.累加器AB.累加器A的最高位C.累加器A的最低位D.一個(gè)字節(jié)地址 (9) 下列指令中條件轉(zhuǎn)移指令是指______。答案(C) A.AJMP?addr11B.SJMP?relC.JNZ?relD.LJMP?addr16 (10)80C51指令MOV R0,20H中的20H是指______。答案(B) A.立即數(shù)B.內(nèi)部RAM中的字節(jié)地址C.內(nèi)部RAM中的位地址D.內(nèi)部ROM中的字節(jié)地址 (11)在80C51指令中,下列指令_____是無條件轉(zhuǎn)移指令。答案(C) A.LCALL?addr16B.DJNZ?direct,relC.SJMP?relD.ACALL?addr11 (12)設(shè)A=0AFH,(20H)=81H,指令A(yù)DDCA,20H執(zhí)行后的結(jié)果是______。答案(B) A.A=81HB.A=30HC.A=0AFHD.A=20H (13)已知A=0DBH,R4=73H,CY=1,指令SUBBA,R4執(zhí)行后的結(jié)果是_____。答案(C) A.A=73HB.A=0DBHC.A=67HD.A=68H (14)下列指令判斷若累加器A的內(nèi)容不為0就轉(zhuǎn)LP的是______。答案(B) A.JB?A,LPB.JNZ?A,LPC.JZ?LPD.DJNZ?A,#0,LP (15)設(shè)累加器A中為小于等于7FH的無符號數(shù),B中數(shù)為2,下列指令中______的作用與其他幾條不同。答案(D) A.ADD?A,0E0HB.MUL?ABC.RL?AD.RLC?A (16)能將A的內(nèi)容向左循環(huán)一位,第7位進(jìn)第0位的指令是______。答案(A) A.RLC?AB.RRC?AC.RL?AD.RR?A (17)將內(nèi)部數(shù)據(jù)存儲器53H單元的內(nèi)容傳送到累加器A,其指令是______。答案(A) A.MOV?A,53HB.MOV?A,#53HC.MOVC?A,53HD.MOVX?A,#53H (18)LJMP跳轉(zhuǎn)空間最大可達(dá)______。答案(D) A.2KBB.256BC.128BD.64KB (19)在編程中適當(dāng)采用偽指令的目的是指示和引導(dǎo)______。答案(B) A.如何進(jìn)行手工匯編B.編譯程序如何匯編C.源程序如何進(jìn)行編輯D.程序員如何進(jìn)行編程 (20)欲將P1口的高4位保留不變,低4位取反,可用指令是______。答案(C) A.ANL?P1,#0F0HB.ORL??P1,#0FHC.XRL?P1,#0FHD.MOV?P1,#0FH (21)訪問片外數(shù)據(jù)存儲器的尋址方式是______。答案(C) A.立即尋址B.寄存器尋址C.寄存器間接尋址D.直接尋址 第三章習(xí)題 3.2問答思考題 (1)什么是匯編語言和匯編程序?匯編程序需要進(jìn)行什么預(yù)處理才能被單片機(jī)執(zhí)行?提示 采用約定的英文助記符代替機(jī)器碼進(jìn)行編程的計(jì)算機(jī)語言稱為匯編語言,由匯編語言規(guī)則編寫的程序稱為匯編程序。由于單片機(jī)不能直接執(zhí)行匯編程序,必須通過匯編系統(tǒng)軟件將其“翻譯”成機(jī)器碼并形成執(zhí)行文件才能運(yùn)行,這個(gè)“翻譯”過程稱為匯編程序的編譯。 (2)什么是指令?匯編語言指令一般格式中包含了哪些區(qū)段?各區(qū)段間的分隔符規(guī)則是什么?提示 所謂指令就是指揮計(jì)算機(jī)運(yùn)行的命令。一條匯編語言指令中最多包含4個(gè)區(qū)段,其中標(biāo)號區(qū)段是當(dāng)前指令行的符號地址,由英文字母開頭的1~6個(gè)字符組成,不區(qū)分大小寫,以英文冒號結(jié)尾;操作碼區(qū)段是指令的操作行為,由操作碼助記符表征,它們由2~5個(gè)英文字符組成,不區(qū)分大小寫;操作數(shù)區(qū)段是指令的操作對象,操作數(shù)可以是0~3個(gè),大于1個(gè)時(shí),操作數(shù)之間要用英文逗號隔開;注釋區(qū)段是對指令的解釋性說明,可以用任何文字描述,以英文分號開始,無須結(jié)束符號。 (3)匯編語言中,如何區(qū)分十六進(jìn)制地址、立即數(shù)和標(biāo)識符?提示 標(biāo)識符由英文字母開頭的1~6個(gè)字符組成,例如EAH,C6A等;16進(jìn)制地址由字符0~9和A~F表示,若最高位為A~F時(shí)應(yīng)加前綴“0”以區(qū)別于標(biāo)識符,例如0EAH,5AH等;立即數(shù)需加前綴“#”以區(qū)別于地址,例如#0EAH,#5AH等。 (4)51單片機(jī)指令系統(tǒng)共有多少條指令?按照基本功能可劃分為哪幾大類?提示 MCS-51單片機(jī)指令系統(tǒng)共有111條指令,按照基本功能可劃分為4大類,即數(shù)據(jù)傳送與交換類、算術(shù)運(yùn)算類、邏輯運(yùn)算及移位類和控制轉(zhuǎn)移類(或?qū)⒎稚⒂谏鲜?類之中的位操作類指令匯總作為第5大類指令)。 (5)51單片機(jī)的PSW程序狀態(tài)字中沒有判零標(biāo)志,怎樣判斷某片內(nèi)RAM單元的內(nèi)容是否為零?提示 利用條件轉(zhuǎn)移指令中JZ對累加器A的判零間接實(shí)現(xiàn) (6)子程序調(diào)用指令里,ACALL和LCALL的差異在哪里?選用時(shí)應(yīng)考慮哪些因素?提示 ACALL指令的操作數(shù)是addr11,子程序可放在距當(dāng)前指令2KB的范圍內(nèi),而LCALL指令的操作數(shù)是addr16,子程序可放在距當(dāng)前指令64KB的范圍內(nèi)。選用前者(雙字節(jié)指令)有利于縮短代碼長度,選用后者(三字節(jié)指令)可提高程序布局的靈活性。 (7)根據(jù)第3章實(shí)例9,簡述實(shí)現(xiàn)大于、等于和小于三種條件轉(zhuǎn)移的匯編語言編程思路。 提示 先利用CJNE判斷雙方是否相等,再利用JC判斷C標(biāo)志的狀態(tài)。 (8)根據(jù)第3章實(shí)例12,簡述利用累加器A將并行數(shù)據(jù)轉(zhuǎn)為串行數(shù)據(jù)的匯編語言編程思路。 提示 先利用RLC帶進(jìn)位循環(huán)指令將字節(jié)數(shù)據(jù)轉(zhuǎn)為C中的位數(shù)據(jù),再利用MOV位傳送指令將C傳送到I/O端口輸出。 (9)根據(jù)第3章實(shí)例13,簡述程序中所用偽指令起到的作用。 提示 指定程序編譯后代碼的ROM存放首地址,用自定義的標(biāo)識符參與編程可實(shí)現(xiàn)一處修改全部程序有效的要求。 (10)51單片機(jī)有哪幾種尋址方式?分別適用于什么地址空間? 提示 51單片機(jī)共有7種尋址方法,其中直接尋址范圍是片內(nèi)RAM低128字節(jié)單元和除A、B、C、DPTR外的其他SFR;寄存器尋址范圍是通用寄存器Rn和SFR中的A、B(僅限于乘除法)、CY和DPTR;寄存器間接尋址范圍是@R0、@R1和@DPTR;立即尋址范圍是#data或#data16的立即數(shù);變址尋址范圍是@A+DPTR或@A+ PC;位尋址范圍是片內(nèi)RAM(含SFR)中的位地址單元;相對尋址范圍是以當(dāng)前地址與偏移量rel合成后的地址單元。 (11) 匯總匯編指令分類中各大類指令的操作碼助記符。 提示 各類指令操作碼助記符如下: 數(shù)據(jù)傳送與交換類指令(8種),即MOV,MOVX,MOVC,XCH,XCHD,SWAP,PUSH和POP; 算術(shù)運(yùn)算類指令(8種),即ADD,ADDC,SUBB,INC,DEC,MUL,DIV和DA; 邏輯運(yùn)算及移位類指令(10種),即ANL,ORL,XRL,SETB,CLR,CPL,RL,RR,RLC和RRC; 控制轉(zhuǎn)移類指令(18種),即AJMP,SJMP,LJMP,JMP,ACALL,LCALL,RET,RETI,JZ,JNZ,CJNE,DJNZ,JC,JNC,JB,JNB,JBC和NOP。 (12)偽指令與匯編指令有何區(qū)別?寫出至少五種常用的偽指令名稱。 提示 偽指令又稱匯編系統(tǒng)控制譯碼指令或指示性指令,僅僅用于指示匯編系統(tǒng)軟件要完成的操作,故一般不產(chǎn)生機(jī)器代碼,匯編指令又稱為硬指令,編譯后將產(chǎn)生機(jī)器碼。 (13)簡述匯編程序的主要設(shè)計(jì)步驟。提示 1分析問題,確定算法或解題思路;2通過畫流程圖表示程序的執(zhí)行過程或程序的結(jié)構(gòu);3分別編寫各個(gè)模塊程序,然后匯總成完整程序;4進(jìn)行語法錯(cuò)誤和邏輯錯(cuò)誤的調(diào)試和修改,直至問題完全排除。 (14)簡述利用Proteus進(jìn)行匯編程序的仿真開發(fā)過程。提示 電路原理圖設(shè)計(jì)→匯編程序設(shè)計(jì)→匯編程序編譯→仿真運(yùn)行調(diào)試 第四章習(xí)題 4.1單項(xiàng)選擇題 (1)C51數(shù)據(jù)類型中關(guān)鍵詞“sfr”用于定義____。答案(D) A.指針變量B.字符型變量C.無符號變量D.特殊功能寄存器變量 (2)已知共陰極LED數(shù)碼顯示管中,a筆段對應(yīng)于字模的最低位。若需顯示字符H,則它的字模應(yīng)為______。答案(A) A.0x76B.0x7fC.0x80D.0xf6 (3)為了實(shí)現(xiàn)keil與Proteus的聯(lián)合仿真運(yùn)行,需要______。答案(B) A.將Keil中形成的hex文件加載到Proteus中,然后在Proteus環(huán)境下進(jìn)行運(yùn)行B.在Keil中形成hex文件,Proteus中形成dsn文件,然后用Keil控制Proteus運(yùn)行C.在Keil中形成hex文件,Proteus中形成dsn文件,然后用Proteus控制Keil運(yùn)行D.將Proteus中形成的hex文件和dsn文件同時(shí)打開,然后在Keil環(huán)境下進(jìn)行運(yùn)行 (4)在下圖的Keil運(yùn)行和調(diào)試工具條中,左數(shù)第二個(gè)圖標(biāo)的功能是______。答案(D) A.存盤B.編譯C.下載D.運(yùn)行 (5)在下圖的ProteusISIS繪圖工具條中,包含有電源端子“POWER”的按鈕是左數(shù)的______。答案(D) A.第2個(gè)B.第6個(gè)C.第7個(gè)D.第8個(gè) (6)Keil開發(fā)C51程序的主要步驟是:建立工程、______、形成hex文件、運(yùn)行調(diào)試。答案(A) A.輸入源程序B.保存為asm文件C.指定工作目錄D.下載程序 (7)將aa定義為片外RAM區(qū)的無符號字符型變量的正確寫法是______。答案(D) A.unsignedchardataaa; B.signedcharxdataaa; C.externsignedchardataaa; D.unsignedcharxdataaa; (8)以下選項(xiàng)中合法的C51變量名是______。答案(C) A.xdataB.sbitC.startD.interrupt (9)51單片機(jī)能直接運(yùn)行的文件格式是______。答案(C) A.*.asmB.*.cC.*.hexD.*.txt (10)LED數(shù)碼管用作動態(tài)顯示時(shí)需要______。答案(B) A.將各位數(shù)碼管的位碼線并聯(lián)起來B.將各位數(shù)碼管的位碼線串聯(lián)起來C.將各位數(shù)碼管的相同段碼線并聯(lián)起來D.將各位數(shù)碼管的相同段碼 (11)若某LED數(shù)碼管顯示字符“2”的字模是0x5b,則可以判斷該系統(tǒng)用的是_____。答案(A) A.共陰極數(shù)碼管B.共陽極數(shù)碼管C.動態(tài)顯示原理D.靜態(tài)顯示原理 (12)C51數(shù)據(jù)類型中關(guān)鍵詞“bit”用于定義______。答案(A) A.位變量B.字節(jié)變量C.無符號變量D.特殊功能寄存器變量 (13) 已知P0口第0位的位地址是0x90,將其定義為位變量P1_0的正確命令是_____。答案(B) A.bit P1_0 = 0x90;B.sbit P1_0 = 0x90;C.sfr P1_0 = 0x90;D.sfr16 P1_0 = 0x90; (14) 將bmp定義為片內(nèi)RAM區(qū)的有符號字符型變量的正確寫法是______。答案(A) A.char data bmp;B.signed char xdata bmp;C.extern signed char data bmp;D.unsigned char xdata bmp; (15)設(shè)編譯模式為SMALL,將csk定義為片內(nèi)RAM區(qū)的無符號字符型變量的正確寫法是______。答案(B) A.A. char data csk;B.unsigned char csk;C.extern signed char data csk;D.unsigned char xdata csk; (16)下列關(guān)于LED數(shù)碼管動態(tài)顯示的描述中______是正確的。答案(C) A.一個(gè)并行口只接一個(gè)數(shù)碼管,顯示數(shù)據(jù)送入并行口后就不再需要CPU干預(yù)B.動態(tài)顯示只能使用共陰極型數(shù)碼管,不能使用共陽極型數(shù)碼管C.一個(gè)并行口可并列接n個(gè)數(shù)碼管,顯示數(shù)據(jù)送入并行口后還需要CPU控制相應(yīng)數(shù)碼管導(dǎo)通D.動態(tài)顯示具有占用CPU機(jī)時(shí)少,發(fā)光亮度穩(wěn)定的特點(diǎn) (17)下列關(guān)于行列式鍵盤的描述中______是正確的。答案(B) A.每只按鍵獨(dú)立接在一根I/O口線上,根據(jù)口線電平判斷按鍵的閉合狀態(tài)B.按鍵設(shè)置在跨接行線和列線的交叉點(diǎn)上,根據(jù)行線電平有無反轉(zhuǎn)判斷按鍵閉合狀態(tài)C.行列式鍵盤的特點(diǎn)是無需CPU的控制,可以自行適應(yīng)各種單片機(jī)的輸入接口D.行列式鍵盤的特點(diǎn)是占用I/O口線較多,適合按鍵數(shù)量較少時(shí)的應(yīng)用場合 (18)下列關(guān)于按鍵消抖的描述中______是不正確的。答案(D) A.機(jī)械式按鍵在按下和釋放瞬間會因彈簧開關(guān)變形而產(chǎn)生電壓波動B.按鍵抖動會造成檢測時(shí)按鍵狀態(tài)不易確定的問題C.單片機(jī)編程時(shí)常用軟件延時(shí)10ms的辦法消除抖動影響D.按鍵抖動問題對晶振頻率較高的單片機(jī)基本沒有影響 (19)下列關(guān)于C51與匯編語言混合編程的描述中______是不正確的。答案(B) A.C51可生成高效簡潔的目標(biāo)代碼,簡單應(yīng)用場合下無需采用混合編程B.在C51中調(diào)用匯編程序的做法只適用于兩種程序間無參數(shù)傳遞的應(yīng)用場合C.在C51中嵌入?yún)R編代碼時(shí)需要對Keil編譯器進(jìn)行生成SRC文件的設(shè)置D.混合編程對涉及I/O口地址處理和中斷向量地址安排等應(yīng)用具有重要價(jià)值 (20)在xdata存儲區(qū)里定義一個(gè)指向char類型變量的指針變量px的下列語句中,______是正確的(默認(rèn)為SMALL編譯模式)。答案(A) A.char * xdata px;B.char xdata * px;C.char xdata * data px;D.char * px xdata; 第四章習(xí)題 4.2問答思考題 (1)C51與匯編語言相比有哪些優(yōu)勢?怎樣實(shí)現(xiàn)兩者的互補(bǔ)?提示 C51語言具有結(jié)構(gòu)化語言特點(diǎn)和機(jī)器級控制能力,代碼緊湊,效率可與匯編語言媲美。由于接近真實(shí)語言,程序的可讀性強(qiáng),易于調(diào)試維護(hù),編程工作量小,產(chǎn)品開發(fā)周期短。C51語言與匯編指令無關(guān),易于掌握。但對于有較高程序代碼執(zhí)行速度要求的場合,如I/O接口地址處理、中斷向量地址安排,匯編語言仍有一定優(yōu)勢。可以采用在C51中調(diào)用匯編程序和在C51中嵌入?yún)R編代碼的方法實(shí)現(xiàn)兩種語言優(yōu)勢互補(bǔ)。 (2)在C51中為何要盡量采用無符號的字節(jié)變量或位變量?提示 這兩種變量占用內(nèi)存少,代碼長度短,執(zhí)行效率高。有符號的字節(jié)變量雖然也只占用1字節(jié),但CPU需要進(jìn)行額外的操作來測試代碼的符號位,這會降低代碼效率。使用浮點(diǎn)型的變量時(shí),編譯系統(tǒng)還將調(diào)用相應(yīng)的庫函數(shù)來保證運(yùn)算精度,這會明顯增加運(yùn)算時(shí)間和代碼長度。 (3)為了加快程序的運(yùn)行速度,C51中頻繁操作的變量應(yīng)定義在哪個(gè)存儲區(qū)?提示 由于片內(nèi)存儲器的數(shù)據(jù)傳送多為單周期指令,而片外存儲器多為雙周期指令,CPU處理前者數(shù)據(jù)的速度要快于后者,因此頻繁操作的變量應(yīng)盡量定義在片內(nèi)存儲器中,選擇如data,bdata或idata等存儲類型的變量。 (4)C51的變量定義包含哪些要素?其中哪些是不能省略的?提示 變量定義中包含著存儲種類、數(shù)據(jù)類型、存儲類型和變量名4項(xiàng)要素,其中數(shù)據(jù)類型和變量名在變量定義時(shí)是不能省略的,存儲種類和存儲類型在變量定義時(shí)可以采用相應(yīng)缺省值。 (5)C51數(shù)據(jù)類型中的關(guān)鍵詞sbit和bit都可用于位變量的聲明,但二者有何不同之處?提示 bit型變量的位地址是由編譯器為其隨機(jī)分配的(定義時(shí)不能由用戶指定),位地址是在片內(nèi)RAM的可位尋址區(qū)(bdata區(qū))中;而sbit型變量的位地址則是由用戶指定的,位地址是在可位尋址的SFR單元內(nèi)(但利用bdata限定變量存儲類型后,可將位地址范圍擴(kuò)大到bdata區(qū))。 (6)C51中調(diào)用匯編語言程序需要解決的3個(gè)基本問題是什么?具體規(guī)則有哪些? 提示 ①程序的尋址問題——通過在匯編文件中定義與C51同名的“函數(shù)”來實(shí)現(xiàn)的;②參數(shù)傳遞問題——通過使用指定的寄存器來實(shí)現(xiàn)的;③返回值傳遞問題——通過使用指定的寄存器來實(shí)現(xiàn)的。 (7)C51中嵌入?yún)R編代碼的具體做法是什么?有什么需要關(guān)注的地方? 提示 ①將嵌有匯編代碼的C51源文件加入當(dāng)前工程文件中;②根據(jù)采用的編譯模式,將相應(yīng)的庫文件加入當(dāng)前工程文件中。此后便可采用一般編譯方法進(jìn)行程序編譯。需要注意的是,匯編代碼必須放在兩條預(yù)處理命令#pragma asm和#pragma endasm之間,預(yù)處理命令必須用小寫字母,匯編代碼則大小寫字母不限。 (8)集成開發(fā)環(huán)境Vision3的軟件界面由哪些組成部分?簡述創(chuàng)建一個(gè)C51程序的基本方法。 提示 軟件界面包括4大組成部分:菜單工具欄(標(biāo)準(zhǔn)的Windows風(fēng)格,共有11個(gè)下拉菜單)、工程管理窗口(用于管理工程文件目錄,由5個(gè)子窗口組成)、文件窗口(用于顯示打開的程序文件,通過文件標(biāo)簽進(jìn)行切換)和輸出窗口(用于輸出編譯過程中的信息,由3個(gè)子窗口組成)。 創(chuàng)建C51程序基本方法:1、打開工程文件窗口,保存為*.uv2文件;2、選擇一款51單片機(jī),如80C51BH;3、打開空白的文本框,輸入C51源程序,保存為*.c文件;4、將*.c文件添加到工程文件中;5、設(shè)置或核查工程配置選項(xiàng);6、編譯當(dāng)前工程文件,排除語法錯(cuò)誤后保存為*.hex文件;7、仿真調(diào)試hex文件,排除邏輯錯(cuò)誤后結(jié)束創(chuàng)建工作。 (9)簡述利用Vision3進(jìn)行C51程序的調(diào)試方法。 提示 利用Vision3的Debug菜單和調(diào)試工具條可對C51程序進(jìn)行調(diào)試。常用的方法有:復(fù)位、全速運(yùn)行、暫停、單步、過程單步、執(zhí)行完當(dāng)前函數(shù)和運(yùn)行到光標(biāo)行。其中最基本的是單步運(yùn)行與全速運(yùn)行。全速運(yùn)行是指一行程序執(zhí)行完以后自動執(zhí)行下一行程序,直至程序結(jié)束。由于程序運(yùn)行的速度很快,可以看出程序的總體運(yùn)行效果。單步運(yùn)行是每次執(zhí)行一行程序,執(zhí)行完該行程序以后即停止,等待單步命令后再執(zhí)行下一行程序,此時(shí)可以觀察該行程序執(zhí)行完以后的當(dāng)前結(jié)果,借此可以找到程序中的問題所在。 調(diào)試過程中還可通過信息窗口觀察運(yùn)行信息。常用的信息窗口有:命令窗口、反匯編窗口、符號窗口、寄存器窗口、堆棧窗口、觀察窗口、存儲器窗口、串行窗口、分析窗口等。此外,還可利用系統(tǒng)接口對話框直接觀察定時(shí)器、中斷、并行端口、串行端口的工作狀態(tài)。 (10)Proteus和Keil C的聯(lián)合使用有什么意義?使用這一組合的單片機(jī)仿真開發(fā)過程是什么? 提示 聯(lián)合仿真的意義在于:單片機(jī)的軟硬件系統(tǒng)可作為一個(gè)整體運(yùn)行,利用Vision3的程序調(diào)試功能可對ISIS中的虛擬電路進(jìn)行仿真測試。如果發(fā)現(xiàn)問題,可立即在ISIS中進(jìn)行電路修改或在Vision3中進(jìn)行程序優(yōu)化,然后再重新進(jìn)行調(diào)試運(yùn)行,直至達(dá)到所需要求。由于軟硬件都能進(jìn)行仿真檢驗(yàn),從而可加速單片機(jī)產(chǎn)品的開發(fā)過程。 聯(lián)合仿真法的開發(fā)過程是:1、啟動ISIS,繪制電路原理圖,保存為*.dsn文件;2、啟動μVision3,創(chuàng)建C51源程序,保存為*.c文件;3、進(jìn)行源文件編譯,排除語法錯(cuò)誤,保存為*.hex文件;4、并列展開ISIS和μVision3窗口,在μVision3中啟動調(diào)試運(yùn)行,排除邏輯錯(cuò)誤后結(jié)束仿真過程。 (11) 獨(dú)立式按鍵的組成原理與編程思路是什么? 提示 組成原理是,按鍵的一端接地,另一端與一個(gè)I/O口線連接。若按鍵接在P0口需外接上拉電阻,而接在P1~P3口無需要上拉電阻。編程思路是,當(dāng)按鍵或開關(guān)閉合時(shí),對應(yīng)口線的電平就會發(fā)生反轉(zhuǎn),CPU通過讀端口電平即可識別是哪個(gè)按鍵或開關(guān)發(fā)生了閉合。 (12)七段LED數(shù)碼管的工作原理是什么?簡述數(shù)碼管靜態(tài)顯示與動態(tài)顯示的特點(diǎn)及實(shí)現(xiàn)方法。 提示 工作原理是,七段LED數(shù)碼管由7個(gè)條形LED組成字符筆段,1個(gè)圓形LED作為小數(shù)點(diǎn)。其中所有LED陽極連接在一起作為公共端引腳,所有LED陰極單獨(dú)接出作為段位引腳(共陽極數(shù)碼管)。反之,共陰極數(shù)碼管則相反。利用發(fā)光二極管正向連接時(shí)點(diǎn)亮,反向連接時(shí)熄滅的特性,改變筆段的組合電平就能形成不同的字形。 靜態(tài)顯示接口采用一個(gè)并行I/O口接一個(gè)七段數(shù)碼管的段位引腳,公共端接地或Vcc。這種接法的優(yōu)點(diǎn)是電路簡單,數(shù)碼管顯示亮度穩(wěn)定。但該方法占用I/O口資源較多。動態(tài)顯示接口是將n個(gè)七段數(shù)碼管的相同段碼引腳并聯(lián)起來接在一位I/O口線上,每個(gè)數(shù)碼管的位碼引腳則分別由一位I/O口線控制。動態(tài)顯示接口的特點(diǎn)是占用I/O口資源較少,但占用CPU機(jī)時(shí)較多。靜態(tài)顯示采用CPU單獨(dú)控制顯示的做法,即將被顯示字符的段碼值送入相應(yīng)I/O口的鎖存器中就能使數(shù)碼管恒定顯示,每位顯示字符的段碼值只需CPU輸出一次即可。動態(tài)顯示采用CUP分時(shí)控制顯示的做法,即CPU需要輪流輸出待顯示字符串中某位字符的段碼和位碼,每一時(shí)刻只有一只數(shù)碼管為顯示狀態(tài)其他數(shù)碼管都為黑屏。當(dāng)段碼值和位碼值的循環(huán)刷新速度很快時(shí),由于視覺暫留特性,人眼不會感到顯示值在閃爍,而是看到穩(wěn)定顯示的字符串。 (13)行列式鍵盤的組成原理與編程思路是什么?提示 行列式鍵盤組成原理是:將I/O口分為行線和列線,按鍵設(shè)置在跨接行線和列線的交點(diǎn)上,列線通過上拉電阻接正電源。采用軟件掃描查詢法的編程原理是,根據(jù)按鍵壓下前后,所在行線的端口電平是否出現(xiàn)翻轉(zhuǎn),判斷有無按鍵閉合動作。 (14)獨(dú)立式鍵盤與行列式鍵盤的特點(diǎn)和不足是什么?提示 獨(dú)立式鍵盤的特點(diǎn)是電路簡單,軟件處理工作量小,但占用的I/O口線較多。行列式鍵盤的特點(diǎn)是占用I/O口線較少但軟件處理工作量較大。 第五章習(xí)題 5.1單項(xiàng)選擇題 (1)外部中斷0允許中斷的C51語句為____。答案(D) A.RI=1;B.TR0=1;C.IT0=1;D.EX0=1; (2)按照中斷源自然優(yōu)先級順序,優(yōu)先級別最低的是______。答案(B) A.外部中斷INT1B.串口發(fā)送C.定時(shí)器T1D.外部中斷INT0 (3)當(dāng)CPU響應(yīng)定時(shí)器T1中斷請求時(shí),程序計(jì)數(shù)器PC里自動裝入的地址是______。答案(D) A.0003HB.000BHC.0013HD.001BH (4)當(dāng)CPU響應(yīng)定時(shí)器/INT0中斷請求時(shí),程序計(jì)數(shù)器PC里自動裝入的地址是______。答案(A) A.0003HB.000BHC.0013HD.001BH (5)當(dāng)CPU響應(yīng)定時(shí)器/INT1中斷請求時(shí),程序計(jì)數(shù)器PC里自動裝入的地址是______。答案(C) A.0003HB.000BHC.0013HD.001BH (6)在80C51單片機(jī)中斷自然優(yōu)先級里,級別倒數(shù)第二的中斷源是______。答案(C) A.外部中斷1B.定時(shí)器T0C.定時(shí)器T1D.外部中斷0 (7)在80C51單片機(jī)中斷自然優(yōu)先級里,級別正數(shù)第二的中斷源是______。答案(B) A.外部中斷1B.定時(shí)器T0C.定時(shí)器T1D.串口TX/RX (8)為使P3.2引腳出現(xiàn)的外部中斷請求信號能得到CPU響應(yīng),必須滿足的條件是______。答案(C) A.ET0=1B.EX0=1C.EA=EX0=1D.EA=ET0=1 (9)為使定時(shí)器T0的中斷請求信號能得到CPU的中斷響應(yīng),必須滿足的條件是______。答案(D) A.ET0=1B.EX0=1C.EA=EX0=1D.EA=ET0=1 (10)用定時(shí)器T1工作方式2計(jì)數(shù),要求每計(jì)滿100次向CPU發(fā)出中斷請求,TH1、TL1的初始值應(yīng)為______。答案(A) A.0x9cB.0x20C.0x64D.0xa0 (11)80C51單片機(jī)外部中斷1和外部中斷0的觸發(fā)方式選擇位是_____。答案(C) A.TR1和TR0B.IE1和IE0C.IT1和IT0D.TF1和TF0 (12)在中斷響應(yīng)不受阻的情況下,CPU對外部中斷請求做出響應(yīng)所需的最短時(shí)間為______機(jī)器周期。答案(C) A.1個(gè)B.2個(gè)C.3個(gè)D.8個(gè) (13)80C51單片機(jī)定時(shí)器T0的溢出標(biāo)志TF0,當(dāng)計(jì)數(shù)滿在CPU響應(yīng)中斷后_____。答案(A) A.由硬件清零B.由軟件清零C.軟硬件清零均可D.隨機(jī)狀態(tài) (14)CPU響應(yīng)中斷后,由硬件自動執(zhí)行如下操作的正確順序是______。答案(D) ①保護(hù)斷點(diǎn),即把程序計(jì)數(shù)器PC的內(nèi)容壓入堆棧保存②調(diào)用中斷函數(shù)并開始運(yùn)行③中斷優(yōu)先級查詢,對后來的同級或低級中斷請求不予響應(yīng)④返回?cái)帱c(diǎn)繼續(xù)運(yùn)行⑤清除可清除的中斷請求標(biāo)志位A.①③②⑤④B.③②⑤④①C.③①②⑤④D.③①⑤②④ (15)若80C51同一優(yōu)先級的5個(gè)中斷源同時(shí)發(fā)出中斷請求,則CPU響應(yīng)中斷時(shí)程序計(jì)數(shù)器PC里會自動裝入______地址。答案(B) A.000BHB.0003HC.0013HD.001BH (16)80C51單片機(jī)的中斷服務(wù)程序入口地址是指______。答案(C) A.中斷服務(wù)程序的首句地址B.中斷服務(wù)程序的返回地址C.中斷向量地址D.主程序調(diào)用時(shí)的斷點(diǎn)地址 (17)下列關(guān)于C51中斷函數(shù)定義格式的描述中______是不正確的。答案(D) A.n是與中斷源對應(yīng)的中斷號,取值為0~4B.m是工作寄存器組的組號,缺省時(shí)由PSW的RS0和RS1確定C.interrupt是C51的關(guān)鍵詞,不能作為變量名D.using也是C51的關(guān)鍵詞,不能省略 (18)下列關(guān)于INT0的描述中______是正確的。答案(D) A.中斷觸發(fā)信號由單片機(jī)的P3.0引腳輸入B.中斷觸發(fā)方式選擇位ET0可以實(shí)現(xiàn)電平觸發(fā)方式或脈沖觸發(fā)方式的選擇C.在電平觸發(fā)時(shí),高電平可引發(fā)IE0自動置位,CPU響應(yīng)中斷后IE0可自動清零D.在脈沖觸發(fā)時(shí),下降沿引發(fā)IE0自動置位,CPU響應(yīng)中斷后IE0可自動清零/li> (19)下列關(guān)于TX/RX的描述中______是不正確的。答案(D) A.51單片機(jī)的內(nèi)部發(fā)送控制器和接收控制器都可對串行數(shù)據(jù)進(jìn)行收發(fā)控制B.若待接收數(shù)據(jù)被送入“接收SUBF”單元后,接收控制器可使RI位硬件置1C.若“發(fā)送SUBF”單元中的數(shù)據(jù)被發(fā)送出去后,發(fā)送控制器可使TI位硬件置1D.- 1.請仔細(xì)閱讀文檔,確保文檔完整性,對于不預(yù)覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
9.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 單片機(jī) 原理 應(yīng)用
鏈接地址:http://ioszen.com/p-6606418.html