




下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
單片機(jī)習(xí)題答案單片機(jī)習(xí)題答案單片機(jī)習(xí)題答案xxx公司單片機(jī)習(xí)題答案文件編號(hào):文件日期:修訂次數(shù):第1.0次更改批準(zhǔn)審核制定方案設(shè)計(jì),管理制度一1.除了單片機(jī)這一名稱之外,單片機(jī)還可稱為微控制器和嵌入式控制器。2.單片機(jī)與普通微型計(jì)算機(jī)的不同之處在于其將CPU、存儲(chǔ)器、和I/O口3部分集成于一塊芯片上。3.8051與8751的區(qū)別是CA.內(nèi)部數(shù)據(jù)存儲(chǔ)單元數(shù)目不同 B.內(nèi)部數(shù)據(jù)存儲(chǔ)器的類型不同C.內(nèi)部程序存儲(chǔ)器的類型不同 D.內(nèi)部寄存器的數(shù)目不同4.在家用電器中使用單片機(jī)應(yīng)屬于微計(jì)算機(jī)的B。A.輔助設(shè)計(jì)應(yīng)用;B.測(cè)量、控制應(yīng)用 ;C.?dāng)?shù)值計(jì)算應(yīng)用;D.?dāng)?shù)據(jù)處理應(yīng)用5.微處理器、微計(jì)算機(jī)、微處理機(jī)、CPU、單片機(jī)它們之間有何區(qū)別答:微處理器、微處理機(jī)和CPU都是中央處理器的不同稱謂;而微計(jì)算機(jī)、單片機(jī)都是一個(gè)完整的計(jì)算機(jī)系統(tǒng),單片機(jī)特指集成在一個(gè)芯片上的用于測(cè)控目的的單片微計(jì)算機(jī)。6.MCS-51系列單片機(jī)的基本型芯片分別為哪幾種它們的差別是什么答:MCS-51系列單片機(jī)的基本型芯片分別是8031、8051和8751。它們的差別是在片內(nèi)程序存儲(chǔ)器上。8031無(wú)片內(nèi)程序存儲(chǔ)器,8051片內(nèi)有4KB的程序存儲(chǔ)器ROM,而8751片內(nèi)集成有4KB的程序存儲(chǔ)器EPROM。7.為什么不應(yīng)當(dāng)把51系列單片機(jī)稱為MCS-51系列單片機(jī)答:因?yàn)镸CS-51系列單片機(jī)中的“MCS”是Intel公司生產(chǎn)的單片機(jī)的系列符號(hào),而51系列單片機(jī)是指世界各個(gè)廠家生產(chǎn)的所有與8051的內(nèi)核結(jié)構(gòu)、指令系統(tǒng)兼容的單片機(jī)。8.AT89C51單片機(jī)相當(dāng)于MCS-51系列單片機(jī)中的哪一種型號(hào)的產(chǎn)品答:相當(dāng)于MCS-51系列中的87C51,只不過(guò)是AT89C51芯片內(nèi)的4KBFlash存儲(chǔ)器取代了87C51片內(nèi)的4KB的EPROM。二1.在AT89C51單片機(jī)中,如果采用6MHz晶振,一個(gè)機(jī)器周期為2μs2.AT89C51單片機(jī)的機(jī)器周期等于12個(gè)時(shí)鐘振蕩周期。3.內(nèi)部RAM中,位地址為40H、88H的位,該位所在字節(jié)的字節(jié)地址分別為28H;88H4.片內(nèi)字節(jié)地址為2AH單元的最低位的位地址是50H;片內(nèi)字節(jié)地址為88H單元的最低位的位地址是88H。5.若A中的內(nèi)容為63H,那么,P標(biāo)志位的值為0。6.AT89C51單片機(jī)復(fù)位后,R4所對(duì)應(yīng)的存儲(chǔ)單元的地址為04H,因上電時(shí)PSW
=
00H。這時(shí)當(dāng)前的工作寄存器區(qū)是0組工作寄存器區(qū)。7.內(nèi)部RAM中,可作為工作寄存器區(qū)的單元地址為00HH~1FH。8.通過(guò)堆棧操作實(shí)現(xiàn)子程序調(diào)用,首先要把PC的內(nèi)容入棧,以進(jìn)行斷點(diǎn)保護(hù)。調(diào)用返回時(shí),再進(jìn)行出棧保護(hù),把保護(hù)的斷點(diǎn)送回到PC。9.單片機(jī)的PC是16位的,因此其尋址的范圍為64KB。10.判斷下列錯(cuò)錯(cuò)對(duì)對(duì)項(xiàng)說(shuō)法是正確的。A.AT89C51單片機(jī)的CPU是由RAM和EPROM組成的B.區(qū)分片外程序存儲(chǔ)器和片外數(shù)據(jù)存儲(chǔ)器的最可靠的方法是看其位于地址范圍的低端還是高端C.在AT89C51單片機(jī)中,為使準(zhǔn)雙向的I/O口工作在輸入方式,必須保證它被事先預(yù)置為1D.PC可以看成是程序存儲(chǔ)器的地址指針11.判斷以下有關(guān)PC和DPTR的結(jié)論對(duì)對(duì)錯(cuò)對(duì)是正確的。A.DPTR是可以訪問(wèn)的,而PC不能訪問(wèn)B.它們都是16位寄存器C.在單片機(jī)運(yùn)行時(shí),它們都具有自動(dòng)加“1”的功能D.DPTR可以分為2個(gè)8位的寄存器使用,但PC不能12.判斷下列說(shuō)法對(duì)錯(cuò)錯(cuò)項(xiàng)是正確的。A.程序計(jì)數(shù)器PC不能為用戶編程時(shí)直接訪問(wèn),因?yàn)樗鼪](méi)有地址B.內(nèi)部RAM的位尋址區(qū),只能供位尋址使用,而不能供字節(jié)尋址使用C.AT89C51單片機(jī)共有21個(gè)特殊功能寄存器,它們的位都是可用軟件設(shè)置的,因此,是可以進(jìn)行位尋址的。13.PC的值是錯(cuò)錯(cuò)對(duì)錯(cuò)。A.當(dāng)前正在執(zhí)行指令的前一條指令的地址B.當(dāng)前正在執(zhí)行指令的地址C.當(dāng)前正在執(zhí)行指令的下一條指令的地址D.控制器中指令寄存器的地址14.判斷下列說(shuō)法對(duì)對(duì)錯(cuò)錯(cuò)是正確的。A.PC是一個(gè)不可尋址的特殊功能寄存器B.單片機(jī)的主頻越高,其運(yùn)算速度越快C.在AT89C51單片機(jī)中,一個(gè)機(jī)器周期等于1sD.特殊功能寄存器內(nèi)存放的是棧頂首地址單元的內(nèi)容15.AT89C51單片機(jī)的片內(nèi)都集成了哪些功能部件各個(gè)功能部件的最主要的功能是什么(1)1個(gè)微處理器(CPU);(2)128個(gè)數(shù)據(jù)存儲(chǔ)器(RAM)單元;(3)4KBFlash程序存儲(chǔ)器;(4)4個(gè)8位可編程并行I/O口(P0口、P1口、P2口、P3口);(5)1個(gè)全雙工串行口;(6)2個(gè)16位定時(shí)器/計(jì)數(shù)器;(7)一個(gè)中斷系統(tǒng),5個(gè)中斷源,2個(gè)優(yōu)先級(jí);(8)21個(gè)特殊功能寄存器(SFR)。16.說(shuō)明AT89C51單片機(jī)的引腳的作用,該引腳接高電平和低電平時(shí)各有何種功能答:當(dāng)腳為高電平時(shí),單片機(jī)讀片內(nèi)程序存儲(chǔ)器(4KBFlash),但在PC值超過(guò)0FFFH(即超出4KB地址范圍)時(shí),將自動(dòng)轉(zhuǎn)向讀外部程序存儲(chǔ)器內(nèi)的程序。當(dāng)腳為低電平時(shí),對(duì)程序存儲(chǔ)器的讀操作只限定在外部程序存儲(chǔ)器,地址為0000H~FFFFH,片內(nèi)的4KBFlash程序存儲(chǔ)器不起作用。17.請(qǐng)寫出這些單元的入口地址及對(duì)應(yīng)的中斷源。答:64KB程序存儲(chǔ)器空間中有5個(gè)特殊單元分別對(duì)應(yīng)于5個(gè)中斷源的中斷服務(wù)程序的入口地址,見(jiàn)下表。表5個(gè)中斷源的中斷入口地址入口地址中斷源0003H外部中斷0()000BH定時(shí)器0(T0)0013H外部中斷1()001BH定時(shí)器1(T1)0023H串行口18.當(dāng)AT89C51單片機(jī)運(yùn)行出錯(cuò)或程序陷入死循環(huán)時(shí),如何擺脫困境答:按下復(fù)位按鈕。三1.在基址加變址尋址方式中,以A作為變址寄存器,以PC或DPTR作為基址寄存器。2.指令格式是由操作碼和操作數(shù)組成,也可僅由操作碼組成。3.假定累加器A中的內(nèi)容為30H,執(zhí)行指令1000H: MOVCA,@A+PC后,把程序存儲(chǔ)器1031H單元的內(nèi)容送入累加器A中。4.在AT89C51單片機(jī)中,PC和DPTR都用于提供地址,但PC是為訪問(wèn)程序存儲(chǔ)器提供地址,而DPTR是為訪問(wèn)數(shù)據(jù)存儲(chǔ)器提供地址。5.在寄存器間接尋址方式中,其“間接”體現(xiàn)在指令中寄存器的內(nèi)容不是操作數(shù),而是操作數(shù)的地址。6.已知程序執(zhí)行前有(A)
=
02H,(SP)
=
52H,(51H)
=
FFH,(52H)
=
FFH。下述程序執(zhí)行后,(A)
=50H,(SP)
=50H,(51H)
=30H,(52H)
=50H,(PC)
=5030H。POP DPHPOP DPLMOV DPTR,#4000HRL AMOV B,AMOVC A,@A+DPTRPUSH AccMOV A,BINC AMOVC A,@A+DPTRPUSH AccRETORG 4000HDB 10H,80H,30H,50H,30H,50H7.假定(A)
=
83H,(R0)
=
17H,(17H)
=
34H,執(zhí)行以下指令后,(A)
=0CBH。ANL A,#17HORL 17H,AXRL A,@R0CPL A8.假設(shè)(A)
=
55H,(R3)
=
0AAH,在執(zhí)行指令“ANLA,R5”后,(A)
=
00H,(R3)
=
0AAH。9.如果(DPTR)
=
507BH,(SP)
=
32H,(30H)
=
50H,(31H)
=
5FH,(32H)
=
3CH,則執(zhí)行下列指令后,(DPH)
=3CH,(DPL)
=
5FH,(SP)
=
50H。POP DPHPOP DPLPOP SP10.假定,(SP)
=
60H,(A)
=
30H,(B)
=
70H,執(zhí)行下列指令后,SP的內(nèi)容為62H,61H單元的內(nèi)容為30H,62H單元的內(nèi)容為70H。PUSH AccPUSH B11.判斷下列說(shuō)法對(duì)對(duì)錯(cuò)項(xiàng)是正確的。A.立即尋址方式是被操作的數(shù)據(jù)本身就在指令中,而不是它的地址在指令中B.指令周期是執(zhí)行一條指令的時(shí)間C.指令中直接給出的操作數(shù)稱為直接尋址12.判斷以下指令的正誤。(1)MOV28H,@R2(2)DECDPTR(3)INCDPTR(4)CLRR0(5)CPLR5(6)MOVR0,R1(7)PHSHDPTR(8)MOVF0,C(9)MOVF0,(10)MOVXA,@R1(11)MOVC,30H(12)RLCR0答:(1)錯(cuò)(2)錯(cuò)(3)對(duì)(4)錯(cuò)(5)錯(cuò)(6)錯(cuò)(7)錯(cuò)(8)對(duì)(9)錯(cuò)(10)對(duì)
(11)對(duì)(12)錯(cuò)。13.訪問(wèn)SFR,可使用哪些尋址方式答:只能使用直接尋址方式。14.下列程序段的功能是什么PUSH AccPUSH BPOP AccPOP B答:A的內(nèi)容與B的內(nèi)容互換。15.寫出完成如下要求的指令,但是不能改變未涉及位的內(nèi)容。(1)把,,和清“0”。(2)把累加器A的中間4位清“0”。(3)使和置“1”。答: (1)ANLA,#87H(2)ANLA,#0C3H(3)ORLA,#0CH16.借助本書中的表3-2(指令表),對(duì)如下指令代碼(十六進(jìn)制)進(jìn)行手工反匯編。FFC0E0E5F0F0答: MOV R7,APUSH AMOV A,BMOVX @DPTR,A四1.已知程序執(zhí)行前有A
=
02H,SP
=
42H,(41H)
=
FFH,(42H)
=
FFH。下述程序執(zhí)行后,A
=80H;SP
=
40H;(41H)
=
50H;(42H)
=
80H;PC
=
8050H。POP DPHPOP DPLMOV DPTR,#3000HRL AMOV B,AMOVC A,@A+DPTRPUSH AccMOV A,BINC AMOVC A,@A+DPTRPUSH AccRETORG 3000HDB 10H,80H,30H,80H,50H,80H2.說(shuō)明偽指令的作用。“偽”的含義是什么常用偽指令的功能如何答:偽指令不屬于指令系統(tǒng)中的匯編語(yǔ)言指令,它是程序員發(fā)給匯編程序的控制命令。只有在匯編前的源程序中才有偽指令。所以“偽”體現(xiàn)在匯編后,偽指令沒(méi)有相應(yīng)的機(jī)器代碼產(chǎn)生。3.解釋手工匯編、機(jī)器匯編、交叉匯編、反匯編術(shù)語(yǔ)概念。答:(1)手工匯編:手工編程,首先把程序用助記符指令寫出,然后通過(guò)查指令的機(jī)器代碼表,逐個(gè)把助記符指令“翻譯”成機(jī)器代碼,這種人工查表“翻譯”指令的方法稱為手工匯編。(2)機(jī)器匯編:是借助于微型計(jì)算機(jī)上的軟件(匯編程序)來(lái)代替手工匯編,完成把助記符指令“翻譯”成機(jī)器代碼的工作。(3)交叉匯編:使用微型計(jì)算機(jī)來(lái)完成匯編,而匯編后得到的機(jī)器代碼卻是在另一臺(tái)計(jì)算機(jī)(這里是單片機(jī))上運(yùn)行,稱這種機(jī)器匯編為交叉匯編。(4)反匯編:將二進(jìn)制的機(jī)器代碼語(yǔ)言程序翻譯成匯編語(yǔ)言源程序的過(guò)程。4.下列程序段經(jīng)匯編后,從1000H開始的各有關(guān)存儲(chǔ)單元的內(nèi)容是什么ORG1000HTAB1 EQU1234HTAB2 EQU3000HDB "MAIN"DW TAB1,TAB2,70H答:4D41494E1234300000705.設(shè)計(jì)子程序時(shí)應(yīng)注意哪些問(wèn)題答:在編寫子程序時(shí)應(yīng)注意以下問(wèn)題。(1)子程序的第一條指令前必須有標(biāo)號(hào)。(2)使用子程序調(diào)用指令時(shí),有兩條調(diào)用指令可供使用。①使用絕對(duì)調(diào)用指令(ACALLaddr11)要注意,被調(diào)用的子程序的首地址與本絕對(duì)調(diào)用指令的下一條指令的高5位地址相同,即只能在同一2KB程序存儲(chǔ)區(qū)內(nèi)。②使用長(zhǎng)調(diào)用指令(LCALLaddr16)時(shí),addr16為直接調(diào)用的子程序的目標(biāo)地址,也就是說(shuō),被調(diào)用的子程序可放置在64KB程序存儲(chǔ)器區(qū)的任意位置。(3)子程序結(jié)構(gòu)中必須用到堆棧,堆棧通常用來(lái)保護(hù)斷點(diǎn)和現(xiàn)場(chǎng)保護(hù)。(4)子程序返回主程序時(shí),最后一條指令必須是RET指令。(5)子程序可以嵌套,即主程序可以調(diào)用子程序,子程序又可以調(diào)用另外的子程序。6.試編寫一個(gè)程序,將內(nèi)部RAM中45H單元的高4位清“0”,低4位置“1”。答:參考程序如下:MOV A,45HANL A,#0FHORL A,#0FHMOV 45H,A7.試編寫程序,查找在內(nèi)部RAM的30H~50H單元中是否有0AAH這一數(shù)據(jù)。若有,則將51H單元置為“01H”;若未找到,則將51H單元置為“00H”。答:參考程序如下:START: MOV R0,#30HMOV R2,#20HLOOP: MOV A,@R0CJNE A,#0AAH,NEXTMOV 51H,#01HLJMP EXITNEXT: INC R0DJNZ R2,LOOPMOV 51H,#00HEXIT: RET8.試編寫程序,查找在內(nèi)部RAM的20H~40H單元中出現(xiàn)“00H”這一數(shù)據(jù)的次數(shù),并將查找到的結(jié)果存入41H單元。答:參考程序如下:START: MOV 41H,#0MOV R0,#20HMOV R2,#20HLOOP: MOV A,@R0JNZ NEXTINC 41HNEXT: INC R0DJNZ R2,LOOPRET9.在內(nèi)部RAM的21H單元開始存有一組單字節(jié)無(wú)符號(hào)數(shù),數(shù)據(jù)長(zhǎng)度為20H,編寫程序,要求找出最大數(shù)存入MAX單元。答:略:10.若SP
=
60H,標(biāo)號(hào)LABEL所在的地址為3456H。LCALL指令的地址為2000H,執(zhí)行如下指令2000HLCALLLABEL后,堆棧指針SP和堆棧內(nèi)容發(fā)生了哪些變化PC的值等于什么如果將指令LCALL直接換成ACALL是否可以如果換成ACALL指令,可調(diào)用的地址范圍是什么答: (1)SP=SP+1=61H (61H)=PC的低字節(jié)=03HSP=SP+1=62H(62H)=PC的高字節(jié)=20H(2)PC=3456H(3)可以(4)2KB=2048Byte五1.外部中斷1的中斷入口地址為0013H。定時(shí)器1的中斷入口地址為001BH。2.若(IP)
=
00010100B,則優(yōu)先級(jí)最高者為外部中斷1,最低者為定時(shí)器T1。3.AT89C51單片機(jī)響應(yīng)中斷后,產(chǎn)生長(zhǎng)調(diào)用指令LCALL,執(zhí)行該指令的過(guò)程包括:首先把PC的內(nèi)容壓入堆棧,以進(jìn)行斷點(diǎn)保護(hù),然后把長(zhǎng)調(diào)用指令的16位地址送PC,使程序執(zhí)行轉(zhuǎn)向程序存儲(chǔ)器中的中斷地址區(qū)。4.判斷AT89C51單片機(jī)對(duì)外中斷請(qǐng)求源響應(yīng)的最快響應(yīng)時(shí)間為3個(gè)機(jī)器周期對(duì)。5.下列說(shuō)法正確的是D。A.各中斷源發(fā)出的中斷請(qǐng)求信號(hào),都會(huì)標(biāo)記在AT89C51單片機(jī)的IE寄存器中B.各中斷源發(fā)出的中斷請(qǐng)求信號(hào),都會(huì)標(biāo)記在AT89C51單片機(jī)的TMOD寄存器中C.各中斷源發(fā)出的中斷請(qǐng)求信號(hào),都會(huì)標(biāo)記在AT89C51單片機(jī)的IP寄存器中D.各中斷源發(fā)出的中斷請(qǐng)求信號(hào),都會(huì)標(biāo)記在AT89C51單片機(jī)的TCON與SCON寄存器中6.中斷查詢確認(rèn)后,在下列各種AT89C51單片機(jī)運(yùn)行情況下,能立即進(jìn)行響應(yīng)的是D。A.當(dāng)前正在進(jìn)行高優(yōu)先級(jí)中斷處理B.當(dāng)前正在執(zhí)行RETI指令C.當(dāng)前指令是DIV指令,且正處于取指令的機(jī)器周期D.當(dāng)前指令是MOVA,R37.在AT89C51單片機(jī)的中斷請(qǐng)求源中,需要外加電路實(shí)現(xiàn)中斷撤銷的是答:A。A.電平方式的外部中斷B.脈沖方式的外部中斷C.外部串行中斷D.定時(shí)中斷。8.下列說(shuō)法正確的是A、C、D。A.同一級(jí)別的中斷請(qǐng)求按時(shí)間的先后順序響應(yīng)B.同一時(shí)間同一級(jí)別的多中斷請(qǐng)求將形成阻塞,系統(tǒng)無(wú)法響應(yīng)C.低優(yōu)先級(jí)中斷請(qǐng)求不能中斷高優(yōu)先級(jí)中斷請(qǐng)求,但是高優(yōu)先級(jí)中斷請(qǐng)求能中斷低優(yōu)先級(jí)中斷請(qǐng)求D.同級(jí)中斷不能嵌套9.中斷服務(wù)子程序與普通子程序有哪些相同和不同之處答:RETI指令在返回時(shí),同時(shí)清除中斷系統(tǒng)中相應(yīng)的優(yōu)先級(jí)觸發(fā)器,以允許下次中斷,而RET指令則沒(méi)有這個(gè)操作。除了這一點(diǎn)兩條指令不同外,其他操作都相同。10.AT89C51單片機(jī)響應(yīng)外部中斷的典型時(shí)間是多少在哪些情況下,CPU將推遲對(duì)外部中斷請(qǐng)求的響應(yīng)課本77頁(yè),典型時(shí)間最短3個(gè)周期最長(zhǎng)8個(gè)周期。推遲響應(yīng):剛好開始執(zhí)行RETI訪問(wèn)IPIE已經(jīng)在處理同級(jí)或更高級(jí)中斷。11.編寫外部中斷1為跳沿觸發(fā)的中斷初始化程序段。答: SETB IT1SETB EX1SETB EA12.中斷響應(yīng)的條件是什么1總中斷允許2中斷源發(fā)出中斷請(qǐng)求3該中斷源的中斷允許4無(wú)同級(jí)或更高級(jí)正在服務(wù)。13.某系統(tǒng)有3個(gè)外部中斷源1、2、3,當(dāng)某一中斷源發(fā)出的中斷請(qǐng)求使引腳變?yōu)榈碗娖綍r(shí)(見(jiàn)圖5-10),便要求CPU進(jìn)行處理,它們的優(yōu)先處理次序由高到低為3、2、1,中斷處理程序的入口地址分別為1000H、1100H、1200H。試編寫主程序及中斷服務(wù)子程序(轉(zhuǎn)至相應(yīng)的中斷處理程序的入口即可)。答:參見(jiàn)電路如圖5-10所示,參考程序如下:ORG 0000HLJMP MAINORG 0013HLJMP INT_EX1ORG 0030HMAIN: CLR IT0 ;采用電平觸發(fā),低電平有效中斷SETB EX1 ;允許外部中斷1SETB EAWAIT: LJMP WAIT ;用原地跳轉(zhuǎn)代替一段用戶程序;以下為外部中斷1服務(wù)子程序INT_EX1: JNB ,NEXT1 ;=0,不是3號(hào)中斷,跳轉(zhuǎn)NEXT1LJMP INT_IR3;是3號(hào)中斷,跳轉(zhuǎn)到對(duì)應(yīng)的中斷處理程序NEXT1: JNB ,NEXT2 ;=0,不是2號(hào)中斷,跳轉(zhuǎn)NEXT2LJMP INT_IR2 ;跳轉(zhuǎn)到2號(hào)中斷處理程序NEXT2: LJMP INT_IR1 ;跳轉(zhuǎn)到1號(hào)中斷處理程序ORG 1000HINT_IR3: 插入相應(yīng)中斷處理程序RETI ;中斷返回ORG 1100HINT_IR2: 插入相應(yīng)中斷處理程序RETI ;中斷返回ORG 1200HINT_IR1: 插入相應(yīng)中斷處理程序RETI ;中斷返回六1.下列對(duì)錯(cuò)錯(cuò)錯(cuò)項(xiàng)說(shuō)法是正確的。A.特殊功能寄存器SCON,與定時(shí)器/計(jì)數(shù)器的控制無(wú)關(guān)B.特殊功能寄存器TCON,與定時(shí)器/計(jì)數(shù)器的控制無(wú)關(guān)C.特殊功能寄存器IE,與定時(shí)器/計(jì)數(shù)器的控制無(wú)關(guān)D.特殊功能寄存器TMOD,與定時(shí)器/計(jì)數(shù)器的控制無(wú)關(guān)2.如果采用的晶振的頻率為3MHz,定時(shí)器/計(jì)數(shù)器工作在方式0、1、2下,其最大定時(shí)時(shí)間各為多少答:因?yàn)闄C(jī)器周期所以定時(shí)器/計(jì)數(shù)器工作方式0下,其最大定時(shí)時(shí)間為(答案不準(zhǔn)確)同樣可以求得,方式1下的最大定時(shí)時(shí)間為;方式2下的最大定時(shí)時(shí)間為。3.定時(shí)器/計(jì)數(shù)器用作定時(shí)器模式時(shí),其計(jì)數(shù)脈沖由誰(shuí)提供定時(shí)時(shí)間與哪些因素有關(guān)答:定時(shí)器/計(jì)數(shù)器用作定時(shí)器時(shí),其計(jì)數(shù)脈沖由系統(tǒng)振蕩器產(chǎn)生的內(nèi)部時(shí)鐘信號(hào)12分頻后提供。定時(shí)時(shí)間與時(shí)鐘頻率和定時(shí)初值有關(guān)。4.定時(shí)器/計(jì)數(shù)器用作計(jì)數(shù)器模式時(shí),對(duì)外界計(jì)數(shù)頻率有何限制答:由于確認(rèn)1次負(fù)跳變要花2個(gè)機(jī)器周期,即24個(gè)振蕩周期,因此外部輸入的計(jì)數(shù)脈沖的最高頻率為系統(tǒng)振蕩器頻率的1/24。5.采用定時(shí)器/計(jì)數(shù)器T0對(duì)外部脈沖進(jìn)行計(jì)數(shù),每計(jì)數(shù)100個(gè)脈沖后,T0轉(zhuǎn)為定時(shí)工作方式。定時(shí)1ms后,又轉(zhuǎn)為計(jì)數(shù)工作方式,如此循環(huán)不止。假定AT89C51單片機(jī)的晶體振蕩器的頻率為6MHz,請(qǐng)使用方式1實(shí)現(xiàn),要求編寫程序。答:定時(shí)器/計(jì)數(shù)器T0在計(jì)數(shù)和定時(shí)工作完成后,均采用中斷方式工作。除了第一次計(jì)數(shù)工作方式設(shè)置在主程序完成外,后面的定時(shí)或計(jì)數(shù)工作方式分別在中斷程序完成,用一標(biāo)志位識(shí)別下一輪定時(shí)器/計(jì)數(shù)器T0的工作方式。參考程序如下:ORG 0000HLJMP MAINORG 000BHLJMP IT0PMAIN: MOV TMOD,#06H ;定時(shí)器/計(jì)數(shù)器T0為計(jì)數(shù)方式2MOV TL0,#156 ;計(jì)數(shù)100個(gè)脈沖的初值賦值MOV TH0,#156SETB GATE ;打開計(jì)數(shù)門SETB TR0 ;啟動(dòng)T0,開始計(jì)數(shù)SETB ET0 ;允許T0中斷SETB EA ;CPU開中斷CLR F0 ;設(shè)置下一輪定時(shí)方式的標(biāo)志位WAIT: AJMP WAITIT0P: CLR EA ;CPU關(guān)中斷JB F0,COUNT ;F0=1,轉(zhuǎn)計(jì)數(shù)方式設(shè)置MOV TMOD,#00H ;定時(shí)器/計(jì)數(shù)器T0為定時(shí)方式0MOV TH0,#0FEH ;定時(shí)1ms初值賦值MOV TL0,#0CHSETB EARETICOUNT: MOV TMOD,#06HMOV TL0,#156SETB EARETI6.定時(shí)器/計(jì)數(shù)器的工作方式2有什么特點(diǎn)適用于哪些應(yīng)用場(chǎng)合答:定時(shí)器/計(jì)數(shù)器的工作方式2具有自動(dòng)恢復(fù)初值的特點(diǎn),適用于精確定時(shí),如波特率的產(chǎn)生。7.編寫程序,要求使用T0,采用方式2定時(shí),在輸出周期為400μs,占空比為10∶1的矩形脈沖。答:根據(jù)題意,從輸出的矩形脈沖的高低電平的時(shí)間為10∶1,則高低電平的時(shí)間分別為μs和μs。如果系統(tǒng)采用6MHz晶振,Tcy=2μs,因此高低電平輸出取整,則約為364μs和36μs。參考程序如下:ORG 0000HLJMP MAINORG 000BHLJMP IT0PMAIN: MOV TMOD,#02H ;定時(shí)器/計(jì)數(shù)器T0為定時(shí)方式2MOV TL0,#4AH ;定時(shí)364s初值賦值SETB TR0 ;啟動(dòng)T0,開始計(jì)數(shù)SETB ET0 ;允許T0中斷SETB EA ;CPU開中斷SETB WAIT: AJMP WAITIT0P: CLR EACLR ;關(guān)中斷MOV R0,#9DLY: DJNZ R0,DLY ;延時(shí)36sMOV TL0,#4AH ;定時(shí)364s初值賦值SETB SETB EARETI8.一個(gè)定時(shí)器的定時(shí)時(shí)間有限,如何用兩個(gè)定時(shí)器的串行定時(shí)來(lái)實(shí)現(xiàn)較長(zhǎng)時(shí)間的定時(shí)答:方法1,在第一個(gè)定時(shí)器的中斷程序里關(guān)閉本定時(shí)器的中斷程序,設(shè)置和打開另一個(gè)定時(shí)器;在另一個(gè)定時(shí)器的中斷程序中關(guān)閉本定時(shí)中斷,設(shè)置和打開另一個(gè)定時(shí)器。這種方式的定時(shí)時(shí)間為兩個(gè)定時(shí)器定時(shí)時(shí)間的和。方法2,一個(gè)作為定時(shí)器,在定時(shí)中斷后產(chǎn)生一個(gè)外部計(jì)數(shù)脈沖(比如由接產(chǎn)生),另一個(gè)定時(shí)器工作在計(jì)數(shù)方式。這樣兩個(gè)定時(shí)器的定時(shí)時(shí)間為一個(gè)定時(shí)器的定時(shí)時(shí)間乘以另一個(gè)定時(shí)器的計(jì)數(shù)值。9.當(dāng)定時(shí)器T0用于方式3時(shí),應(yīng)該如何控制定時(shí)器T1的啟動(dòng)和關(guān)閉答:由T1()口控制定時(shí)器T1的啟動(dòng)和關(guān)閉。10.定時(shí)器/計(jì)數(shù)器測(cè)量某正單脈沖的寬度,采用何種方式可得到最大量程若時(shí)鐘頻率為6MHz,求允許測(cè)量的最大脈沖寬度是多少答:采用方式1定時(shí)工作方式。最大脈沖寬度為。11.編寫一段程序,功能要求:當(dāng)引腳的電平正跳變時(shí),對(duì)的輸入脈沖進(jìn)行計(jì)數(shù);當(dāng)引腳的電平負(fù)跳變時(shí),停止計(jì)數(shù),并將計(jì)數(shù)值寫入R0、R1(高位存R1,低位存R0)。答:將的輸入脈沖接入INT0,即使用T0計(jì)數(shù)器完成對(duì)口的脈沖計(jì)數(shù)。參考程序如下:ORG 0000HLJMP MAINORG 000BHLJMP IT0PMAIN: JNB ,MAINMOV TMOD,#05H ;定時(shí)器/計(jì)數(shù)器T0為計(jì)數(shù)方式1SETB TR0 ;啟動(dòng)T0,開始計(jì)數(shù)SETB ET0 ;允許T0中斷SETB EA ;CPU開中斷WAIT: JB ,WAITCLR EACLR TR0MOV R1,TH0MOV R0,TL0AJMP $IT0P: INC R2RETI12.THx與TLx(x
=
0,1)是普通寄存器還是計(jì)數(shù)器其內(nèi)容可以隨時(shí)用指令更改嗎更改后的新值是立即刷新還是等當(dāng)前計(jì)數(shù)器計(jì)滿后才能刷新答:THx與TLx(x=0,1)是由特殊功能寄存器構(gòu)成的計(jì)數(shù)器,其內(nèi)容可以隨時(shí)用指令更改,更改后的新值立即刷新。但在讀THx、TLx值時(shí),應(yīng)該先讀THx值,后讀TLx,再讀THx值。若兩次讀得THx值相同,則可確定讀得的內(nèi)容正確。若前后兩次讀得的THx值有變化,再重復(fù)上述過(guò)程。七1.幀格式為1個(gè)起始位,8個(gè)數(shù)據(jù)位和1個(gè)停止位的異步串行通信方式是方式1。2.在串行通信中,收發(fā)雙方對(duì)波特率的設(shè)定應(yīng)該是相等的。3.下列選項(xiàng)中,對(duì)對(duì)錯(cuò)對(duì)對(duì)是正確的。A.串行口通信的第9數(shù)據(jù)位的功能可由用戶定義B.發(fā)送數(shù)據(jù)的第9數(shù)據(jù)位的內(nèi)容是在SCON寄存器的TB8位中預(yù)先準(zhǔn)備好的C.串行通信幀發(fā)送時(shí),指令把TB8位的狀態(tài)送入發(fā)送SBUF中D.串行通信接收到的第9位數(shù)據(jù)送SCON寄存器的RB8中保存E.串行口方式1的波特率是可變的,通過(guò)定時(shí)器/計(jì)數(shù)器T1的溢出率設(shè)定4.通過(guò)串行口發(fā)送或接收數(shù)據(jù)時(shí),在程序中應(yīng)使用C。A.MOVC指令 B.MOVX指令 C.MOV指令 D.XCHD指令5.串行口工作方式1的波特率是(C)。A.固定的,為fosc/32 B.固定的,為fosc/16C.可變的,通過(guò)定時(shí)器/計(jì)數(shù)器T1的溢出率設(shè)定 D.固定的,為fosc/646.在異步串行通信中,接收方是如何知道發(fā)送方開始發(fā)送數(shù)據(jù)的答:當(dāng)接收方檢測(cè)到RXD引腳上的有效的負(fù)跳變時(shí),即可知道發(fā)送方開始發(fā)送數(shù)據(jù)。7.串行口有幾種工作方式有幾種幀格式各種工作方式的波特率如何確定答:串行口有4種工作方式:方式0、方式1、方式2、方式3。有3種幀格式,方式2和3具有相同的幀格式。方式0的發(fā)送和接收都以fosc/12為固定波特率。方式1的波特率=2SMOD/32×定時(shí)器T1的溢出率。方式2的波特率=2SMOD/64×fosc。方式3的波特率=2SMOD/32×定時(shí)器T1的溢出率。8.假定串行口串行發(fā)送的字符格式為1個(gè)起始位、8個(gè)數(shù)據(jù)位、1個(gè)奇校驗(yàn)位、1個(gè)停止位,請(qǐng)畫出傳送字符“B”(42H)的幀格式。答:傳送的字符“B”的幀格式如圖所示(先低位后高位)。起始位
01000010校驗(yàn)位停止位為什么定時(shí)器/計(jì)數(shù)器T1用作串行口波特率發(fā)生器時(shí),常采用方式2若已知時(shí)鐘頻率、通信波特率,如何計(jì)算其初值答:(1)因?yàn)槎〞r(shí)器/計(jì)數(shù)器在方式2下,初值可以自動(dòng)重裝,這樣在進(jìn)行串口波特率發(fā)生器設(shè)置時(shí),就避免了重裝參數(shù)的操作,且減少了重裝參數(shù)的誤差。(2)已知時(shí)鐘頻率、通信波特率,根據(jù)公式(7-3),即可計(jì)算出初值。若晶體振蕩器為,串行口工作于方式1,波特率為4800bit/s,寫出用T1作為波特率發(fā)生器的方式控制字和計(jì)數(shù)初值。答:經(jīng)計(jì)算,初值為FAH。控制字: ANL TMOD,#0F0HORL MOD,#20HMOV TH1,#0FAHMOV TL1,#0FAHMOV SCON,#40H11.簡(jiǎn)述利用串行口進(jìn)行多機(jī)通信的原理。答:以方式1為例。發(fā)送過(guò)程:數(shù)據(jù)位由TXD端輸出,發(fā)送1幀信息為10位,當(dāng)CPU執(zhí)行1條數(shù)據(jù)寫發(fā)送緩沖器SBUF的指令,就啟動(dòng)發(fā)送。發(fā)送開始時(shí),內(nèi)部發(fā)送控制信號(hào)SEND變?yōu)橛行В瑢⑵鹗嘉幌騎XD輸出,此后,每經(jīng)過(guò)1個(gè)TX時(shí)鐘周期,便產(chǎn)生1個(gè)移位脈沖,并由TXD輸出1個(gè)數(shù)據(jù)位。8位數(shù)據(jù)位全部輸出完畢后,置1中斷標(biāo)志位TI,然后SEND信號(hào)失效。接收過(guò)程:當(dāng)檢測(cè)到起始位的負(fù)跳變時(shí),則開始接收。接收時(shí),定時(shí)控制信號(hào)有2種。其中一種是位檢測(cè)器采樣脈沖,它的頻率是RX時(shí)鐘的16倍。也就是在1位數(shù)據(jù)期間,有16個(gè)采樣脈沖,以波特率的16倍速率采樣RXD引腳狀態(tài),當(dāng)采樣到RXD端從1到0的跳變時(shí)就啟動(dòng)檢測(cè)器,接收的值是3次連續(xù)采樣,取其中2次相同的值,以確認(rèn)是否是真正的起始位的開始,這樣能較好地消除干擾引起的影響,以保證可靠無(wú)誤地開始接收數(shù)據(jù)。12.使用AT89C51的串行口按工作方式1進(jìn)行串行數(shù)據(jù)通信,假定波特率為2400bit/s,以中斷方式傳送數(shù)據(jù),請(qǐng)編寫全雙工通信程序。答:請(qǐng)參考教材的P115-P117程序,并作適當(dāng)改動(dòng)。13.某AT89C51單片機(jī)串行口,傳送數(shù)據(jù)的幀格式由1個(gè)起始位(0)、7個(gè)數(shù)據(jù)位、1個(gè)偶校驗(yàn)和1個(gè)停止位(1)組成。當(dāng)該串行口每分鐘傳送1
800個(gè)字符時(shí),試計(jì)算出它的波特率。答:串口每秒鐘傳送的字符為1800/60=30個(gè)字符/秒,所以波特率為30個(gè)字符/秒×10位1個(gè)字符=300b/s。14.為什么AT89C51單片機(jī)串行口的方式0幀格式?jīng)]有起始位(0)和停止位(1)答:串行口的方式0為同步移位寄存器輸入/輸出方式,常用于外接移位寄存器,以擴(kuò)展并行I/O口,一般不用于兩個(gè)89C51之間的串行通信。該方式以fosc/12的固定波特率從低位到高位發(fā)送或接收數(shù)據(jù)。15.直接以TTL電平串行傳輸數(shù)據(jù)的方式有什么缺點(diǎn)答:優(yōu)點(diǎn)是連線簡(jiǎn)單,缺點(diǎn)是抗干擾性能差,傳輸距離短。八1.單片機(jī)存儲(chǔ)器的主要功能是存儲(chǔ)程序,數(shù)據(jù)。2.假設(shè)外部數(shù)據(jù)存儲(chǔ)器2000H單元的內(nèi)容為80H,執(zhí)行下列指令后累加器A中的內(nèi)容為80H。。MOVP2,#20HMOVR0,#00HMOVXA,@R03.在存儲(chǔ)器擴(kuò)展中,無(wú)論是線選法還是譯碼法最終都是為擴(kuò)展芯片的片選端提供片選控制信號(hào)。4.起止范圍為0000H~3FFFH的存儲(chǔ)器的容量是16KB。5.在AT89C51單片機(jī)中,PC和DPTR都用于提供地址,但PC是為訪問(wèn)程序存儲(chǔ)器提供地址,而DPTR是為訪問(wèn)數(shù)據(jù)存儲(chǔ)器提供地址。6.11條地址線可選2KB個(gè)存儲(chǔ)單元,16KB存儲(chǔ)單元需要14條地址線。7.4KBRAM存儲(chǔ)器的首地址若為0000H,則末地址為0FFFH。8.區(qū)分AT89C51單片機(jī)片外程序存儲(chǔ)器和片外數(shù)據(jù)存儲(chǔ)器的最可靠方法是DA.看其位于地址范圍的低端還是高端B.看其離AT89C51單片機(jī)芯片的遠(yuǎn)近C.看其芯片的型號(hào)是ROM還是RAMD.看其是與信號(hào)連接還是與信號(hào)連接9.試編寫一個(gè)程序(如將05H和06H拼為56H),設(shè)原始數(shù)據(jù)放在片外數(shù)據(jù)區(qū)2001H單元和2002H單元中,按順序拼裝后的單字節(jié)數(shù)放入2002H。答:本題主要考察對(duì)外部存儲(chǔ)器的讀、寫操作的編程,只要正確使用MOVX指令就可以了。編程思路:首先讀取2001H的值,保存在寄存器A中,將寄存器A的高4位和低4位互換,再屏蔽掉低4位然后將寄存器A的值保存到30H中,然后再讀取2002H的值,保存在寄存器A中,屏蔽掉高4位,然后將寄存器A的值與30H進(jìn)行“或運(yùn)算”,將運(yùn)算后的結(jié)果保存在2002H中。ORG 0000HMAIN: MOV DPTR,#2001H ;設(shè)置數(shù)據(jù)指針的初值MOVX A,@DPTR ;讀取2001H的值SWAP AANL A,#0F0H ;屏蔽掉低4位MOV 30H,A ;保存AINC DPTR ;指針指向下一個(gè)片外RAM單元MOVX A,@DPTR ;讀取2002H的值A(chǔ)NL A,#0FH ;屏蔽掉高4位ORL A,30H ;進(jìn)行拼裝MOVX @DPTR,A ;保存到2002H片外RAM單元END10.編寫程序,將外部數(shù)據(jù)存儲(chǔ)器中的4000H~40FFH單元全部清“0”。答:本題主要考察對(duì)外部數(shù)據(jù)塊的寫操作;編程時(shí)只要注意循環(huán)次數(shù)和MOVX指令的使用就可以了。ORG 0000HMAIN: MOV A,#0 ;0給AMOV 0,#0FFH ;設(shè)置循環(huán)次數(shù)MOV DPTR,#4000H ;設(shè)置數(shù)據(jù)指針的初值LOOP: MOVX @DPTR,A ;當(dāng)前單元清“0”INC DPTR ;指向下一個(gè)單元DJNZ R0,LOOP ;是否結(jié)束END11.在AT89C51單片機(jī)系統(tǒng)中,外接程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器共16位地址線和8位數(shù)據(jù)線,為何不會(huì)發(fā)生沖突答:因?yàn)榭刂菩盘?hào)線的不同。
外擴(kuò)的RAM芯片既能讀出又能寫入,所以通常都有讀、寫控制引腳,記為和,它們分別與89C51的和引腳相連。外擴(kuò)的EPROM在正常使用中只能讀出,不能寫入,故EPROM芯片沒(méi)有寫入控制引腳,只有讀出引腳,記為,該引腳與89C51單片機(jī)的相連。12.請(qǐng)寫出圖8-14中4片程序存儲(chǔ)器27128各自所占的地址空間。答:圖中采用了譯碼法。4片地址分別為0000H~3FFFH、4000H~7FFFH、8000H~BFFFH、C000H~FFFFH。13.現(xiàn)有AT89C51單片機(jī)、74LS373鎖存器、1片2764EPROM和兩片6264RAM,請(qǐng)用它們組成一個(gè)單片機(jī)應(yīng)用系統(tǒng),要求如下:(1)畫出硬件電路連線圖,并標(biāo)注主要引腳;(2)指出該應(yīng)用系統(tǒng)程序存儲(chǔ)器空間和數(shù)據(jù)存儲(chǔ)器空間各自的地址范圍。答:P135圖8-20,采用線選法分別連片選。14.圖8-22(a)所示為AT89C51單片機(jī)中存儲(chǔ)器的地址空間分布圖。題圖8-22(b)為存儲(chǔ)器的地址譯碼電路,為使地址譯碼電路按題圖8-22(a)所示的要求進(jìn)行正確尋址,要求畫出:(1)A組跨接端子的內(nèi)部正確連線圖。(2)B組跨接端子的內(nèi)部正確連線圖。AB十一1.對(duì)于電流輸出的D/A轉(zhuǎn)換器,為了得到電壓的轉(zhuǎn)換結(jié)果,應(yīng)使用由運(yùn)算放大器構(gòu)成的I/V轉(zhuǎn)換電路。2.使用雙緩沖同步方式的D/A轉(zhuǎn)換器,可實(shí)現(xiàn)多路模擬信號(hào)的同步輸出。3.判斷下列說(shuō)法是否正確錯(cuò)對(duì)錯(cuò)對(duì)。(1)“轉(zhuǎn)換速度”這一指標(biāo)僅適用于A/D轉(zhuǎn)換器,D/A轉(zhuǎn)換器不用考慮“轉(zhuǎn)換速度”問(wèn)題。(2)ADC0809可以利用“轉(zhuǎn)換結(jié)束”信號(hào)EOC向AT89C51單片機(jī)發(fā)出中斷請(qǐng)求。(3)輸出模擬量的最小變化量稱為A/D轉(zhuǎn)換器的分辨率。(4)對(duì)于周期性的干擾電壓,可使用雙積分型A/D轉(zhuǎn)換器,并選擇合適的積分元件,可
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025西安健康工程職業(yè)學(xué)院輔導(dǎo)員考試試題及答案
- 2025煙臺(tái)汽車工程職業(yè)學(xué)院輔導(dǎo)員考試試題及答案
- 2025紅河職業(yè)技術(shù)學(xué)院輔導(dǎo)員考試試題及答案
- 2025福建林業(yè)職業(yè)技術(shù)學(xué)院輔導(dǎo)員考試試題及答案
- 趣味科學(xué)課課件
- T/ZHCA 002-2018化妝品控油功效測(cè)試方法
- 貴州黔東南州劍河縣順誠(chéng)公司招聘筆試題庫(kù)2025
- 西藏自治區(qū)煙草專賣局(公司)招聘筆試題庫(kù)2025
- 山東濰坊濱海聯(lián)合水務(wù)有限公司招聘筆試題庫(kù)2025
- 2025年職業(yè)衛(wèi)生與環(huán)境保護(hù)的考試試卷及答案
- 2025年軍隊(duì)文職統(tǒng)一考試《專業(yè)科目》會(huì)計(jì)學(xué)試卷真題答案解析
- 2025年鐵路集裝箱市場(chǎng)前景分析
- 2024-2025統(tǒng)編版一年級(jí)下冊(cè)道德與法治期末考試卷及參考答案
- 2024-2025中國(guó)商旅管理白皮書
- 小學(xué)心理健康家長(zhǎng)會(huì)課件
- 2025年公共安全管理考試試題及答案
- 淮安城市介紹旅游攻略家鄉(xiāng)介紹
- 2025年安全月主要責(zé)任人講安全課件三:安全月主題宣講課件
- 光伏施工安全培訓(xùn)
- 國(guó)企崗位筆試題目及答案
- 餐廳廚房5S管理
評(píng)論
0/150
提交評(píng)論