版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、作業(yè)習題答案單片機應用技術部分習題與參考答案第1章 單片機概述1-1什么是嵌入式系統(tǒng)?嵌入式系統(tǒng)的硬件和軟件各包括哪些內(nèi)容? 答: 以應用為中心,以計算機技術為基礎,軟/硬件可剪裁,針對具體應用系統(tǒng),對功能、可靠性,成本、體積、功耗嚴格要求的專用計算機系統(tǒng)稱為嵌入式計算機系統(tǒng)。簡稱為嵌入式系統(tǒng)。 嵌入式系統(tǒng)的硬件包括:嵌入式處理器、存儲器和外部設備器件、輸入輸出接口、圖形控制器等。軟件包括操作系統(tǒng)和應用程序。 嵌入式系統(tǒng)是專用的計算機系統(tǒng),嵌入式系統(tǒng)的核心是嵌入式處理器,單片機是嵌入式處理器的典型代表。 1-2 什么叫單片機?一個完整的單片機芯片至少有哪些部件?答:將微處理器(CP
2、U)、存儲器、定時/計數(shù)器及輸入輸出接口電路等部件集成在一塊集成電路上,稱為單片微型計算機,簡稱單片機。一個完整的單片機芯片至少有中央處理器(CPU)、隨機存儲器(RAM)、只讀存儲器(ROM)、定時/計數(shù)器及I/O接口等部件。1-3嵌入式處理器有何特點?嵌入式處理器分為哪幾類?答:嵌入式處理器對實時和多任務系統(tǒng)有和強的支持能力、對存儲區(qū)保護功能強、具有可擴展的處理器結構及低功耗等特點。 嵌入式處理器分為:嵌入式微處理器、微控制器、嵌入式DSP處理器和片上系統(tǒng)等。1-4 單片機系統(tǒng)的開發(fā)過程分為那幾步進行?答:1.硬件的設計與調(diào)試。2 應用程序的設計和調(diào)試。3系統(tǒng)聯(lián)調(diào)。4程序的固化。5.脫機運
3、行。1-5 Intel 公司的主要單片機產(chǎn)品分為哪幾大系列?各系列的區(qū)別何在?答:Intel公司的MCS-48系列、MCS-51系列、MCS-96系列產(chǎn)品;48系列的單片機在片內(nèi)集成4位CPU,片內(nèi)含有多種I/O接口,有的根據(jù)不同用途還配有許多專用接口,價格便宜,控制功能強。51系列的單片機在片內(nèi)集成8位CPU、片內(nèi)RAM為128字節(jié),ROM為4K字節(jié),4個并行I/O口、2個16位定時/計數(shù)器、串行接口、5個中斷源。96系列單片機CPU為16位,片內(nèi)RAM為232字節(jié),ROM為8K字節(jié),片內(nèi)帶有高速輸入輸出部件,多通道10位A/D轉(zhuǎn)換部件,中斷處理為8級。1-6 敘述51子系列與5
4、2子系列的區(qū)別?答:51子系列包含8031/8051/8751三種型號,它們的基本組成、基本性能都相同,都具有一個8位CPU、片內(nèi)數(shù)據(jù)存儲器RAM128B、2個16位定時計數(shù)器、有5個中斷源,一個全雙工串行接口,它們之間的區(qū)別在于片內(nèi)程序存儲器配置:8031片內(nèi)沒有ROM,使用時需在片外接EPROM。8051片內(nèi)含有4KB的掩模ROM,其中的程序是生產(chǎn)廠家制作芯片時燒制的。8751片內(nèi)含有4KB的EPROM,用戶可以先用紫外線擦除器擦除,然后再利用開發(fā)機或編程器寫入新的程序。52子系列包含8032/8052/8752三種型號,52子系列與51子系列的區(qū)別在于:片內(nèi)ROM和RAM的容量比8051
5、子系列各增加一倍,另外,增加了一個定時/計數(shù)器和一個中斷源。 第2章 MCS-51系列單片機的基本結構2-1 畫出微型計算機基本結構框圖,簡述各部分的基本功能。 答:見教材圖2-2。2-2 MCS-51單片機的引腳有何功能?在使用8031時如何接法?使用8751時如何接法?答:引腳是片內(nèi)外程序存儲器的選擇信號。當端保持高電平時,訪問內(nèi)部程序存儲器,但在PC(程序計數(shù)器)值超過0FFFH(對于8051/8751/80C51)或1FFFH(對于8052)時,將自動轉(zhuǎn)向訪問外部程序存儲器。當端保持低電平時,不管是否有內(nèi)部程序存儲器,則只訪問外部程序存儲器。由于803
6、1片內(nèi)沒有程序存儲器,所以在使用8031時,引腳必須接低電平。2-3 微型計算機的存儲器普林斯頓結構和哈弗結構有什么不同?答:按微型計算機的存儲器地址空間的不同分配形式分為普林斯頓結構和哈弗結構。普林斯頓結構的特點是計算機只有一個地址空間。CPU訪問ROM和RAM采用相同的指令。哈弗結構將ROM和RAM安排在相互獨立的兩個地址空間,ROM和RAM可以有相同的地址,但采用不同的指令訪問。51系列單片機采用哈弗結構。2-4 微型計算機存儲器的地址線與存儲的容量有什么關系?如果存儲器的地址線有13條,則存儲的容量為多大?答:存儲的容量=2n ,(n: 存儲器的地址線的條數(shù))。213=8KB.2-5
7、89C51單片機的存儲器從物理結構上分別可劃分為幾個空間?89C51單片機采用何種方式區(qū)分內(nèi)外程序存儲器和內(nèi)外數(shù)據(jù)存儲器?答:89C51單片機的存儲器從物理結構上分別內(nèi)外程序存儲器和內(nèi)外數(shù)據(jù)存儲器。內(nèi)外程序存儲器采用引腳/EA、/PSEN接到不同的電平區(qū)分,內(nèi)外數(shù)據(jù)存儲器采用引腳/RD、/WR連接和不同的指令加以區(qū)分。2-6 MCS-51單片機的內(nèi)部存儲空間是怎樣分配的?答:MCS-51單片機的內(nèi)部存儲空間分為數(shù)據(jù)存儲器和程序存儲器。內(nèi)部數(shù)據(jù)存儲器:共256字節(jié)單元,包括低128個單元和高128個單元。低128字節(jié)又分成3個區(qū)域:工作寄存器區(qū)(00H1FH),位尋址區(qū)(20H2FH
8、)和用戶RAM區(qū)(30H7FH)。高128字節(jié)是供給特殊功能寄存器使用的,因此稱之為特殊功能寄存器區(qū)。內(nèi)部程序存儲器:在8031片內(nèi)無程序存儲器,8051片內(nèi)具有4KB掩模ROM,8751片內(nèi)具有4KBEPROM。2-7 如何從MCS-51單片機的4個工作寄存器組中選擇當前工作寄存器組?答:MCS-51單片機提供了4組工作寄存器,對于當前工作寄存器組的選擇,是通過PSW中的RS1和RS0來進行選擇。具體關系如下表: RS1RS0當前寄存器組00第0組工作寄存器01第1組工作寄存器10第2組工作寄存器11第3組工作寄存器 2-8 內(nèi)部RAM低128個單元是如何劃分
9、的?答:內(nèi)部RAM低128個單元按用途分成3個區(qū)域:工作寄存器區(qū)(00H1FH),位尋址區(qū)(20H2FH)和用戶RAM區(qū)(30H7FH)。2-9 DPTR是什么寄存器?它的作用是什么?它由哪幾個寄存器組成?答:DPTR是數(shù)據(jù)指針寄存器,是一個16位寄存器,用來存放16位存儲器的地址,以便對外部數(shù)據(jù)存儲器RAM中的數(shù)據(jù)進行操作。DPTR由高位字節(jié)DPH和低位字節(jié)DPL組成。2-10 什么是堆棧?堆棧有何作用?為什么在程序初始化時要對SP重新賦值?答:所謂堆棧,顧名思義就是一種以“堆”的方式工作的“?!?。堆棧是在內(nèi)存中專門開辟出來的按照“先進后出,后進先出”的原則進行存取的RAM區(qū)域。
10、堆棧的用途是保護現(xiàn)場和斷點地址。在8051單片機復位后,堆棧指針SP總是初始化到內(nèi)部RAM地址07H。從08H開始就是8051的堆棧區(qū),這個位置與工作寄存器組1的位置相同。因此,在實際應用中,通常要根據(jù)需要在程序初始化時對SP重新賦值,以改變堆棧的位置。2-11 試述程序狀態(tài)字寄存器PSW各位的含義。答:程序狀態(tài)字寄存器PSW是8位寄存器,用于存放程序運行的狀態(tài)信息。CY(PSW.7):進位標志位。AC(PSW.6):輔助進位標志位。F0(PSW.5)、F1(PSW.1):用戶標志位。RS1(PSW.4)、RS0(PSW.3):工作寄存器組選擇位。OV(PSW.2):溢出標志位。P
11、(PSW.0):奇偶標志位。2-12 P0、P1、P2、P3口的結構有何不同?使用時要注意什么?各口都有什么用途?答:P0口由一個所存器、兩個三態(tài)輸入緩沖器、場效應管、控制與門、反相器和轉(zhuǎn)換開關組成;作為輸出口時,必須外接上拉電阻才能有高電平輸出,作為輸入口時,必須先向鎖存器寫“1”;作為普通I/O口使用或低8位地址/數(shù)據(jù)總線使用。P1口內(nèi)沒有轉(zhuǎn)換開關,但有上拉電阻;只用作普通I/O口使用。P2口比P1口多了一個轉(zhuǎn)換控制開關;作為普通I/O口使用或高8位地址線使用。P3口比P1口增加了與非門和緩沖器;具有準雙向I/O功能和第二功能。上述4個端口在作為輸入口使用時,應注意必須先向端口
12、寫“1”。2-13 請說出指令周期、機器周期、狀態(tài)和拍的概念。當晶振頻率為12MHz、8MHz時,一個機器周期為多少微秒?答:指令周期:執(zhí)行一條指令所需要的時間。機器周期:CPU完成一個基本操作所需要的時間。狀態(tài):振蕩脈沖經(jīng)過二分頻后,得到的單片機的時鐘信號。拍:振蕩脈沖的周期。當晶振頻率為12MHz時,一個機器周期為1s;當晶振頻率為8MHz時,一個機器周期為1.5s。2-14 什么是單片機復位?復位后單片機的狀態(tài)如何?答:在時鐘電路工作后,只要在單片機的RESET引腳上出現(xiàn)24個時鐘震蕩脈沖(兩個機器周期)以上的高電平,單片機就能實現(xiàn)復位。復位后,CPU和系統(tǒng)都處于
13、一個確定的初始狀態(tài),在這種狀態(tài)下,所有的專用寄存器都被賦予默認值,除SP=07H,P0P3口為FFH外,其余寄存器均為0。程序指針Pc=0000H。 第3章 MCS-51系列單片機的指令系統(tǒng)3-1 MCS-51系列單片機指令格式是怎樣的? 各有何含義?答:單片機指令格式由操作碼和操作數(shù)組成。操作碼說明指令操作性質(zhì),操作數(shù)說明操作對象。3-2 MCS-51系列單片機有哪幾種尋址方式?各種尋址方式所對應的寄存器或存儲器尋址空間如何?答:MCS-51系列單片機提供了7種尋址方式:(1)立即尋址:操作數(shù)在指令中直接給出,立即數(shù)前面有“#”。(2)直接尋址:在指令中直接給出操作數(shù)地址。對應片
14、內(nèi)低128個字節(jié)單元和特殊功能寄存器。(3)寄存器尋址:以寄存器的內(nèi)容作為操作數(shù)。對應的寄存器有:R0R7、A、AB寄存器和數(shù)據(jù)指針DPTR。(4)寄存器間接尋址:以寄存器的內(nèi)容作為RAM地址,該地址中的內(nèi)容才是操作數(shù)。對應片內(nèi)RAM的低128個單元采用R0、R1作為間址寄存器,片外RAM低256個單元可用R0、R1作為間址寄存器,整個64KB空間可用DPTR作為間址寄存器。(5)變址尋址:以DPTR或PC作為基址寄存器,以累加器A作為變址寄存器,并以兩者內(nèi)容相加形成的16位地址作為操作數(shù)地址。對應片內(nèi)、片外的ROM空間。(6)相對尋址:只在相對轉(zhuǎn)移指令中使用。對應片內(nèi)、片外的ROM空間。(7
15、)位尋址:對可尋址的位單獨進行操作。對應位尋址區(qū)20H2FH單元的128位和字節(jié)地址能被8整除的特殊功能寄存器的相應位。3-4 若訪問特殊功能寄存器,可使用那些尋址方式?答:直接尋址方式。3-5 若訪問外部RAM單元,可使用那些尋址方式? 答:寄存器間接尋址方式。3-6 若訪問內(nèi)部RAM單元,可使用那些尋址方式?答:立即尋址方式,直接尋址方式,寄存器尋址方式,寄存器間接尋址方式,位尋址方式。3-7 若訪問內(nèi)外程序存儲器,可使用那些尋址方式?答:變址尋址方式3-8 外部數(shù)據(jù)傳送指令有幾條?試比較下面每一組中兩條指令的區(qū)別。(1) MOVX A,R1 , MOVX A,DPTR(2) MOVX A
16、,DPTR , MOVX DPTR,A(3) MOV R0 ,A , MOVX R0,A(4) MOVC A,A+DPTR , MOVX A,DPTR 答:外部數(shù)據(jù)傳送指令有6條:MOVX A,DPTR MOVX DPTR,AMOVX A,Ri MOVX Ri,AMOVC A,A+DPTR MOVC A,A+PC(1)MOVX
17、; A,R1 MOVX A,DPTR都是訪問片外RAM,但二者尋址范圍不同。前1條指令是對片外RAM低256個單元的“讀”操作。后1條指令是對片外RAM64KB空間的“讀”操作。(2)MOVX A,DPTR MOVX DPTR,A訪問空間相同,但數(shù)據(jù)傳送方向不同。前1條指令是對片外RAM64KB空間的“讀”操作。后1條指令是對片外RAM64KB空間的“寫”操作。(3)M
18、OV R0,A MOVX R0,A二者訪問的空間不同。前1條指令是對片內(nèi)RAM低128個單元的“寫”操作。后1條指令是對片外RAM低256個單元的“寫”操作。(4)MOVC A,A+DPTR MOVX A,DPTR二者訪問的空間不同,尋址方式不同。前1條指令是變址尋址方式,對ROM操作。后1條指令是寄存器間接尋址方式,對片外RAM操作。3-9 已知(30H)=40H,(40H)=10H,(10H)=32H,(P1)=EFH,試寫出執(zhí)行以下程序段后有關單元的內(nèi)容。M
19、OV R0, #30HMOV A, R0MOV R1, A MOV B, R1MOV R1, P1MOV P2, P1MOV 10H,#20HMOV 30H, 10H答: R030H,(R0)=30HA(R0),(A)=40HR1(A),(R1)=40HB(R1),(B)=10H(R1)(P1),(R1)=(40H)=EFHP2(P1),(P2)=EFH10H20H,(10H)=20H30H(10H),(30H)=20H結果:(R0)=30H,(A)=40H,(R1)=40H,(B)=1
20、0H,(40H)=EFH,(P2)=EFH,(10H)=20H,(30H)=20H3-10 試寫出完成以下數(shù)據(jù)傳送的的指令序列。(1)R1的內(nèi)容傳送R0;(2)片外RAM 60H單元的內(nèi)容送入R0;(3)片外RAM 60H單元的內(nèi)容送入片內(nèi)RAM 40H單元;(4)片外RAM 1000H單元的內(nèi)容送入片外RAM 40H單元;(5)ROM 2000H單元的內(nèi)容送入R2;(6)ROM 2000H單元的內(nèi)容送入片內(nèi)RAM 40H單元;(7)ROM 2000H單元的內(nèi)容送入片外RAM 0200H單元。答:(1)由于在工作寄存器與工作寄存器之間不能直接傳送數(shù)據(jù),所以需要借助累加器A。MOV
21、A,R1MOV R0,A(2)片外RAM向片內(nèi)RAM傳送數(shù)據(jù),不能直接進行,需要借助累加器A。由于片外RAM是60H單元,地址小于FFH,所以間址寄存器使用Ri即可。MOV R1,#60HMOVX A,R1MOV R0,A(3) MOV R1,#60HMOVX A,R1MOV 40H,A(4)片外數(shù)據(jù)不能直接送入片外單元,需要先將片外數(shù)據(jù)讀入累加器,然后再送到片外。MOV DPTR,#1000HMOVX A,DPTRMOV R1,#40HMOVX R1
22、,A(5)ROM中的數(shù)據(jù)需要使用查表指令才能讀出來,所以此題不能使用一般的傳送指令從ROM中讀數(shù)據(jù)。MOV DPTR,#2000HMOV A,#00HMOVC A,A+DPTRMOV R2,A(6) MOV DPTR,#2000H MOV A,#00H
23、 MOVC A,A+DPTR MOV 40H,A(7) MOV DPTR,#2000H MOV A,#00H
24、 MOVC A,A+DPTR MOV DPTR,#0200H MOVX DPTR,A3-11 試編程,將外部RAM 1000H單元中的數(shù)據(jù)與內(nèi)部RAM 60H單元中的數(shù)據(jù)相互交換。答:片外RAM與片內(nèi)RAM之間的數(shù)據(jù)傳送不能直接進行,需要借助累加器A。數(shù)據(jù)交換需要使用數(shù)據(jù)交換指令XCH。
25、 MOV DPTR,#1000H MOVX A,DPTR XCH A,60H MOVX DPTR
26、,A3-12 已知(A)=5BH,(R1)=40H,(40H)=C3H,(PSW)=81H,試寫出各條指令的執(zhí)行結果,并說明程序狀態(tài)字的狀態(tài)。(1) XCH A, R1 (2) XCH A, 40H(3) XCH A,R1
27、60; (4) XCHD A, R1(5) SWAP A (6) ADD A, R1(7) ADD A, 40H
28、0; (8) ADD A, #40H(9) ADDC A, 40H (10) SUBB A, 40H (11)SUBB A, #40H 答:(1)結果:(A)(R1),(A)=40H,(R1)=5BH,(PSW)=81H(2)結果:(A)(40H),(A)=C3H,(40H)=5BH,(PSW)=80H(3)結果:(A)(R1),(A)=C3H,(R1)=(
29、40H)=5BH,(PSW)=80H(4)結果:(A)03(R1)03,(A)=53H,(R1)=(40H)=CBH,(PSW)=80H(5)結果:(A)03(A)47,(A)=B5H,(PSW)=81H(6)結果:A(A)+(R1),(A)=9BH,(PSW)=05H(7)結果:A(A)+(40H),(A)=1EH,(PSW)=80H(8)結果:A(A)+40H,(A)=9BH,(PSW)=05H(9)結果:A(A)+(40H)+CY,(A)=1FH,(PSW)=81H(10)結果:A(A)-(40H)-CY,(A)=97H,(PSW)=85H(11)結果:A(A)- 40H - CY,(A
30、)=1AH,(PSW)=01H3_13 已知(A)=5BH,(R1)=40H,(40H)=C3H,(PSW)=81H,試寫出各條指令的執(zhí)行結果,并說明程序狀態(tài)字的狀態(tài)。(1) XCH A, R1 (2) XCH A, 40H(3) XCH A,R1
31、160; (4) XCHD A, R1(5) SWAP A (6) ADD A, R1(7) ADD A, 40H
32、60; (8) ADD A, #40H(9) ADDC A, 40H (10) SUBB A, 40H (11)SUBB A, #40H 答:指令LJMP addr16是長轉(zhuǎn)移指令,指令中提供了16位目的地址,尋址范圍是64KB。指令AJMP
33、; addr11是絕對轉(zhuǎn)移指令,指令中11位目的地址,其中a7a0在第二字節(jié),a10a8則占據(jù)第一字節(jié)的高3位,尋址范圍是與PC當前值(本指令所在地址+本條指令所占用的字節(jié)數(shù)2)在同一個2K的區(qū)域內(nèi)。3-14 試分析以下兩段程序中各條指令的作用。程序執(zhí)行完將轉(zhuǎn)向何處? (1) MOV P1,#0CAH MOV A,#56H
34、 JB P1.2 ,L1 JNB ACC.3,L2
35、160; L1: L2: (2) MOV A,#43H
36、 JB ACC.2 ,L1 JBC ACC.6,L2
37、 L1: L2: 答:(1) MOV P1,#0CAH &
38、#160; ;P1CAH,P1=CAH=11001010B MOV A,#56H ;A56H,A=56H=01010110B JB P1.2,L1
39、0; ;若P1.2=1,則轉(zhuǎn)移至L1 JNB ACC.3,L2 ;若ACC.3=0,則轉(zhuǎn)移至L2 L1: L2: 執(zhí)行完本段程序后將轉(zhuǎn)移至L2,因為P1.2
40、=0,ACC.3=0,所以轉(zhuǎn)至L2。(2) MOV A,#43H ;A43H,A=43H=01000011B JB ACC.2,L1 ;若ACC.2=1,則轉(zhuǎn)移至L1
41、 JBC ACC.6,L2 ;若ACC.6=1,則轉(zhuǎn)移至L2,同時將ACC.6清零 L1: L2: 執(zhí)行完本段程序后將轉(zhuǎn)移至L2,因為ACC.2=0,ACC.6=1,所以轉(zhuǎn)至L2,并且將ACC.6清零。 第
42、4章 匯編語言程序設計4-1 什么是偽指令?偽指令和指令有何區(qū)別?它們的用途是什么4-2 基本程序結構有哪幾種?各有何特點?4-3 存放在內(nèi)部RAM的DATA單元中的變量X是一個無符號整數(shù),試編程計算下面函數(shù)的函數(shù)值并存放到內(nèi)部RAM的FUNC單元中。 答:
43、60; ORG 0300H MOV A,DATA CJNE A,#20,LOP1LOP1: JC LOP3
44、; CJNE A,#50,LOP2LOP2: JC LOP4 MOV B,#1 LJMP LOP5LOP3: MOV B,#2
45、60; LJMP LOP5LOP4: MOV B,#5LOP5: MUL AB MOV FUNC,A RET4-5 某單片機應用系統(tǒng)有4
46、5;4鍵盤,經(jīng)鍵盤掃描程序得到被按鍵的鍵值(00H0FH)存放在R2中,16個鍵的鍵處理程序入口地址分別為KEY0、KEY1、KEY2、KEY15。試編程實現(xiàn),根據(jù)被按鍵的鍵值,轉(zhuǎn)對應的鍵處理程序。答: ORG 0500H MOV DPTR,#JPTAB MOV A,R2
47、160; RL A JMP A+DPTR JPTAB: AJMP KEY0 AJMP KEY1
48、160; AJMP KEY2 AJMP KEY15KEY0: KEY1: KEY2: KEY15: 4-6 試編程將片內(nèi) 40H60H單元中內(nèi)容傳送到外部RAM以2000H為首地址的存儲區(qū)中。答: ORG
49、0; 0600H MOV R0,#40H MOV DPTR,#2000H MOV R7,#21HLOOP: MOV A,
50、R0 MOVX DPTR,A INC R0 INC DPTR DJNZ R7,LOOP
51、; RET4-7 試編程將片內(nèi) 40H60H單元中內(nèi)容傳送到外部RAM以2000H為首地址的存儲區(qū)中。答: ORG 0700H MOV DPTR,#DATA MOV R7,#10L
52、OOP: MOVX A,DPTR ORL A,#80H MOVX DPTR,A INC DPTR
53、 DJNZ R7,LOOP RET4-8 編寫程序?qū)⑼獠縍AM 3000H開始的13個單元中的數(shù)據(jù)隔一個傳送到內(nèi)部RAM 30H開始的區(qū)域。答: ORG 0800H MOV DPTR,#3000H
54、0; MOV R0,#30H MOV R7,#7LOOP: MOVX A,DPTR MOV R0,A INC
55、 DPTR INC DPTR INC R0 DJNZ R7,LOOP RET4-9
56、編程將片外RAM地址為1000H1030H的數(shù)據(jù)塊,全部搬遷到片內(nèi)RAM 30H60H中,并將原數(shù)據(jù)區(qū)全部清0。答: ORG 0900H MOV DPTR,#1000H MOV R1,#30H
57、 MOV R7,#31HLOOP: MOVX A,DPTR MOV R1,A CLR A MOVX DPTR,A
58、0; INC DPTR INC R1 DJNZ R7,LOOP RET4-10 試編程把長度為10H的字符串從內(nèi)部RAM
59、首地址為DAT1的存儲器中向外部RAM首地址為DAT2的存儲器進行傳送,一直進行到遇見字符CR或整個字符串傳送完畢結束。答: ORG 0A00H MOV R1,#DAT1 MOV DPTR,#DAT2
60、160; MOV R6,#10HLOOP1: MOV A,R1 CJNE A,#0DH,LOOP2 LJMP LOOP3LOOP2: MOVX DPTR,A
61、 INC R1 INC DPTR DJNZ R6,LOOP1LOOP3: RET4-11 設在外部RAM 2000H2004H單元中,存放有5個壓縮BCD碼,試編程將它們轉(zhuǎn)換成ASC碼,存放到以2005H單元為首地址的存儲區(qū)中。答: ORG
62、 1200H MOV DPTR,#2000H MOV R0,#30H MOV R7,#5LOP1: MOVX A,DPT
63、R ANL A,#0FH ADD A,#30H MOV R0,A INC
64、 R0 MOVX A,DPTR ANL A,#0F0H SWAP A ADD A,#30H
65、60; MOV R0,A INC R0 INC DPTR DJNZ R7,LOP1 &
66、#160; MOV DPTR,#2005H MOV R0,#30H MOV R7,#10LOP2: MOV A,R0
67、160; MOVX DPTR,A INC R0 INC DPTR DJNZ R7,LOP2
68、60; RET 4-12 已知內(nèi)部RAM 30H和40H單元分別存放著一個數(shù)a、b,試編寫程序計算a2 b2,并將結果送入30H單元。設a、b均是小于10的數(shù)。答: ORG 1400H MOV A,40H MOV
69、160; B,A MUL AB MOV 31H,A MOV A,30H MOV
70、60; B,A MUL AB CLR C SUBB A,31H MOV
71、30H,A RET4-13 P1口連接8個LED發(fā)光二極管,設計燈亮移位程序,要求8個發(fā)光二極管每次亮一個,點亮時間為40ms。順次一個一個地循環(huán)右移點亮,循環(huán)不止。答: ORG 1500H MOV A,#80HLOOP: MOV P1,A
72、 LCALL DEL RR A SJMP LOOPDEL: MOV R7,#100DEL1: MOV
73、0; R6,#198 DJNZ R6,$ DJNZ R7,DEL1 RET RET 第5章 定時/計數(shù)器5-1 51系列單片機的內(nèi)部設有幾個定時/
74、計數(shù)器?有哪幾種工作方式?由哪位選擇?不同方式下,脈沖來源是否一樣?答:51系列單片機的內(nèi)部設有兩個定時/計數(shù)器。分別有兩種工作方式:定時器方式和計數(shù)器方式。由TMOD(定時器模式控制寄存器)中的控制位進行選擇。定時器方式的脈沖來自于內(nèi)部時鐘脈沖,每個機器周期是計數(shù)器的值增1;計數(shù)器方式的脈沖來自于外部輸入引腳T0(P3.4)或T1(P3.5)。5-2 51系列單片機的定時/計數(shù)器有哪幾種工作模式?各有什么區(qū)別?答:51系列單片機的定時/計數(shù)器有四種工作模式。分別由TMOD中的M1和M0進行選擇。特點如下: M1 M0特
75、160; 點 0 0模式0。TLX中低5位與THX中的8位構成13位計數(shù)器。計滿溢出時,13位計數(shù)器回零。 0 1模式1。TLX與THX構成16位計數(shù)器。計滿溢出時,16位計數(shù)器回零。 1 0模式2。8位自動重裝載的定時/計數(shù)器,每當計數(shù)器TLX溢出時,THX中的內(nèi)容重新裝載到TLX中。 1 1模式3。對定時器0,分成2個8位計數(shù)器,對于定時器1,停止計數(shù)。 5-3&
76、#160; 51系列單片機的T0和T1在模式0中,都使用了計數(shù)器的哪些位?答:51系列單片機的T0和T1在模式0中,使用了TLX中低5位與THX中的8位構成13位計數(shù)器,TLX中的高3位棄之未用。5-4 51系列單片機的T0和T1在模式3時有何不同?答:對于T1,設置為模式3,將使它停止計數(shù)并保持原有的計數(shù)值,其作用如同使TR1=0,因此,沒有什么實質(zhì)意義。對于T0,設置為模式3時,16位計數(shù)器被分成兩個互相獨立的8位計數(shù)器TL0和TH0,其中TL0利用了定時/計數(shù)器0本身的一些控制位:、GATE、TR0、和TF0。它既可以按照計數(shù)方式工作,也可以按照定時方式工作。而TH0被規(guī)定只
77、可用作定時器方式,借用了T1的控制位TR1和TF1。5-5 試問當(TMOD)=27H時,是怎樣定義T0和T1的?答:(TMOD)=27H=00100111B此時,T1工作于模式2,定時方式(即波特率發(fā)生器方式)。T1工作于模式3,TL0和TH0同為計數(shù)方式。5-6 系統(tǒng)復位后執(zhí)行下述指令,試問T0的定時時間為多長?MOV TH0,#06H
78、160; MOV TL0,#00H SETB TR0
79、160; 答:單片機系統(tǒng)復位后(TMOD)=00H,即T0工作在模式0,使用的是TL0的低5位和TH0構成13位定時/計數(shù)器,由于(TH0)=06H,(TL0)=00H,所以定時的初值為:X=0000011000000B=192假設系統(tǒng)晶振頻率為6MHz,機器周期T=2s,則定時時間為:定時值=(M-X)T=(213-192)×2s=16000s=16ms5-7 已知51系列單片機的系統(tǒng)晶振頻率為6 MHZ,請利用定時器T和P1.2輸出矩形脈沖。答: ORG
80、0; 0000H LJMP START ORG 0200HSTART: MOV TMOD,#20H MOV TL1,#231
81、0; SETB TR1LOOP: SETB P1.2 MOV TH1,#81LOP1: JBC TF1,LOP2 SJMP LOP1LOP2:
82、CLR P1.2 MOV TH1,#231LOP3: JBC TF1,LOOP SJMP LOP3 END 第6章 串行接
83、口61 并行通信和串行通信各有什么特點?它們分別適用于什么場合?答: 計算機與外界信息交換的基本方式可分為并行通信與串行通信:并行通信是數(shù)據(jù)的各位同時傳送,并行通信的特點是傳送速度快,但不適用長距離傳輸;串行通信是數(shù)據(jù)的各位依次逐位傳送,串行通信的特點是傳送速度較慢,但傳輸距離較長。并行通信適合近距離的CPU之間或設備之間快速進行數(shù)據(jù)交換;串行通信適合長距離的CPU之間或設備之間進行數(shù)據(jù)交換,或近距離的慢速數(shù)據(jù)交換。62 什么是串行異步通信?它有哪些特點?串行異步通信的數(shù)據(jù)幀格式是怎樣的?答:異步通信依靠起始位、停止位、保持通信同步。特點是數(shù)據(jù)在線路上的傳送不連續(xù),傳送
84、時,字符間隔不固定,各個字符可以是連續(xù)傳送,也可以間斷傳送,這完全取決于通信協(xié)議或約定。 串行異步通信的數(shù)據(jù)幀格式如圖6-1:一位起始位“0”電平;其后是5位、6位、7位或8位數(shù)據(jù)位,低位在前,高位在后;后面是一位奇偶校驗位;最后是停止位“1”電平。 起始位D0D1D2D3D4D5D6D7奇偶校驗位停止位
85、0; 圖6-1 異步通信的數(shù)據(jù)幀格式63 串行通行有哪幾種數(shù)據(jù)傳送形式,試舉例說明。答:串行通信有3種數(shù)據(jù)傳送形式單工方式:數(shù)據(jù)傳送是單向的。半雙工方式:數(shù)據(jù)傳送是雙向的,在同一時間只能做一個方向的傳送。全雙工方式:數(shù)據(jù)傳送是雙向的,即可同時發(fā)送,又可同時接收。圖6-2串行通信數(shù)據(jù)傳送3種形式64 何謂波特率?某異步通信,串行口每秒傳送250個字符,每個字符由11位組成,其波特率應為多少?答:波特率表示每秒傳輸?shù)亩M制數(shù)據(jù)位數(shù)。
86、Fb11×2502750 其波特率應為2750bps。65 MCS-51單片機串行口有幾種工作模式?如何選擇?簡述其特點,并說明這幾種工作模式各用于什么場合?答:MCS-51單片機串行口有4種工作模式,由串行控制寄存器SCON 中的SM0、SM1 兩位組合來確定。模式0是同步位移寄存器方式,用于I/O口的串、并轉(zhuǎn)換。模式1是8位異步通信方式,楨格式10位,波特率可變,用于雙機通信。模式2是9位異步通信方式,楨格式11位,波特率固定,用于多機通信。模式3是9位異步通信方式,楨格式11位,波特率可變,用于多機遠距離通信。模式1、2、3的區(qū)別主要表現(xiàn)在楨
87、格式和波特率兩個方面。66 MCS-51單片機4種工作模式的波特率如何確定?答:模式0的波特率固定:fosc/12模式2的波特率固定:fosc/n(n=64或32)模式1、3的波特率可變:T1溢出率/n(n=32或16)610 設計一個MCS-51單片機的雙機通信系統(tǒng),并編寫程序?qū)⒓讬C片外RAM 2200H2250H的數(shù)據(jù)塊通過串行口傳送到乙機的片外RAM1400H1450H單元中。要求串行口工作在模式2,系統(tǒng)晶振為6 MHz,傳送時進行奇校驗;若出錯,置F0標志為1。答:串行口工作在模式2,確定SMOD1。未規(guī)定波特率,定時器初值任取,但兩機要保持一致。甲
88、機發(fā)送子程序:TXDA:MOV TMOD, #20H ;置T1定時器工作方式2 MOV TL1, #0FDH
89、0; ;置初值 MOV TH1, #0FDH ;置初值 SETB TR1
90、 ;啟動T1MOV SCON, #90H ;置串口方式2,允許接收,且SM2=0MOV PCON,
91、; #80H ;置SMOD=1(SMOD不能位操作)CLR ES ;禁止串行中斷MO
92、V DPTR, #2200H ;指發(fā)送數(shù)據(jù)區(qū)首地址MOV R2, #51H ;指發(fā)送
93、數(shù)據(jù)長度TRSA:MOVX A, DPTR ;讀一個數(shù)據(jù) MOV C,P MOV
94、TB8,C ;置校驗位MOV SBUF, A ;發(fā)送JNB &
95、#160; TI, $ ;等待一楨數(shù)據(jù)發(fā)送完畢CLR TI &
96、#160; ;清發(fā)送中斷標志INC DPTR ;指向下一字節(jié)單元DJNZ R2,
97、160; TRSA ;判數(shù)據(jù)發(fā)完否?未完繼續(xù)RET ;乙機接
98、收子程序:RXDB:MOV TMOD, #20H ;置T1定時器工作方式2 MOV TL1, #0FDH
99、160; ;置初值 MOV TH1, #0FDH ;置初值 SETB TR1
100、0; ;啟動T1MOV SCON, #90H ;置串行方式2,允許接收,且SM2=0MOV PCON,
101、60; #80H ;置SMOD=1(SMOD不能位操作)CLR ES ;禁止串行中斷
102、MOV DPTR, #1400H ;置接收數(shù)據(jù)區(qū)首地址MOV R2, #51H ;置接收數(shù)據(jù)長度
103、SETB REN ;啟動接收SETB F0
104、60; ;先置出錯標志F0為1。RDSB:JNB RI, $
105、 ;等待一楨數(shù)據(jù)接收完畢CLR RI ;清接收中斷標志MOV A,
106、60; SBUF ;讀接收數(shù)據(jù)MOVX DPTR, A ;存接收數(shù)據(jù)MOV C,RB
107、8ANL C,PJC RDSB2 ;都是1,則正確MOV C,RB8OR
108、L C,PJNC RDSB2 ;都是0,則正確LJMP RXDBD
109、60; ;出錯RDSB2:INC DPTR
110、60; ;指向下一數(shù)據(jù)存儲單元DJNZ R2, RDSB ;判數(shù)據(jù)接收完否?未完繼續(xù)CLR F0
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《商場銷售分析》課件
- 秦暉課件:土地問題與土地新政
- 《觸電事故》課件
- 四川省巴蜀黃金大聯(lián)考2025屆高考考前模擬語文試題含解析
- 1.1《子路、曾皙、冉有、公西華侍坐》課件 2023-2024學年統(tǒng)編版高中語文必修下冊-3
- 2025屆浙江省之江教育評價聯(lián)盟高考仿真模擬英語試卷含解析
- 《記念劉和珍君》課件 2024-2025學年統(tǒng)編版高中語文選擇性必修中冊
- 福州教育學院附屬中學2025屆高考考前模擬語文試題含解析
- 廣東省深圳紅嶺中學2025屆高考數(shù)學二模試卷含解析
- 《solidworks 機械設計實例教程》 課件 任務6.1 傳動箱蓋的設計
- 背負十字架的故事勵志·
- 安徽華塑股份有限公司年產(chǎn) 20 萬噸固堿及燒堿深加工項目環(huán)境影響報告書
- 優(yōu)秀團隊申報材料【優(yōu)秀5篇】
- 2020九年級英語上冊全冊Module1-12重點難點易錯點整理新版外研版
- 大學與青年發(fā)展智慧樹知到答案章節(jié)測試2023年華僑大學
- ABB變頻器培訓學習
- 深圳市2021-2022學年初三年級中考適應性考試試題及答案
- 森林防火制度匯編
- 電石生產(chǎn)能耗的影響因素
- JJF(紡織)060-2010恒溫恒濕箱校準規(guī)范
- THBFIA 0004-2020 紅棗制品標準
評論
0/150
提交評論