




已閱讀5頁(yè),還剩73頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
C51單片機(jī)習(xí)題及答案第一章11選擇1計(jì)算機(jī)中最常用的字符信息編碼是(A)AASCIIBBCD碼C余3碼D循環(huán)碼2要MCS51系統(tǒng)中,若晶振頻率屢8MHZ,一個(gè)機(jī)器周期等于ASA15B3C1D053MCS51的時(shí)鐘最高頻率是AA12MHZB6MHZC8MHZD10MHZ4以下不是構(gòu)成的控制器部件(D)A程序計(jì)數(shù)器、B指令寄存器、C指令譯碼器、D存儲(chǔ)器5以下不是構(gòu)成單片機(jī)的部件(D)A微處理器(CPU)、B存儲(chǔ)器C接口適配器(IO接口電路)D打印機(jī)6下列不是單片機(jī)總線是(D)A地址總線B控制總線C數(shù)據(jù)總線D輸出總線749D的二進(jìn)制補(bǔ)碼為BA11101111B11101101C0001000D111011008十進(jìn)制29的二進(jìn)制表示為原碼(C)A11100010B10101111C00011101D000011119十進(jìn)制0625轉(zhuǎn)換成二進(jìn)制數(shù)是(A)A0101B0111C0110D010010選出不是計(jì)算機(jī)中常作的碼制是(D)A原碼B反碼C補(bǔ)碼DASCII12填空1計(jì)算機(jī)中常作的碼制有原碼、反碼和補(bǔ)碼2十進(jìn)制29的二進(jìn)制表示為000111013十進(jìn)制數(shù)29的8位補(bǔ)碼表示為111000114單片微型機(jī)CPU、存儲(chǔ)器和IO接口三部分組成5若不使用MCS51片內(nèi)存器引腳EA必須接地6輸入輸出設(shè)備是計(jì)算機(jī)與外部世界交換信息的載體7十進(jìn)制數(shù)47用8位二進(jìn)制補(bǔ)碼表示為11010001849D的二進(jìn)制補(bǔ)碼為111011019計(jì)算機(jī)中最常用的字符信息編碼是ASCII10計(jì)算機(jī)中的數(shù)稱為機(jī)器數(shù),它的實(shí)際值叫真值。13判斷1我們所說(shuō)的計(jì)算機(jī)實(shí)質(zhì)上是計(jì)算機(jī)的硬件系統(tǒng)與軟件系統(tǒng)的總稱。()2MCS51上電復(fù)位時(shí),SBUF00H。()。SBUF不定。3使用可編程接口必須處始化。()。48155的復(fù)位引腳可與89C51的復(fù)位引腳直接相連。()5MCS51是微處理器。()不是。6MCS51系統(tǒng)可以沒(méi)有復(fù)位電路。()不可以。復(fù)位是單片機(jī)的初始化操作。7要MCS51系統(tǒng)中,一個(gè)機(jī)器周期等于15S。()若晶振頻率屢8MHZ,才可能為15S8計(jì)算機(jī)中常作的碼制有原碼、反碼和補(bǔ)碼()9若不使用MCS51片內(nèi)存器引腳EA必須接地()10十進(jìn)制數(shù)29的8位補(bǔ)碼表示為11100010()14簡(jiǎn)答1何謂單片機(jī)單片機(jī)與一般微型計(jì)算機(jī)相比,具有哪些特點(diǎn)答單片機(jī)是在一塊集成電路上把CPU、存儲(chǔ)器、定時(shí)器/計(jì)數(shù)器及多種形式的I/O接口集成在一起而構(gòu)成的微型計(jì)算機(jī)。它與通用微型計(jì)算機(jī)相比,具有如下特點(diǎn)(1)單片機(jī)的程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器是分工的,前者為ROM,后者為RAM;(2)采用面向控制的指令系統(tǒng),控制功能強(qiáng);(3)多樣化的I/O接口,多功能的I/O引腳;(4)產(chǎn)品系列齊全,功能擴(kuò)展性強(qiáng);(5)功能是通用的,像一般微處理機(jī)那樣可廣泛地應(yīng)用在各個(gè)方面。2單片機(jī)主要應(yīng)用在哪些領(lǐng)域答單片機(jī)的應(yīng)用范圍很廣泛,諸如智能化家用電器、儀器儀表、工業(yè)控制、計(jì)算機(jī)外部設(shè)備、智能機(jī)器人、電信及導(dǎo)航等方面。3在各種系列的單片機(jī)中,片內(nèi)ROM的配置有幾種形式用戶應(yīng)根據(jù)什么原則來(lái)選用答各種類型的單片機(jī)片內(nèi)程序存儲(chǔ)器的配置形式主要有以下幾種形式(1)(MSAK)ROM型單片機(jī)內(nèi)部具有工廠編程的ROM,ROM中的程序只能由單片機(jī)制造廠家用工藝固化,用戶不能修改ROM中的程序。例如MCS51系列的8051。ROM單片機(jī)適合于大批量生產(chǎn)的產(chǎn)品。用戶可委托芯片生產(chǎn)廠家采用方法將程序制作在芯片的ROM。(2)EPROM型單片機(jī)內(nèi)部具有紫外線可擦除電可編程的只讀存儲(chǔ)器,用戶可以自行將程序?qū)懭氲叫酒瑑?nèi)部的EPROM中,也可以將EPROM中的信息全部擦除。擦去信息的芯片還可以再次寫(xiě)入新的程序,允許反復(fù)改寫(xiě)。例如MCS51系列的8751。EPROM型單片機(jī)使用比較方便,但價(jià)格較高,適合于研制產(chǎn)品或結(jié)構(gòu)要求簡(jiǎn)單的小批量產(chǎn)品。(3)無(wú)ROM型單片機(jī)內(nèi)部沒(méi)有程序存儲(chǔ)器,它必須連接程序存儲(chǔ)器才能組成完整的應(yīng)用系統(tǒng)。例如MCS51系列的8031。無(wú)ROM型單片機(jī)價(jià)格低廉,用戶可根據(jù)程序的大小來(lái)選擇外接程序存儲(chǔ)器的容量。這種單片機(jī)擴(kuò)展靈活,但系統(tǒng)結(jié)構(gòu)較復(fù)雜。(4)E2ROM型單片機(jī)內(nèi)部具有電可擦除叫可編程的程序存儲(chǔ)器,使用更為方便。例如MCS51的派生型89C51單片機(jī)。(5)OTPONETIMEPROGRAMMABLEROM單片機(jī)內(nèi)部具有一次可編程的程序存儲(chǔ)器,用戶可以在編程器上將程序?qū)懭肫瑑?nèi)程序存儲(chǔ)器中,程序?qū)懭牒蟛荒茉俑膶?xiě)。例如NEC公司的PD75P308GF3B9。這種芯片的價(jià)格也較低。4控制器的組成和作用答控制器由程序計(jì)數(shù)器、指令寄存器、指令譯碼器、時(shí)序發(fā)生器和操作控制器等組成。用來(lái)協(xié)調(diào)指揮計(jì)算機(jī)系統(tǒng)的操作。5微型計(jì)算機(jī)組成答微型計(jì)算機(jī)組成由微處理器(CPU)、存儲(chǔ)器、接口適配器(IO接口電路及輸入/輸出設(shè)備組成。通過(guò)系統(tǒng)總線將它們連接起來(lái),以完成某些特定的運(yùn)算與控制。6什么叫尋址方式答尋址方式尋址方式就是尋找指令中操作數(shù)或操作數(shù)所在地址的方式。也就是如何找到存放操作數(shù)的地址,把操作數(shù)提取出來(lái)的方法。7什么叫堆棧答堆棧是在片內(nèi)RAM中專門開(kāi)辟出來(lái)的一個(gè)區(qū)域,數(shù)據(jù)的存取是以“后進(jìn)先出“的結(jié)構(gòu)方式處理的。實(shí)質(zhì)上,堆棧就是一個(gè)按照“后進(jìn)先出“原則組織的一段內(nèi)存區(qū)域。8什么是匯編語(yǔ)言什么叫指令周期答匯編匯編語(yǔ)言源程序在交付計(jì)算機(jī)執(zhí)行之前,需要先翻譯成目標(biāo)程序,這個(gè)翻譯過(guò)程叫匯編。指令周期指執(zhí)行一條指令所占用的全部時(shí)間。通常一個(gè)指令周期含14個(gè)機(jī)器周期。9什么是進(jìn)位和溢出答兩數(shù)運(yùn)算的結(jié)果若沒(méi)有超出字長(zhǎng)的表示范圍,則由此產(chǎn)生的進(jìn)位是自然進(jìn)位;若兩數(shù)的運(yùn)算結(jié)果超出了字長(zhǎng)的表示范圍(即結(jié)果不合理),則稱為溢出。例如將正數(shù)3FH和負(fù)數(shù)D0H相加,其結(jié)果不會(huì)超出8位字長(zhǎng)的表示范圍,所以其結(jié)果10FH中的進(jìn)位是正常進(jìn)位(也就是模)。但是,若正數(shù)3FH與正數(shù)70H相加,其結(jié)果為AFH,最高位為“1“,成了負(fù)數(shù)的含義,這就不合理了,這種情況稱為溢出。第二章21填空1微處器由寄存器、控制器、運(yùn)算器三部分組成2當(dāng)MCS51引腳ALE信號(hào)有效時(shí),表示從PO口穩(wěn)定地送出了低8位地址3MCS51的堆棧是軟件填寫(xiě)堆棧指針臨時(shí)在_片內(nèi)數(shù)據(jù)存儲(chǔ)器內(nèi)開(kāi)辟的區(qū)域4MCS51中凡字節(jié)地址能被_8整除的特殊功能寄存器均能尋址5MCS51有4組工作寄存器,它們的地址范圍是00H1FH6MCS51片內(nèi)20H2FH范圍內(nèi)的數(shù)據(jù)存儲(chǔ)器,既可以字節(jié)尋址又可以位尋址7計(jì)算機(jī)的系統(tǒng)總線有地址總線、控制總線和數(shù)據(jù)總線。880C51含4KBROM。980C51在物理有4個(gè)獨(dú)立的存儲(chǔ)空間。10一個(gè)機(jī)器周期等于6個(gè)狀態(tài)周期,振蕩脈沖2分頻后產(chǎn)生的時(shí)釧信號(hào)的周期定義為狀態(tài)周期。22判斷1我們所說(shuō)的計(jì)算機(jī)實(shí)質(zhì)上是計(jì)算機(jī)的硬件系統(tǒng)與軟件系統(tǒng)的總稱。()2MCS51的相對(duì)轉(zhuǎn)移指令最大負(fù)跳距是127B。()3MCS51的程序存儲(chǔ)器只是用來(lái)存放程序的。()存放程序和表格常數(shù)。4MCS51的時(shí)鐘最高頻率是18MHZ12MHZ。5使用可編程接口必須處始化。()。6當(dāng)MCS51上電復(fù)位時(shí),堆棧指針SP00H。()。SP07H7MCS51外擴(kuò)I/O口與外RAM是統(tǒng)一編址的。()。8使用8751且1時(shí),仍可外擴(kuò)64KB的程序存儲(chǔ)器。()60KB。98155的復(fù)位引腳可與89C51的復(fù)位引腳直接相連。()10MCS51是微處理器。()不是。11MCS51的串行接口是全雙工的。()12PC存放的是當(dāng)前執(zhí)行的指令。()是將要執(zhí)行的下一條指令的地址。13MCS51的特殊功能寄存器分布在60H80H地址范圍內(nèi)。()80HFFH。14MCS51系統(tǒng)可以沒(méi)有復(fù)位電路。()不可以。復(fù)位是單片機(jī)的初始化操作。15要MCS51系統(tǒng)中,一個(gè)機(jī)器周期等于15S。()若晶振頻率屢8MHZ,才可能為15S23選擇1要想測(cè)理INT0引腳上的一個(gè)正脈沖寬度,那么特殊功能寄存器TMOD的內(nèi)容應(yīng)為BA09HB87HC00HD80H2PSW18H時(shí),則當(dāng)前工作寄存器是(D)(A)0組B1組(C)2組(D)3組3控制串行口工作方式的寄存器是(C)(A)TCONBPCONCSCONDTMOD4口的每一位能驅(qū)動(dòng)(B)()個(gè)低電平負(fù)載有()個(gè)低電平負(fù)載()個(gè)低電平負(fù)載有()個(gè)低電平負(fù)載5MCS51的中斷允許觸發(fā)器內(nèi)容為83H,CPU將響應(yīng)的中斷請(qǐng)求是BAT1,BT0,T1CT1,串行接口D,T024問(wèn)答題18051單片機(jī)內(nèi)部包含哪些主要邏輯功能部件答8051單片機(jī)是個(gè)完整的單片微型計(jì)算機(jī)。芯片內(nèi)部包括下列硬件資源(1)8位CPU;(2)4KB的片內(nèi)程序存儲(chǔ)器ROM。可尋址64KB程序存儲(chǔ)器和64KB外部數(shù)據(jù)存儲(chǔ)器;(3)128B內(nèi)部RAM;(4)21個(gè)SFR;(5)4個(gè)8位并行I/O口(共32位I/O線);(6)一個(gè)全雙工的異步串行口;(7)兩個(gè)16位定時(shí)器/計(jì)數(shù)器;(8)5個(gè)中斷源,兩個(gè)中斷優(yōu)先級(jí);(9)內(nèi)部時(shí)鐘發(fā)生器。2EA/VPP引腳有何功用8031的引腳應(yīng)如何處理為什么答EA/VPP是雙功能引腳,功能如下(1)EA接高電平時(shí),在低4KB程序地址空間(0000H0FFFH),CPU執(zhí)行片內(nèi)程序存儲(chǔ)器的指令,當(dāng)程序地址超出低4KB空間(1000HFFFFH)時(shí),CPU將自動(dòng)執(zhí)行片外程序存儲(chǔ)器的指令。(2)EA接低電平時(shí),CPU只能執(zhí)行外部程序存儲(chǔ)器的指令。8031單片機(jī)內(nèi)部無(wú)ROM,必須外接程序存儲(chǔ)器。因此,8031的EA引腳必須接低電平。在對(duì)8751單片機(jī)內(nèi)部的EPROM編程時(shí),此引腳VPP外接12V電壓,用于固化EPROM程序。38051單片機(jī)存儲(chǔ)器的組織結(jié)構(gòu)是怎樣的答8051存儲(chǔ)器包括程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器,從邏輯結(jié)構(gòu)上看,可以分為三個(gè)不同的空間(1)64KB的程序存儲(chǔ)器地址空間0000HFFFFH,其中0000H0FFFH為片內(nèi)4KB的ROM地址空間,1000HFFFFH為外部ROM地址空間;(2)256B的內(nèi)部數(shù)據(jù)存儲(chǔ)器地址空間,00HFFH,分為兩大部分,其中00H7FH(共128B單元)為內(nèi)部靜態(tài)RAM的地址空間,80HFFH為特殊功能寄存器的地址空間,21個(gè)特殊功能寄存器離散地分布在這個(gè)區(qū)域;(3)64KB的外部數(shù)據(jù)存儲(chǔ)器地址空間0000HFFFFH,包括擴(kuò)展I/O地址空間。4片內(nèi)數(shù)據(jù)存儲(chǔ)器分為哪幾個(gè)性質(zhì)和用途不同的區(qū)域答8051內(nèi)部128B的數(shù)據(jù)RAM區(qū),包括有工作寄存器組區(qū)、可直接位尋址區(qū)和數(shù)據(jù)緩沖區(qū)。各區(qū)域的特性如下(1)00H1FH為工作寄存器組區(qū),共分4組,每組占用8個(gè)RAM字節(jié)單元,每個(gè)單元作為一個(gè)工作寄存器,每組的8個(gè)單元分別定義為8個(gè)工作寄存器R0R7。當(dāng)前工作寄存器組的選擇是由程序狀態(tài)字PSW的RS1、RS0兩位來(lái)確定。如果實(shí)際應(yīng)用中并不需要使用工作寄存器或不需要使用4組工作寄存器,不使用的工作寄存器組的區(qū)域仍然可作為一般數(shù)據(jù)緩沖區(qū)使用,用直接尋址或用RI的寄存器間接尋址來(lái)訪問(wèn)。(2)20H2FH為可位尋址區(qū)域,這16個(gè)字節(jié)的每一位都有一個(gè)地址,編址為00H7FH。當(dāng)然,位尋址區(qū)也可以用作字節(jié)尋址的一般數(shù)據(jù)緩沖區(qū)使用。(3)30H7FH為堆棧、數(shù)據(jù)緩沖區(qū)。5單片機(jī)有哪幾個(gè)特殊功能寄存器各在單片機(jī)的哪些功能部件中答8051單片機(jī)內(nèi)部有21個(gè)特殊功能寄存器,在物理上是分散在片內(nèi)各功能部件中,在數(shù)學(xué)上把它們組織在內(nèi)部數(shù)據(jù)存儲(chǔ)器地址空間80HFFH中,以便能使用統(tǒng)一的直接尋址方式來(lái)訪問(wèn)。這些特殊功能寄存器頒在以下各個(gè)功能部件中(1)CPUACC、B、PSW、SP、DPTR(由DPL和DPH兩個(gè)8位寄存器組成);(2)中斷系統(tǒng)IP、IE;(3)定時(shí)器/計(jì)數(shù)器TMOD、TCOM、TL0、TH0、TL1、TH1;(4)并行I/O口P0、P1、P2、P3;(5)串行口SCON、SBUF、PCON。6PC是什么寄存器是否屬于特殊功能寄存器它有什么作用答PC是16位程序計(jì)數(shù)器(PROGRAMCOUNTER),它不屬于特殊功能寄存器范疇,程序員不以像訪問(wèn)特殊功能寄存器那樣來(lái)訪問(wèn)PC。PC是專門用于在CPU取指令期間尋址程序存儲(chǔ)器。PC總是保存著下一條要執(zhí)行的指令的16位地址。通常程序是順序執(zhí)行的,在一般情況下,當(dāng)取出一個(gè)指令(更確切地說(shuō)為一個(gè)指令字節(jié))字節(jié)后,PC自動(dòng)加1。如果在執(zhí)行轉(zhuǎn)移指令、子程序調(diào)用/返回指令或中斷時(shí),要把轉(zhuǎn)向的地址賦給PC。7DPTR是什么寄存器它由哪些特殊功能寄存器組成它的主要作用是什么答DPTR是16位數(shù)據(jù)指針寄存器,它由兩個(gè)8位特殊功能寄存器DPL(數(shù)據(jù)指針低8位)和DPH(數(shù)據(jù)指針高8位)組成,DPTR用于保存16位地址,作間址寄存器用,可尋址外部數(shù)據(jù)存儲(chǔ)器,也可尋址程序存儲(chǔ)器。第三章31選擇題1、MOVXA,DPTR指令中源操作數(shù)的尋址方式是(B)(A)寄存器尋址(B)寄存器間接尋址(C)直接尋址(D)立即尋址2ORG0003HLJMP2000HORG000BHLJMP3000H當(dāng)CPU響應(yīng)外部中斷0后,PC的值是(B)(A)0003H(B)2000H(C)000BH(D)3000H3執(zhí)行PUSHACC指令,MCS51完成的操作是(A)(A)SP1SP(ACC)(SP)(B)(ACC)(SP)SP1SP(B)(C)SP1SP(ACC)SP(D)(ACC)(SP)SP1SP4、LCALL指令操作碼地址是2000H,執(zhí)行完相子程序返回指令后,PC(D)(C)2000H(B)2001H(C)2002H(D)2003H5、51執(zhí)行完MOVA,08H后,PSW的一位被置位(D)(A)(A)C(B)F0(C)OV(D)P6、下面條指令將MCS51的工作寄存器置成3區(qū)(B)(A)MOVPSW,13H(B)MOVPSW,18H(B)SETBPSW4CLRPSW3DSETBPSW3CLRPSW47、執(zhí)行MOVXA,DPTR指令時(shí),MCS51產(chǎn)生的控制信號(hào)是(C)(D)/PSEN(B)ALE(C)/RD(D)/WR8、MOVC,00H的尋址方式是(A)(A)位尋址(B)直接尋址(C)立即尋址(D)寄存器尋址9、ORG0000HAJMP0040HORG0040HMOVSP,00H當(dāng)執(zhí)行完左邊的程序后,PC的值是(C)(A)0040H(B)0041H(C)0042H(D)0043H10、對(duì)程序存儲(chǔ)器的讀操作,只能使用(D)(A)MOV指令(B)PUSH指令(C)MOVX指令(D)MOVC指令32判斷題。4MCS51的相對(duì)轉(zhuǎn)移指令最大負(fù)跳距是127B。(錯(cuò))128B5當(dāng)MCS51上電復(fù)位時(shí),堆棧指針SP00H。(SP07H)(錯(cuò))6調(diào)用子程序指令(如CALL)及返回指令(如RET)與堆棧有關(guān)但與PC無(wú)關(guān)。(錯(cuò))子序的轉(zhuǎn)返與PC也有關(guān)(PC入棧與出棧)7MOVR1,80H對(duì)5、INCDPTR對(duì)6、CLRR0錯(cuò)指令系統(tǒng)中沒(méi)有。7、MOVR1,80H(對(duì))8、ANLR1,0FH(錯(cuò))9、ADDCA,C(錯(cuò))10、XORP1,31H對(duì)33簡(jiǎn)答題1簡(jiǎn)述MCS51匯編語(yǔ)言指令格式。答MCS51匯編語(yǔ)言格式如下標(biāo)號(hào)操作碼助記符操作數(shù)1操作數(shù)2操作數(shù)3注釋標(biāo)號(hào)是用戶定義的符號(hào),其值代表這條指令的地址。操作碼助記符是指令系統(tǒng)規(guī)定的代表特定指令功能的英文縮寫(xiě)符。每條指令都有操作碼記符。指令的操作數(shù)最多有3個(gè),也有無(wú)操作數(shù)的指令。注釋字段是用戶對(duì)程序的說(shuō)明,便于對(duì)程序的閱讀和理解。簡(jiǎn)答2MCS51指令系統(tǒng)主要有哪幾種尋址方式試舉例說(shuō)明。答MCS51指令操作數(shù)主要有以下7種尋址方式尋址方式舉例立即尋址MOVA,16直接尋址MOV20H,P1寄存器尋址MOVA,R0寄存器間接尋址MOVXA,DPTR變址尋址MOVCA,ADPRT相對(duì)尋址SJMPLOOP位尋址ANLC,70H3對(duì)訪問(wèn)內(nèi)部RAM和外部RAM,各應(yīng)采用哪些尋址方式答對(duì)內(nèi)部RAM的尋址方式有直接尋址、寄存器間接尋址和可對(duì)位尋址的位尋址。對(duì)外部RAM的尋址方式只能用寄存器R0/R1(8位地址)或DPTR(16位地址)間接尋址。4設(shè)內(nèi)部RAM(30H)5AH,(5AH)40H,(40H)00H,端口P17FH,問(wèn)執(zhí)行下列指令后,各有關(guān)存儲(chǔ)單元(即R0,R1,A,B,P1,30H,40H及5AH單元)的內(nèi)容如何MOVR0,30HR030HMOVA,R0A5AHMOVR1,AR15AHMOVB,R1B5AHMOVR1,P15AH7FHMOVA,P1A7FHMOV40H,20H40H20HMOV30H,40H30H20H解每一條指令執(zhí)行后的結(jié)果如注釋字段所標(biāo)。最后結(jié)果為R030H,R15AH,A7FH,B5AH,P17FH,(30H)20H,(40H)20H,(5AH)7FH。5SJMP(短轉(zhuǎn)移)指令和AJMP(絕對(duì)轉(zhuǎn)移)指令的主要區(qū)別。前者提供了以SJMP的下一條指令的起始地址為中心的256字節(jié)范圍的轉(zhuǎn)移(128127),后者的轉(zhuǎn)移目標(biāo)地址必須在與AJMP的下一條指令的第一字節(jié)相同的2KB區(qū)的程序儲(chǔ)存器中。短轉(zhuǎn)移方便了可重定位編碼。SJMP方便了PC可重定位編碼,但轉(zhuǎn)移范圍小。而ASJMP轉(zhuǎn)移范圍大,但存在跳區(qū)的限制,AJMP指令只能位于2KB區(qū)的最后2個(gè)字節(jié)處時(shí),才可跳到下一個(gè)區(qū)去。因此用AJMP指令來(lái)代替SJMP指令是有條件的,也就是目標(biāo)地址必須與它下面的指令存放地址在同一個(gè)2KB區(qū)域內(nèi)。34編程題1編程將片內(nèi)RAM30H單元開(kāi)始的B的數(shù)據(jù)傳送到片外RAM3000H開(kāi)始的單元中去。解STRATMOVR0,30HMOVR7,0FHMOVDPTR,3000HLOOPMOVA,R0MOVXDPTR,AINCR0INCDPTRDJNZR7,LOOPRET2片內(nèi)RAM30H開(kāi)始的單元中有10B的二進(jìn)制數(shù),請(qǐng)編程求它們之和(和256)解ADDIOMOVR0,30HMOVR7,9MOVA,R0LOOPINCR0ADDA,R0DJNZR7,LOOPMOV30H,ARET3編一個(gè)程序,將累加器中的一個(gè)字符從串行接口發(fā)送出去解SOUTMOVSCON,40H設(shè)置串行接口為工作方式MOVTMOD,20H定時(shí)器T1工作于模式MOVTL1,0E8H設(shè)置波特率為1200B/SMOVTH1,0E8HSETBTR1MOVSBUF,AJNBT1,CLBT1RET4用查表法編一子程序,將R3中的BCD碼轉(zhuǎn)換成ASCII碼解MAINMOVA,R3;待轉(zhuǎn)換的數(shù)送AMOVDPTR,TAR;表首地址送DPTRMOVCA,ADPTR;查ASCII碼表MOVR3,A;查表結(jié)果送R3RETTARDB30H,31H,32H,33H,34HDB35H,36H,37H,38H,39H5片內(nèi)RAM40H開(kāi)始的單元內(nèi)有10B二進(jìn)制數(shù),編程找出其中最大值并存于50H單元中解STARTMOVR0,40H數(shù)據(jù)塊首地址送R0MOVR7,09H比較次數(shù)送MOVA,R0取數(shù)送LOOPINCR0MOV30H,R0取數(shù)送HCJNEA,30H,NEHT(A)與(30H)相比NEXTJNCBIE1A30H轉(zhuǎn)BIR1MOVA,30HA30H,大數(shù)送ABIE1DJNZR7,LOOP比較次數(shù)減1,不為0,繼續(xù)比較MOV50H,A比較結(jié)束,大數(shù)送50HRET6編一子程序,從串行接口接受一個(gè)字符解STARTMOVTMOD,20H定時(shí)器T1工作于模式2MOVTH1,0E8H設(shè)置波特率為1200B/SMOVTL1,0E8HSETBTR1啟動(dòng)T1MOVSCON,50H串行接口工作于方式1,充許接收L1JNBRI,L1等待接收數(shù)據(jù),末接收到數(shù)據(jù),繼續(xù)等待CLRRI接收到數(shù)據(jù),清RIMOVA,SBUF;接收到數(shù)據(jù)送ARET7利用調(diào)子程序的方法,進(jìn)行兩個(gè)無(wú)符號(hào)數(shù)相加。請(qǐng)編主程序及子程序。解用R0和R1作數(shù)據(jù)指針,R0指向第一個(gè)加數(shù),并兼作“和”的指針,指向另一個(gè)加數(shù),字節(jié)存放到中作計(jì)數(shù)初值。主程序JAFAMOVR0,20H指向加數(shù)最低字節(jié)MOVR1,29H指向另一加數(shù)最低字節(jié)MOVR2,04H字節(jié)數(shù)作計(jì)數(shù)值A(chǔ)CALLJASUB調(diào)用加法子程序AJMPRTE多字節(jié)加法子程序JASUBCLRCJASUB1MOVA,R0取出加數(shù)的一個(gè)字節(jié)(無(wú)符號(hào)數(shù)加數(shù))ADDCA,R1加上另一數(shù)的一個(gè)字節(jié)MOVR0,A保存和數(shù)INCR0指向加數(shù)的高位INCR1指向另一加數(shù)的高位DJNZR2,JASUB1全部加完了嗎RET8若圖數(shù)據(jù)塊是有符號(hào)數(shù),求正數(shù)個(gè)數(shù),編程并注釋。解ORG0030HSTARTMOV20H,00H計(jì)正數(shù)個(gè)數(shù)計(jì)數(shù)器MOVDPTR,0000HMOVXA,DPTR數(shù)據(jù)塊長(zhǎng)度10HMOV10H,AINCDPTRDPTR指向第一個(gè)數(shù)的地址TWOMOVXA,DPTR取數(shù)AJBACC7,ONE是負(fù)數(shù)轉(zhuǎn)ONE,準(zhǔn)備取下一個(gè)數(shù)INC20H是正數(shù),正數(shù)計(jì)數(shù)器加ONEINCDPTR地址指針加DJNZ10H,TW數(shù)據(jù)塊長(zhǎng)度減不等于,繼續(xù)尋找RET9編制一個(gè)循環(huán)閃爍燈的程序。有8個(gè)發(fā)光二極管,每次其中某個(gè)燈閃爍點(diǎn)亮10次后,轉(zhuǎn)到下一個(gè)閃爍10次,循環(huán)不止。畫(huà)出電路圖。解本程序的硬件連接如圖所示。當(dāng)P10輸出高電平時(shí),LED燈亮,否則不亮。其程序如下MOVA,01H燈亮初值SHIFTLCAILFLASH調(diào)閃亮10次子程序RRA;右移一位SJMPSHIFT;循環(huán)FLASHMOVR2,0AH閃爍10次計(jì)數(shù)FLASH1MOVP1,A;點(diǎn)亮LCALLDELAY;延時(shí)MOVP1,00H;熄滅LCALLDELAY;延時(shí)DJNZR2,FLASH1;循環(huán)RET第四章41填空1MCS51的PO口作為輸出端口時(shí),每位能驅(qū)動(dòng)8個(gè)SL型TTL負(fù)載2MCS51有4個(gè)并行IO口,其中P0P3是準(zhǔn)雙向口,所以由輸出轉(zhuǎn)輸入時(shí)必須先寫(xiě)入“1“3設(shè)計(jì)8031系統(tǒng)時(shí),_P0、P2口不能用作一般IO口4MCS51串行接口有4種工作方式,這可在初始化程序中用軟件填寫(xiě)特殊功能寄存器_SCON_加以選擇5當(dāng)使用慢速外設(shè)時(shí),最佳的傳輸方式是中斷6當(dāng)定時(shí)器TO工作在方式3時(shí),要占定時(shí)器T1的TR1和TF1_兩個(gè)控制位7MCS51有5個(gè)中斷源,有2個(gè)中斷優(yōu)先級(jí),優(yōu)先級(jí)由軟件填寫(xiě)特殊功能寄存器IP加以選擇8用串口擴(kuò)并口時(shí),串行接口工作方式應(yīng)選為方式09在串行通信中,有數(shù)據(jù)傳送方向單工、半雙工、全雙工三種方式10外部中斷入口地址為_(kāi)0013H42判斷P108013P17D0Q074LS240D7Q75V1MCS51的5個(gè)中斷源優(yōu)先級(jí)相同。()2要進(jìn)行多機(jī)通信,MCS51串行接口的工作方式應(yīng)為方式1。()3MCS51上電復(fù)位時(shí),SBUF00H。()。4MCS51有3個(gè)中斷源,優(yōu)先級(jí)由軟件填寫(xiě)特殊功能寄存器IP加以選擇()5用串口擴(kuò)并口時(shí),串行接口工作方式應(yīng)選為方式1()6外部中斷INTO入口地址為_(kāi)0013H()7MCS51外部中斷0的入口地址是0003H。()8TMOD中的GATE1時(shí),表示由兩個(gè)信號(hào)控制定時(shí)器的啟停。()。9使用8751且1時(shí),仍可外擴(kuò)64KB的程序存儲(chǔ)器。()10PC存放的是當(dāng)前執(zhí)行的指令。()11MCS51的特殊功能寄存器分布在60H80H地址范圍內(nèi)。()12MCS51有4個(gè)并行IO口,其中P0P3是準(zhǔn)雙向口,所以由輸出轉(zhuǎn)輸入時(shí)必須先寫(xiě)入“0“()43選擇1在中斷服務(wù)程序中,至少應(yīng)有一條D()傳送指令()轉(zhuǎn)移指令()加法指法()中斷返回指令2要使MCS51能夠響應(yīng)定時(shí)器中斷、串行接口中斷,它的中斷允許寄存器的內(nèi)容應(yīng)是(A)()98H()84H()42()22H3DMCS51在響應(yīng)中斷時(shí),下列哪種操作不會(huì)發(fā)生DA保護(hù)現(xiàn)場(chǎng)B保護(hù)PCC找到中斷入口D保護(hù)PC轉(zhuǎn)入中斷入口4用MCS51串行接口擴(kuò)展并行IO口時(shí),串行接口工作方式應(yīng)選擇CA方式0B方式1C方式2D方式35MCS51有中斷源(A)(A)5個(gè)(B)2個(gè)(C)3個(gè)(D)6個(gè)6MCS51響應(yīng)中斷時(shí),下面哪一個(gè)條件不是必須的()(A)當(dāng)前指令執(zhí)行完畢(B)中斷是開(kāi)放的確(C)沒(méi)有同級(jí)或高級(jí)中斷服務(wù)須(D)必須有RET1指令7使用定時(shí)器T1時(shí),有幾種工作模式(C)()種()種()種()種8計(jì)算機(jī)在使用中斷方式與外界交換信息時(shí),保護(hù)現(xiàn)場(chǎng)的工作方式應(yīng)該是BA由CPU自動(dòng)完成B在中斷響應(yīng)中完成C應(yīng)由中斷服務(wù)程序完成D在主程序中完成9下面哪一種傳送方式適用于處理外部事件CADMAB無(wú)條件傳遞進(jìn)C中斷D條件傳遞1、2、4章的編程18225A控制字地址為300FH,請(qǐng)按A口方式0輸入,B口方式1輸出,C口高位輸出,C口低位輸入,確定8225A控制字并編初始化程序解控制字為1001010195H初始化程序MOVDPTR,300FHMOVA,95HMOVXDPTR,A2編定一個(gè)軟件延時(shí)1S和1MI的子程序設(shè)OSC6HZ,則一個(gè)機(jī)器周期1。解(1)1S2US51000005100000250200102ORG1000HTIMEMOVR7,10T3MOVR6,200T2MOVR6,250T1DJNZR5,T1DJNZR6,T2DJNZR7,T3RET21MIN60,調(diào)用上面1S子程序60次ORG0030HMOVR0,60LOOPLCALLTIMEDJNZR0,LOOPRET3請(qǐng)編制串行通信的數(shù)據(jù)發(fā)送程序,發(fā)送片內(nèi)RAM50H5FH的16B數(shù)據(jù),串行接口設(shè)定為方式2,采用偶校驗(yàn)方式。設(shè)晶振頻率為6MHZ。解查詢方式發(fā)送程序如下MOVSCON,8OHMOVPCON,80HMOVR0,50HMOVR7,16HLOOPMOVA,R0MOVC,PMOVTB8,CMOVSBUF,AJNBT1,CLRT1INCR0DJNZR7,LOOPRET4應(yīng)用單片機(jī)內(nèi)部定時(shí)器T0工作在方式1下,從P10輸出周期為2MS的方波脈沖信號(hào),已知單片機(jī)的晶振頻率為6MHZ。請(qǐng)(1)計(jì)算時(shí)間常數(shù)X,應(yīng)用公式X2T(F)(2)寫(xiě)出程序清單解X216TF/1221611036106/12OFEOCHORG3000HSTARTMOVTMOD,01HMOVTL0,OCHMOVTHO,OFEHSETBTR0LOOPJBCTFO,DONESJMPLOOPDONEMOVTL0,OCHMOVTHO,OFEHCPLP10SJMPLOOP5應(yīng)用單片機(jī)內(nèi)部定時(shí)器T0工作在方式1下,從P10輸出周期為1MS的方波脈沖信號(hào),已知單片機(jī)的晶振頻率為6MHZ。請(qǐng)(1)計(jì)算時(shí)間常數(shù),應(yīng)用公式X2T(F)(2)寫(xiě)出程序清單解解X216TF/12216051036106/12FF06HORG3000HSTARTMOVTMOD,01HMOVTL0,06HMOVTHO,FFHSETBTR0LOOPJBCTFO,DONESJMPLOOPDONEMOVTL0,06HMOVTHO,FFHCPLP10SJMPLOOP6、用89C51的P1口,監(jiān)測(cè)某一按鍵開(kāi)關(guān),使每按鍵一次,輸出一個(gè)正脈沖(脈寬隨意)。編出匯編語(yǔ)言程序。解ORG0100HABCSETBP10SETBP17JBPI7,JNBP17,CLRP10MOVR2,0DAYNOPNOPDJNZR2,DAYSJMPABC7、設(shè)計(jì)一個(gè)4位數(shù)碼顯示電路,并用匯編語(yǔ)言編程使“8“從右到左顯示一遍。解ORG0100HMOVA,08HMOVR2,01HMOVDPTR,TABMOVCA,ADPTRMOVP1,ANEXTMOVA,R2MOVP3,AACALLDAYJBACC4,LPDRLAMOVR2,AAJMPNEXTLPDRETTABDBEND8編制一個(gè)循環(huán)閃爍的程序。有8個(gè)發(fā)光二極管,每次其中某個(gè)燈閃爍點(diǎn)亮10次后,轉(zhuǎn)到下一個(gè)閃爍10次,循環(huán)不止。畫(huà)出電路圖。解MOVA,01HSHIFTLCALLFLASHRRSJMPSHIFTFLAHMOVR2,0AHFLAH1MOVP1,ALCALLDELAYMOVP,00HLCALLDELAYDJNZR2,FLASH1RET9在8051單片機(jī)的INTO引腳外接脈沖信號(hào),要求每送來(lái)一個(gè)脈沖,把30H單元值加1,若30H單元記滿則進(jìn)位31H單元。試?yán)弥袛嘟Y(jié)構(gòu),編制一個(gè)脈沖計(jì)數(shù)程序。解ORG0000HAJMPMAINORG0003HAJMPSUBGMAINMOVA,OOHMOV30H,AMOV31H,AMOVSP,70HSETBINT0SETBEASETBEX0AJMPORG0200HSUBGPUSHACCINC30HMOVA,30HJNZBACKINC31HBACKPOPRET110利用89C51的P1口控制8個(gè)發(fā)光俄二極管LED。相鄰的4個(gè)LED為一組,使2組每隔0。5S交替發(fā)亮一次,周爾復(fù)始。試編寫(xiě)程序。解ORG0100HMOVA,0FHABCMOVP1,AACALLD05SWAPASJMPABCD05MOVR6,250DYMOVR7,250DAYNOPNOPDJNZR6,DAYDJNZR7,DAYRETEND11設(shè)計(jì)89C51和ADC0809的接口,采集2通道10個(gè)數(shù)據(jù),存入內(nèi)部RAM的50H59H單元,畫(huà)出電路圖,編出(1)延時(shí)方式;(2)查詢方式;(3)中斷方式中的一種程序。解IN2的地址為7FFAH,P10查詢轉(zhuǎn)換結(jié)束信號(hào),查詢程序如下ORG0100HMOVR7,0AHMOVR0,50HMOVDPTR,7FFAHNEXTMOVXDPTR,AJBP10,MOVXA,DPTRMOVR0,AINCR0DJNZNEXTSJMP第五章51選擇題1、6264芯片是(B)(A)EEPROM(B)RAM(C)FLASHROM(D)EPROM2、用MCS51用串行擴(kuò)展并行I/O口時(shí),串行接口工作方式選擇(A)(A)方式0(B)方式1(C)方式2(D)方式33、使用8255可以擴(kuò)展出的I/O口線是(B)(A)16根(B)24根(C)22根(D)32根4、當(dāng)8031外出擴(kuò)程序存儲(chǔ)器8KB時(shí),需使用EPROM2716(C)(A)2片(B)3片(C)4片(D)5片5、某種存儲(chǔ)器芯片是8KB4/片,那么它的地址線根線是(C)(A)11根(B)12根(C)13根(D)14根6、MCS51外擴(kuò)ROM,RAM和I/O口時(shí),它的數(shù)據(jù)總線是(A)(A)P0(B)P1(C)P2(D)P37、當(dāng)使用快速外部設(shè)備時(shí),最好使用的輸入/輸出方式是(C)(A)中斷(B)條件傳送(C)DMA(D)無(wú)條件傳送8、MCS51的中斷源全部編程為同級(jí)時(shí),優(yōu)先級(jí)最高的是(D)(A)INT1(B)TI(C)串行接口(D)INT09、MCS51的并行I/O口信息有兩種讀取方法一種是讀引腳,還有一種是(A)(A)讀鎖存器具(B)讀數(shù)據(jù)庫(kù)(C)讀A累加器具(D)讀CPU10、MCS51的并行I/O口讀改寫(xiě)操作,是針對(duì)該口的(D)(A)引腳(B)片選信號(hào)(C)地址線(D)內(nèi)部鎖存器52判斷題1、MCS51外擴(kuò)I/O口與外RAM是統(tǒng)一編址的。(對(duì))2、使用8751且EA1時(shí),仍可外擴(kuò)64KB的程序存儲(chǔ)器。(錯(cuò))60KB3、8155的復(fù)位引腳可與89C51的復(fù)位引腳直接相連。(對(duì))4、片內(nèi)RAM與外部設(shè)備統(tǒng)一編址時(shí),需要專門的輸入/輸出指令。(錯(cuò))統(tǒng)一編址的特點(diǎn)正是無(wú)需專門的輸入輸出指令。5、8031片內(nèi)有程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器。(錯(cuò))無(wú)程序存儲(chǔ)器6、EPROM的地址線為11條時(shí),能訪問(wèn)的存儲(chǔ)空間有4K。(錯(cuò))2K7、8255A內(nèi)部有3個(gè)8位并行口,即A口,B口,C口。(對(duì))8、8155芯片內(nèi)具有256B的靜態(tài)RAM,2個(gè)8位和1個(gè)6位的可編程并行I/O口,1個(gè)14位定時(shí)期等常用部件及地址鎖存器。對(duì)9、在單片機(jī)應(yīng)用系統(tǒng)中,外部設(shè)備與外部數(shù)據(jù)存儲(chǔ)器傳送數(shù)據(jù)時(shí),使用MOV指令。(錯(cuò))用MOVX指令。10、為了消除按鍵的抖動(dòng),常用的方法有硬件和軟件兩種方法。對(duì)53簡(jiǎn)答題18031的擴(kuò)展儲(chǔ)存器系統(tǒng)中,為什么P0口要接一個(gè)8位鎖存器,而P2口卻不接答這是因?yàn)镻0口是擴(kuò)展儲(chǔ)存器系統(tǒng)的多路低8位地址和數(shù)據(jù)總線,在訪問(wèn)外部存儲(chǔ)器時(shí),P0口分時(shí)用作輸出外部?jī)?chǔ)存器低8位地址和傳送數(shù)據(jù),為了在整個(gè)訪問(wèn)外部存儲(chǔ)器期間,對(duì)外部存儲(chǔ)器存在著有效的低8位地址信號(hào),所以P0口需要外接一個(gè)地址鎖存器。ALE信號(hào)就是用來(lái)把P0口輸出的地址字節(jié)鎖存在這個(gè)外接的鎖存器中,再?gòu)逆i存器輸出外部存儲(chǔ)器的低8位地址。而P2口只用作擴(kuò)展存儲(chǔ)器系統(tǒng)的高8位地址線,并在整個(gè)訪問(wèn)外部存儲(chǔ)器期間不變,所以不必外接地址鎖存器。2在8031擴(kuò)展系統(tǒng)中,外部程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器共用16位地址線和8位數(shù)據(jù)線,為什么兩個(gè)存儲(chǔ)空間不會(huì)發(fā)生沖突答這是因?yàn)橥獠砍绦虼鎯?chǔ)器和外部數(shù)據(jù)存儲(chǔ)器所使用的控制信號(hào)不同。對(duì)外部程序存儲(chǔ)器的選讀通是用PSEN控制線,而對(duì)外部數(shù)據(jù)存儲(chǔ)器的讀/寫(xiě)控制是用RD和WR讀、寫(xiě)控制線,所以不會(huì)發(fā)生地址沖突。38031單片機(jī)需要外接程序存儲(chǔ)器,實(shí)際上它還有多少條I/O線可以用當(dāng)使用外部存儲(chǔ)器時(shí),還剩下多少條I/O線可用答8031系統(tǒng)必須外接程序促成器,原則上說(shuō),P0和P2口要用作數(shù)據(jù)和地址總線,所以只有P1和P3口可用作I/O口,共16條I/O線。在使用外部存儲(chǔ)器時(shí),除了占用P0和P2口外,還需要用P3口RD(P37)和WR(P36)兩條控制線,所以這種情況下就只剩下14條I/O線可用了。4試將8031單片機(jī)外接一片2716EPROM和一片6116RAM組成一個(gè)應(yīng)用系統(tǒng),請(qǐng)畫(huà)出硬件連線圖,并指出擴(kuò)展存儲(chǔ)器的地址范圍。答2716是2K8位的EPROM,6116是2K8位的靜態(tài)RAM,兩者都僅需要11根地址線。由于沒(méi)有規(guī)定地址范圍,故可按最簡(jiǎn)單的方式來(lái)連接,即省去地址譯碼器,程序存儲(chǔ)器的地址必須從0開(kāi)始,基本地址為0000H07FFH。數(shù)據(jù)存儲(chǔ)器的地址為0000H07FFH??刂凭€的連接為/PSEN控制EPROM的讀出,/RD和/WR控制RAM的讀寫(xiě),兩個(gè)芯片的片選端都固定接地,連線圖如圖所示。A7A10A9A0A8/OE/WED76116D0/CEP22P21P20P08031ALE/PSEN/EA/RD/WE5簡(jiǎn)述可編程并行接口8255A的內(nèi)部結(jié)構(gòu)答8255A的內(nèi)部結(jié)構(gòu)由三部分組成總線接口部分,內(nèi)部邏輯部分,外部接口部分。(1)總線接口部分其中有數(shù)據(jù)總線驅(qū)動(dòng)器,讀/寫(xiě)控制邏輯(2)內(nèi)部邏輯部分由A組和B組控制電路。(3)外部接口部分該部分有3個(gè)8位并行I/O端口,即A口、B口和C口。54編程題1試編程對(duì)8155進(jìn)行初始化,設(shè)A口為選通輸出,B口為選通輸入,C口作為控制聯(lián)絡(luò)口,并啟動(dòng)定時(shí)器/記數(shù)器按方式1工作,工作時(shí)間為10MS,定時(shí)器計(jì)數(shù)脈沖頻率為單片機(jī)的時(shí)鐘頻率24分頻,F(xiàn)OSC12MHZ。解算得初值50001388HMOVDPTR,7F04定時(shí)器低八位寄存器地址DPTRMOVA,88H低8位初值A(chǔ)MOVXDPTR,A低8位初值低8位寄存器INCDPTR;DPTR指向定時(shí)器高8位MOVA,13H;高8位初值A(chǔ)MOVXDPTR,A;高8位初值高8位寄存器A7A10A9A0A8/OED72764D0/CEEEEDDEE/CEED7Q7D0Q0G/EMOVDPTR,7F00H;8155命令寄存器地址DPTRMOVA,0C5H;命令字AMOVXDPTR,A;命令字命令寄存器2設(shè)單片機(jī)采用8051,未擴(kuò)展片外ROM,片外RAM采用一片6116,編程將其片內(nèi)ROM從0100H單元開(kāi)始的10B得內(nèi)容依次外接到片外RAM從100H單元開(kāi)始得10B中去。解MOVR2,00H;源數(shù)據(jù)緩沖器地址偏移量00HAMOVR3,0AH;字節(jié)長(zhǎng)度R3MOVDPTR,0100H;源數(shù)據(jù)緩沖區(qū)首地址DPTRMOVA,R2;源地址偏移量AMOVCA,ADPTR;傳送一個(gè)數(shù)據(jù)MOVXDPTR,AINCDPTR;源地址(目的地址)加1DJNZR3,L1;數(shù)據(jù)全部傳送完沒(méi)傳送完,轉(zhuǎn)L1繼續(xù)傳送SJMP;結(jié)束38031擴(kuò)展8255A,將PA口設(shè)置成輸入方式,PB口設(shè)置成輸出方式,PC口設(shè)置成輸出方式,給出初始化程序。解根據(jù)題目要求,A口輸入,B口輸出,二者均采用工作方式0,則控制字為98H。編程如下MOVA,98H;方式控制字AMOVDPTR,7FFFH;選通控制寄存器MOVXTPTR,A;方式控制字送入8255AMOVDPTR,7FFCHMOVXA,DPTR;讀PA口數(shù)據(jù)MOVDPTR,7FFDH;MOVXDPTR,A;送PB口數(shù)據(jù)4設(shè)計(jì)一個(gè)22行列式鍵盤(pán)電路并編寫(xiě)鍵盤(pán)掃描子程序。解(1)22行列式鍵盤(pán)電路如圖所示。(2)鍵盤(pán)掃描子程序KEY1ACALLKS1調(diào)用判斷有無(wú)鍵按下子程序JNZLK1;有鍵按下,轉(zhuǎn)LK1AJMPKEY1無(wú)鍵按下,返回LK1ACALLT12MS;調(diào)延時(shí)12MS子程序ACALLKS1;查有無(wú)鍵按下JNZLK2;若有,則為鍵確實(shí)按下,轉(zhuǎn)逐列掃描AJMPKEY1;無(wú)鍵按下,返回LK2MOVR4,00H;首列號(hào)R4MOVR2,FEH;首列掃描字R2LK4MOVA,R2;列掃描字P1口MOVP1,A使第一列線為0MOVA,P1;讀入行狀態(tài)JBACC0,LONE;第0行無(wú)鍵按下,轉(zhuǎn)查第一行MOVA,00H;第0行有鍵按下,該行首鍵號(hào)00HAAJMPLKP;轉(zhuǎn)求鍵號(hào)LONEJBACC1,NEXT;第一行無(wú)鍵按下,轉(zhuǎn)查下一列MOVA,02;第一行有鍵按下,該行首鍵號(hào)02ALKPADDA,R4;鍵號(hào)首行號(hào)列號(hào)P17P16P11P1089C515VPUSHACC;鍵號(hào)進(jìn)棧保護(hù)LK3ACALLKS1;等待鍵釋放JNZLK3;未釋放,等待POPAC;鍵釋放,鍵號(hào)ARET;鍵掃描結(jié)束NEXTINCR4;列號(hào)加1,指向下一列MOVA,R2;列掃描字AJNBACC1,KND;判斷2列全掃描完掃描完,轉(zhuǎn)KNDRLA;沒(méi)掃描完,掃描字左移一位,形成下一列掃描字MOVR2,A;掃描字R2AJMPLK4;掃描下一列AJMPKEY1;全掃描完,返回MOVA,FCH;全掃描字11111100BAMOVP1,A;全掃描字所有行MOVA,P1;讀取列值CPLA;取正邏輯,高電平表示有鍵按下ANLA,0C0H;屏蔽低6位,取高2位RET;出口狀態(tài)(A)0,有鍵按下5要求將存放在8031單片機(jī)內(nèi)部RAM中30H33H單元的4字節(jié)數(shù)據(jù),按十六進(jìn)制(8位)從做到右顯示,試編制程序。ORG1000H;指向顯示緩沖區(qū)MOVR0,30H;顯示字節(jié)數(shù)MOVR2,04;初始顯示位置(最高位)MOVP1,08H;取1BSDLAYMOVA,R0;備份MOVB,A;截取字節(jié)高位ANLA,0F0H;裝入P14P17ORLP1,A;準(zhǔn)備顯示右一位INCP1;取備份MOVA,B;截取字節(jié)低位SWAPA;ANLA,0F0HORLP1,A;裝入并顯示INCP1;準(zhǔn)備顯示下一字節(jié)INCR0DJNZR2,SDLAY;4B未顯示完循環(huán)RET;顯示完成ENDSTARTMOVDPTR,7FFFHMOVA,00LOOPMOVXDPTR,AINCAMOVR0,DATA;DATA為延時(shí)常數(shù)DJNZR0,;延時(shí),改變DATA可改變鋸齒波周期T值SJMPLOOP例2產(chǎn)生矩形波STARTMOVDPTR,7FFFHSTEPMOVA,DATAH置矩形波上限MOVXDPTR,AD/A轉(zhuǎn)換ACALLDELH調(diào)輸出“1”時(shí)延時(shí)MOVA,00H置矩形波下限MOVXDPTR,AACALLDELL調(diào)輸出“0”時(shí)延時(shí)SJMPSTEP重復(fù)執(zhí)行例3產(chǎn)生三角波STARTMOVDPTR,7FFFHSTEP1MOVA,00HSTEP2MOVXDPTR,AINCACJNEA,DATA,STEP2STEP3DECAMOVXDPTR,ACJNEA,01H,STEP3AJMPSTEP1第一章11選擇1計(jì)算機(jī)中最常用的字符信息編碼是(A)AASCIIBBCD碼C余3碼D循環(huán)碼2要MCS51系統(tǒng)中,若晶振頻率屢8MHZ,一個(gè)機(jī)器周期等于ASA15B3C1D053MCS51的時(shí)鐘最高頻率是AA12MHZB6MHZC8MHZD10MHZ4以下不是構(gòu)成的控制器部件(D)A程序計(jì)數(shù)器、B指令寄存器、C指令譯碼器、D存儲(chǔ)器5以下不是構(gòu)成單片機(jī)的部件(D)A微處理器(CPU)、B存儲(chǔ)器C接口適配器(IO接口電路)D打印機(jī)6下列不是單片機(jī)總線是(D)A地址總線B控制總線C數(shù)據(jù)總線D輸出總線749D的二進(jìn)制補(bǔ)碼為BA11101111B11101101C0001000D111011008十進(jìn)制29的二進(jìn)制表示為原碼(C)A11100010B10101111C00011101D000011119十進(jìn)制0625轉(zhuǎn)換成二進(jìn)制數(shù)是(A)A0101B0111C0110D010010選出不是計(jì)算機(jī)中常作的碼制是(D)A原碼B反碼C補(bǔ)碼DASCII12填空1計(jì)算機(jī)中常作的碼制有原碼、反碼和補(bǔ)碼2十進(jìn)制29的二進(jìn)制表示為000111013十進(jìn)制數(shù)29的8位補(bǔ)碼表示為111000114單片微型機(jī)CPU、存儲(chǔ)器和IO接口三部分組成5若不使用MCS51片內(nèi)存器引腳EA必須接地6輸入輸出設(shè)備是計(jì)算機(jī)與外部世界交換信息的載體7十進(jìn)制數(shù)47用8位二進(jìn)制補(bǔ)碼表示為11010001849D的二進(jìn)制補(bǔ)碼為111011019計(jì)算機(jī)中最常用的字符信息編碼是ASCII10計(jì)算機(jī)中的數(shù)稱為機(jī)器數(shù),它的實(shí)際值叫真值。13判斷1我們所說(shuō)的計(jì)算機(jī)實(shí)質(zhì)上是計(jì)算機(jī)的硬件系統(tǒng)與軟件系統(tǒng)的總稱。()2MCS51上電復(fù)位時(shí),SBUF00H。()。SBUF不定。3使用可編程接口必須處始化。()。48155的復(fù)位引腳可與89C51的復(fù)位引腳直接相連。()5MCS51是微處理器。()不是。6MCS51系統(tǒng)可以沒(méi)有復(fù)位電路。()不可以。復(fù)位是單片機(jī)的初始化操作。7要MCS51系統(tǒng)中,一個(gè)機(jī)器周期等于15S。()若晶振頻率屢8MHZ,才可能為15S8計(jì)算機(jī)中常作的碼制有原碼、反碼和補(bǔ)碼()9若不使用MCS51片內(nèi)存器引腳EA必須接地()10十進(jìn)制數(shù)29的8位補(bǔ)碼表示為11100010()14簡(jiǎn)答1何謂單片機(jī)單片機(jī)與一般微型計(jì)算機(jī)相比,具有哪些特點(diǎn)答單片機(jī)是在一塊集成電路上把CPU、存儲(chǔ)器、定時(shí)器/計(jì)數(shù)器及多種形式的I/O接口集成在一起而構(gòu)成的微型計(jì)算機(jī)。它與通用微型計(jì)算機(jī)相比,具有如下特點(diǎn)(1)單片機(jī)的程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器是分工的,前者為ROM,后者為RAM;(2)采用面向控制的指令系統(tǒng),控制功能強(qiáng);(3)多樣化的I/O接口,多功能的I/O引腳;(4)產(chǎn)品系列齊全,功能擴(kuò)展性強(qiáng);(5)功能是通用的,像一般微處理機(jī)那樣可廣泛地應(yīng)用在各個(gè)方面。2單片機(jī)主要應(yīng)用在哪些領(lǐng)域答單片機(jī)的應(yīng)用范圍很廣泛,諸如智能化家用電器、儀器儀表、工業(yè)控制、計(jì)算機(jī)外部設(shè)備、智能機(jī)器人、電信及導(dǎo)航等方面。3在各種系列的單片機(jī)中,片內(nèi)ROM的配置有幾種形式用戶應(yīng)根據(jù)什么原則來(lái)選用答各種類型的單片機(jī)片內(nèi)程序存儲(chǔ)器的配置形式主要有以下幾種形式(1)掩膜(MSAK)ROM型單片機(jī)內(nèi)部具有工廠掩膜編程的ROM,ROM中的程序只能由單片機(jī)制造廠家用掩膜工藝固化,用戶不能修改ROM中的程序。例如MCS51系列的8051。掩膜ROM單片機(jī)適合于大批量生產(chǎn)的產(chǎn)品。用戶可委托芯片生產(chǎn)廠家采用掩膜方法將程序制作在芯片的ROM。(2)EPROM型單片機(jī)內(nèi)部具有紫外線可擦除電可編程的只讀存儲(chǔ)器,用戶可以自行將程序?qū)懭氲叫酒瑑?nèi)部的EPROM中,也可以將EPROM中的信息全部擦除。擦去信息的芯片還可以再次寫(xiě)入新的程序,允許反復(fù)改寫(xiě)。例如MCS51系列的8751。EPROM型單片機(jī)使用比較方便,但價(jià)格較高,適合于研制產(chǎn)品或結(jié)構(gòu)要求簡(jiǎn)單的小批量產(chǎn)品。(3)無(wú)ROM型單片機(jī)內(nèi)部沒(méi)有程序存儲(chǔ)器,它必須連接程序存儲(chǔ)器才能組成完整的應(yīng)用系統(tǒng)。例如MCS51系列的
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 西藏航空接待管理辦法
- 就業(yè)專項(xiàng)服務(wù)管理辦法
- 福州企業(yè)門禁管理辦法
- 電量電費(fèi)退補(bǔ)管理辦法
- 土建施工企業(yè)管理辦法
- 煤礦培訓(xùn)教師課件
- 肩關(guān)節(jié)影像技術(shù)課件下載
- 肝膽外科護(hù)理教學(xué)課件
- 肝癌介入護(hù)理課件
- 東城區(qū)中考一模數(shù)學(xué)試卷
- 甩手運(yùn)動(dòng)原理課題研究報(bào)告
- 皮膚腫物培訓(xùn)演示課件
- 糖尿病胃輕癱的護(hù)理查房課件
- 冬蟲(chóng)夏草的人工栽培程序
- 太陽(yáng)完整分享
- 多孔硅酸鈣材料的制備
- (完整)工程竣工驗(yàn)收單-范本
- 游戲俱樂(lè)部群公告范本
- 啟東市地圖南通市啟東市鄉(xiāng)鎮(zhèn)街道地圖高清矢量可填充編輯地圖PPT模板
- 非暴力溝通(完整版)
- 對(duì)越自衛(wèi)反擊戰(zhàn)課件
評(píng)論
0/150
提交評(píng)論