51課后答案第一二三四章答案_第1頁
51課后答案第一二三四章答案_第2頁
51課后答案第一二三四章答案_第3頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、單片機原理及應(yīng)用習題參考答案第一章1. 為什么計算機要釆用二進制數(shù)?學習十六進制數(shù)的目的是什么? 在計算機中,由于所采用的電子邏輯器件僅能存儲和識別兩種狀態(tài)的特點,計算機 內(nèi) 部一切信息存儲、處理和傳送均釆用二進制數(shù)的形式??梢哉f,二進制數(shù)是計算機硬件能直接識別并進行處理的惟一形式。十六進制數(shù)可以簡化表示二進制數(shù)。2?(1) 01111001 79H (2) 0.11 0.CH(3)01111001.1179.CH(4) 11101010.101 0EA.AH (5)01100001 61H(6) 00110001 31H(1) (2)80H 17.AH(3)11110001.11B241.7

2、54 0B3H (4) OC.CH . (l)OlOOOOOlB(2)3. 65110101111B?外部設(shè)備與接口電路9. 什么是接口電路? CPU 與接口電路連接一般應(yīng)具有哪些信號線 連接一般應(yīng)具有哪些信號線?CPU 通過接口電路與外部輸入、輸出設(shè)備交換信息, 一般情況下,外部設(shè)備種類、數(shù)量較多,而且各種參量(如運行速度、數(shù)據(jù)格式及物理 量)也不盡相同。 CPU 為了實現(xiàn)選取目標外部設(shè)備并與其交換信息,必須借助接口電路。一 般 情況下,接口電路通過地址總線、控制總線和數(shù)據(jù)總線與 CPU 連接;通過數(shù)據(jù)線( D )、 控制 線(C)和狀態(tài)線(S)與外部設(shè)備連接。10. 存儲器的作用是什么?只

3、讀存儲器和隨機存儲器有什么不同?存儲 器具有記憶功能 ,用來 存放數(shù)據(jù) 和程序。 計算 機中的存 儲器主 要有隨機存儲器 ( RAM )和只讀存儲器( ROM )兩種。隨機存儲器一般用來存放程序運行過程中的中間數(shù)據(jù),計算機掉電時數(shù)據(jù)不再保存。只讀存儲器一般用來存放程序,計算機掉電時信息不會 丟失。11. 某存儲器的存儲容量為 64KB, 它表示多少個存儲單元?64X 102412. 簡述微型計算機硬件系統(tǒng)組成。一臺計算機的基本結(jié)構(gòu)由運算器、控制器、存儲器、輸入設(shè)備和輸出設(shè)備五部分組成。13. 什么是單片機?單片機與微機相比有何特點?單片機( Single-Chip-Microcomputer

4、)又稱單片微控制器,其基本結(jié)構(gòu)是將微型計算機的 基 本功能部件:中央處理機( CPU )、存儲器、輸入接口、輸出接口、定時器/ 計數(shù)器、中斷 系統(tǒng)等全部集成在一個半導體芯片上,因此,單片機其體積小、功耗低、價格低廉,且具有 邏輯判 斷、定時計數(shù)、程序控制等多種功能。單片機結(jié)構(gòu)上的設(shè)計,在硬件、指令系統(tǒng)及 I/O 能力等方面都有獨到之處,具有較強而 有效 的控制功能。雖然單片機只是一個芯片,但無論從組成還是從其邏輯功能上來看,都具 有微機系 統(tǒng)的含義。另一方面,單片機畢竟是一個芯片,只有外加所需的輸入、輸出設(shè)備,才可以構(gòu)成實用的單片機應(yīng)用系統(tǒng)。14. 單片機主要應(yīng)用于哪些領(lǐng)域? (1)智能儀器。

5、智能儀器是含有微處理器的測量儀器。單片機廣泛應(yīng)用于各種儀器儀表, 使儀器儀表智能化取得了令人矚目的進展。( 2)工業(yè)控制。單片機廣泛應(yīng)用于各種工業(yè)控制系統(tǒng)中,如數(shù)控機床、溫度控制、可編 程順序控制等。( 3)家用電器。目前各種家用電器普遍采用單片機取代傳統(tǒng)的控制電路,如洗衣機、電 冰箱、空調(diào)、彩電、微波爐、電風扇及高級電子玩具等。由于配上了單片機,使其功能增強 而身價倍增,深受用戶的歡迎。( 4)機電一體化。機電一體化是機械工業(yè)發(fā)展的方向,機電一體化產(chǎn)品是指集機械技術(shù)、 微電子技術(shù)、計算機技術(shù)于一體,具有智能化特征的機電產(chǎn)品。單片機除以上各方面應(yīng)用之外,還廣泛應(yīng)用于辦公自動化領(lǐng)域(如復印機)、

6、汽車電路、 通信系統(tǒng)(如手機)、計算機外圍設(shè)備等,成為計算機發(fā)展和應(yīng)用的一個重要方向。15. 什么是嵌入式系統(tǒng)?嵌入式系統(tǒng)有哪些重要特征? 所謂嵌入式系統(tǒng),是“以應(yīng)用為中心、以計算機技術(shù)為基礎(chǔ)、軟件硬件可裁減、功能、可 靠性、成本、體積、功耗嚴格要求的專用計算機系統(tǒng)”。即以嵌入式應(yīng)用為目的計算機系統(tǒng)。嵌入式系統(tǒng)的重要特征:、 系統(tǒng)內(nèi)核小、 專用性強。、 系統(tǒng)精簡 嵌入式系統(tǒng)一般沒有系統(tǒng)軟件和應(yīng)用軟件的明顯區(qū)分,其功能設(shè)計及實現(xiàn)上不要 求 過于復雜,這樣一方面利于控制系統(tǒng)成木,同時也利于實現(xiàn)系統(tǒng)安全。、 高實時性O(shè)第二章1. 舉例說明 MCS-51 有哪些典型產(chǎn)品,它們有何區(qū)別? MCS-51

7、系列單片機可分為兩大系 列: 51 子系列和 52 子系列。51 子系列單片機的典型產(chǎn)品有 8051、 8751、 8031、 80C51、80C31 等。它們的結(jié)構(gòu)基本 相 同,其主要差別反映在片內(nèi)存儲器的配置上有所不同2. 8051 單片機內(nèi)部包含哪些主要功能部件?各功能部件的主要作用是什么?8051 單片機內(nèi)部由 CPU、4KB 的 ROM 、128B 的 RAM 、4 個 8 位的 I/O 并彳亍端口、一 個 串行口、兩個 16 位定時 / 計數(shù)器及中斷系統(tǒng)等組成。3. 程序狀態(tài)字寄存器 PSW 各位的定義是什么?PSW 是一個 8 位寄存器,用于寄存當前指令執(zhí)行后的某些狀態(tài),即反映指

8、令執(zhí)行結(jié)果的 一 些特征信息。Cy (PSW.7) :即 PSW 的 D7 位,進位 / 借位標志。AC (PSW.6) :即 PSW 的 D6 位,輔助進位標志。F0 (PSW.5) 及 Fl (PSE.1) :即 PSW 的 D5 位、 D1 位,用戶標志位。RS1 及 RSO (PSW.4 及 PSW.3) :即 PSW 的 D4 位、 D3 位,寄存器組選擇控制位。OV (PSW.2) :即 PSW 的 D2 位,溢出標志。4. MCS-51 存儲器結(jié)構(gòu)的主要特點是什么?程序存儲器和數(shù)據(jù)存儲器各有何不同? MCS-51 單片機的存儲器結(jié)構(gòu)與一般微機存儲器的配置方法不同,一般微機把程序和

9、數(shù) 據(jù)共存同一存儲空間,各存儲單元對應(yīng)惟一的地址。而 MCS-51 的存儲器把程序和數(shù)據(jù)的存 儲空 間嚴格區(qū)分開。數(shù)據(jù)存儲器用于存放程序運算的中間結(jié)果、狀態(tài)標志位等。 程序存儲器用于存放已編制好的程序及程序中用到的常數(shù)。5. MCS-51 單片機內(nèi)部 RAM 可分為幾個區(qū)?各區(qū)的主要作用是什么? 內(nèi)部數(shù)據(jù)存儲器分為高、低 128B 兩大部分。低 128B 為 RAM 區(qū),地址空間為 00H-7FH, 可分為:寄存器區(qū)、位尋址區(qū)、堆棧及數(shù) 據(jù)存儲 區(qū)。存放程序運算的中間結(jié)果、狀態(tài)標志位等。高 128B 為特殊功能寄存器 (SFR) 區(qū),地址空間為 80H-FFH, 其中僅有 21 個寧節(jié)單元是有

10、定義的。6. MCS-51 單片機的 P0? P3 四個 I/O 端口在結(jié)構(gòu)上有何異同?使用時應(yīng)注意哪些事 項?P0 口是一個 8 位漏極開路型雙向 I/O 端口。P1 口是一個內(nèi)部帶上拉電阻的 8 位準雙向 I/O 端口。P2 口也是一個內(nèi)部帶上拉電阻的8 位準雙向 I/O 端口P3 口是一個內(nèi)部帶上拉電阻的 8 位多功能雙向 I/O 端口。 在使用時應(yīng)注意以下方面:%1P0-P3 都是準雙向 I/O 口,即 CPU 在讀取數(shù)據(jù)時,必須先向相應(yīng)端口的鎖存器寫入“1”。各端口名稱與鎖存器名稱在編程時相同,均可用 P0-P3 表示。當系統(tǒng)復位時, P0?P3 端口鎖存器全為 “ 1,”故可直接對

11、其進行讀取數(shù)據(jù)。%1 P0 口每一輸岀位可驅(qū)動 8個LS型TTL負載,P0 口可作通用輸入、輸岀端口使用,此 時,若要驅(qū)動 NMOS 或其他拉電流負載時,需外接上拉電阻,才能使該位高電平輸出有效。在單片機進行外部存儲器擴展時, P0 口必須作為地址 / 數(shù)據(jù)復用線使用,此時,不必外 接上 拉電阻, P0 也不能作通用 I/O 口使用。%1 Pl、 P2、 P3 口輸岀均接有內(nèi)部上拉電阻,輸入端無需外接上拉電阻,每一位輸岀可以驅(qū)動4個LS型TTL電路。%1 PO、 P2 口除可以作通用 I/O 端口、以實現(xiàn)與外部進行數(shù)據(jù)交換外,更主要的是,當CPU 訪問外部存儲器時, CPU 將自動地把外部存儲

12、器的地址線信號( 16位)送 PO、 P2 口, 作 為地址總線( P0 口輸岀低 8位地址, P2 口輸岀高 8位地址),向外部存儲器輸岀 16位存 儲單元 地址。在控制信號作用下,該地址低8位被鎖存后,P0 口自動切換為數(shù)據(jù)總線,這時經(jīng)P0 口可向外部存儲器進行讀、寫數(shù)據(jù)操作。此時,P2 口不再作通用 I/O 端口, P0 口為地 址/ 數(shù)據(jù)復用口。7. 在什么情況下, P3 口作為第二功能使用?P3 口的第二功能是作為控制端口使用的。由于單片機沒有專設(shè)的控制信號引腳,單片機在進行外部存儲器和 I/O 端口擴展時所需要的控制信號必須由 P3 口提供, P3 口第二功能相 當于 PC機中CP

13、U的控制線引腳。&為什么說單片機具有較強的位處理能力?對于許多控制系統(tǒng),開關(guān)量控制是控制系統(tǒng)的主要對象之一。作為傳統(tǒng)的CPU,對于簡 單的個別開關(guān)量進行控制卻顯得不那么方便,而讓 MCS-51 值得驕傲的正是它有效地解決了 單一位的 控制。MCS-51 片內(nèi) CPU 還是一個性能優(yōu)異的位處理器,也就是說 MCS-51 實際上又是一個完 整 而獨立的 1 位單片機(也稱布爾處理機)。該布爾處理機除了有自己的CPU 、位寄存器、 位累加器(即進位標志 Cy)、 I/O 口和位尋址空間外,還有專供位操作的指令系統(tǒng),可以直接尋址對位存儲單元和 SFR 的某一位進行操作。 MCS-51 單片機對

14、于位操作(布爾處理)有置 位、復位、 取反、測試轉(zhuǎn)移、傳送、邏輯與和邏輯或運算等功能。所以,單片機具有較強的位處理能力。9. 指岀 8051 可進行位尋址的存儲空間。007FH( 即 20H.0-2FH.7) 及 SFR 地址能被 8 整除的寄存器中的各位。10. 位地址 90H 和字節(jié)地址 90H 及 P1.0 有何異同?如何區(qū)別?位地址 90H 表示 P1.0 位字節(jié)地址 90H 表示 P1 口11. 在訪問外部 ROM 或 RAM 時, P0 和 P2 口各用來傳送什么信號? P0 口為什么要采用 片 外地址鎖存器?P0 口傳送地址低八位后可復用數(shù)據(jù)線,所以, P0 口要采用片外地址鎖存

15、器。 P2 口傳送 地 址高八位。12. 什么是時鐘周期?什么是機器周期?什么是指令周期?當振蕩頻率為 12MHz 時,一 個 機器周期為多少微秒?時鐘周期:也稱振蕩周期,即振蕩器的振蕩頻率 fosc 的倒數(shù),是時序中最小的時間單位。 機器周期:執(zhí)彳丁一條指令的過程可分為若干個階段,每一階段完成一規(guī)定的操作,完成 一個規(guī)定操作所需要的時間稱為一個機器周期,一個機器周期包含12 個時鐘周期。 當振蕩頻率為 12MHz 時,一個機器周期為 12/(12X1000000) 秒=1 微秒 指令周期:定義為執(zhí)行一條指令所用的時間。13. MCS-51 單片機有幾種復位方法?復位后, CPU 從程序存儲器

16、的哪一個單元開始執(zhí)彳丁 程序?MCS-51 的復位電路包括上電復位電路和按鍵( 外部 ) 復位電路0000H14. 8051 系統(tǒng)掉電時如何保存內(nèi)部 RAM 中的數(shù)據(jù)? 單片機在運行過程中,如果發(fā)生掉電,片內(nèi) RAM 和 SFR 中的信息將會丟失。為防止信 息 丟失,可以把一組備用電源加到RST/VPD端,當Vg上的電壓低于 VPD上的電壓時,備用 電源通過Vpd端,以低功耗保持內(nèi)部 RAM和SFR中的數(shù)據(jù)。15. 8051 單片機引腳 ALE 的作用是什么?當 8051 不外接 RAM 和 ROM 時, ALE 上輸出 的 脈沖頻率是多少?其作用是什么?地址鎖存使能輸出 ALE :當單片機訪

17、問外部存儲器時,外部存儲器的 16 位地址信號由 P0 口輸出低 8 位, P2 口輸出高 8 位, ALE 可用作低 8 位地址鎖存控制信號;當不用作外部 存儲器 地址鎖存控制信號時,該引腳仍以時鐘振蕩頻率的 1/6 固定地輸出正脈沖,可以驅(qū)動 8 個 LS 型 TTL 負載。16. 單片機最小系統(tǒng)組成包括哪些部分?各部分功能是什么? 單片機最小系統(tǒng)硬件電路包括電源電路、時鐘電路、復位電路及單片機。各部分功能: 電源電路為單片機提供穩(wěn)定可靠的工作電源;時鐘電路用于產(chǎn)生單片機最基本的時間單 位;復位電路用于產(chǎn)生復位信號,使單片機從固定的起始狀態(tài)開始工作。第三章1. MCS-51 有哪幾種尋址方

18、式?舉例說明它們是怎樣尋址的?MCS-51 指令系統(tǒng)的尋址方式有以下 7 種: 立即尋址方式:操作數(shù)直接出現(xiàn)在指令中。直接尋址方式中:操作數(shù)的單元地址直接出現(xiàn)在指令中。寄存器尋址方式中:寄存器中的內(nèi)容就是操作數(shù)。寄存器間接尋址方式中,指定寄存器中的內(nèi)容是操作數(shù)的地址,該地址對應(yīng)存儲單元的 內(nèi) 容才是操作數(shù)。變址尋址方式是以程序指針 PC 或數(shù)據(jù)指針 DPTR 為基址寄存器,以累加器 A 作為變址 寄 存器,兩者內(nèi)容相加(即基地址+偏移量)形成 16 位的操作數(shù)地址,相對尋址是以程序計數(shù)器 PC 的當前值作為基地址,與指令中的第二字節(jié)給出的相對偏 移量 rel 進行相加,所得和為程序的轉(zhuǎn)移地址。

19、位地址:內(nèi)部 RAM 地址空間的可進行位尋址的 128 位和 SFR 地址空間的可位尋址的 11 個 8 位寄存器的 88 位。位尋址給出的是直接地址。2. 位尋址和字節(jié)尋址如何區(qū)分?在使用時有何不同?由尋址方式可以看出,不同的尋址方式所尋址的存儲空間是不同的。正確地使用尋址方 式 不僅取決于尋址方式的形式,而目 . 取決于尋址方式所對應(yīng)的存儲空間。字節(jié)尋址必須是對 8 位 存儲單元,位尋址的存儲空間只能是片內(nèi) RAM 的 20H-2FH 字節(jié)地址中的所有位(位地 址為 00H7FH )和部分 SFR 的位,決不能是該范圍之外的任何單元的任何位。3. 要訪問專用寄存器和片外數(shù)據(jù)寄存器,應(yīng)采用什

20、么尋址方式?舉例說明。訪問專用寄存器:可采用直接尋址或寄存器尋址。訪問片外數(shù)據(jù)寄存器:寄存器間接尋址4. 什么是堆棧?其主要作用是什么?堆棧是后進先出的數(shù)據(jù)存儲區(qū)一般用于中斷處理過程中,若需要保護現(xiàn)場數(shù)據(jù)(如內(nèi)部 RAM 單元的內(nèi)容),可使用 入 棧指令,將數(shù)據(jù)壓入堆棧,中斷處理過程執(zhí)行完后,再使用出棧指令恢復現(xiàn)場數(shù)據(jù)。5. 編程將內(nèi)部 RAM 的 20H 單元的內(nèi)容傳送給外部 RAM 的 2000H 單元。MOVA,20HMOV DPTR,#2000HMOVX DPTR,A6. 編程將內(nèi)部數(shù)據(jù)存儲器 20H-30H 單元內(nèi)容清零。MOV R0,#20HMOVA,#0MOV R3,#17LOP

21、 :MOV R0,AINC RODJNZ R3,LOP7. 編程查找內(nèi)部 RAM 的 32H-41H 單元中是否有 OAAH 這個數(shù)據(jù),若有這一數(shù)據(jù),則 將 50H單元置為OFFH,否則清50H單元為0。MOV R3, #10HMOVA, #OAAHMOV RO,#31HLOP :INC ROSUBB A,R0JZ LOP1DJNZ R3,LOPMOV 50H,#0HAJMP LOP3LOP1:MOV 50H,#0FFHLOP3: AJMP 1OP38. 查找20H? 4FH單元中岀現(xiàn) OOH的次數(shù),并將查找結(jié)果存入50H單元。MOV R3,#30HMOV R0,#20HMOVA,#0LOP:

22、 MOVA,ROJZ LOP1LOP3: INC RODJNZ R3,LOPAJMP LOP2LOP1: INC 50HAJMP LOP3LOP2:AJMP LOP29. 已知A=83H, R0=17H, (17H)=34H,寫岀下列程序段執(zhí)行完后的A中的內(nèi)容ANL A,ORL #17H17H, AXRLA, R0CPLA(A) =11001011B=0CBH10. 已知單片機的f°SC= 12MHz,分別設(shè)計延時12MHz, 一個機器周期為l|is,延時1ms的子程序:DELAY: MOV R7, #0FFHLOOP: NOPNOPDJNZ R7, LOOPRET0.1s、Is、1

23、 min的子程序。設(shè)晶振頻率為執(zhí)行時間(機器周期)1112該程序段的總的執(zhí)行時間為:對延時Ims的子程序循環(huán)100(1+4 X 255+2 )( is=1023psA 1msDELAY: MOV FLOP64HR7.延時時間為MOVms#的了程序:LOOP:NOP NOTABDORG7.RE LOP13000H1234H延時時 1間為Is的了程AH對延時100ms的子程序循環(huán) 10MOV次DELA次Y:MOVR5,#64HoLop1:MOVR7, #0FFHLOOPNOPNOPDJNZR7, LOOPDJNZR5,L OP1DJNR3, DELAYRet延時時間為60s的子程序:對延時Is的子

24、程序循壞60次11. MCS-51匯編語言中有哪些常用的偽指令?各起什么作用?BIT (地址符號命令)END (結(jié)束匯編)EQU (等值)DB (定義字節(jié))DW (定義字)DS (定義存儲單元)ORG (匯編起始地址)指令功能相同,尋址方式表示 不同指令功能相同,尋址方式 表示不同 指令功能相同12?比較下列各題中的兩條指令有什么異同?%1 MOV A, Rl;MOV 0E0H, R1%1 MOV A, P0;MOV A, 80HLOOP:SJMP LOOP; SJMP $F列程序段匯編后,從3000H開始各有關(guān)存儲單兀的內(nèi)容是什3000H:653001H: 13 3002H: 'a&

25、#39;3003H: V3004H: C3005H: 'A'3006H:'B'3007H: C3008H:12H3009H:34H300AH: 56H 300BH: 78H300CH: 9AHTAB equ2DBDW300DH:5678H OBCH65,13,"abcABC"TAB1,TAB2,914.為了提高匯編語言程序的效ABC在編寫時應(yīng)注意哪些問題?(1)把要解決的問題化成一個個具有一定獨立性的功能模塊,各模塊盡量采用子程序完 其功能。(2) 力求少用無條件轉(zhuǎn)移指令,盡量采用循環(huán)結(jié)構(gòu)。(3) 對主要的程序段要下功夫精心設(shè)計,這樣會收到事

26、半功倍的效果。(4) 能用8位數(shù)據(jù)解決問題的就不要使用16位數(shù)據(jù)。(5) 累加器是信息傳遞的樞紐,在調(diào)用子程序時應(yīng)通過累加器傳送子程序的參數(shù),通過加器向主程序傳送返回參數(shù)。所以,在子程序中一般不把累加器推入堆棧。若需保護累加 容時,應(yīng)先把累加器的內(nèi)容存入其他寄存器單元,然后再調(diào)用子程序。(6) 為了保證程序運行的安全可靠,應(yīng)考慮使用軟件抗干擾技術(shù),如數(shù)字濾波技術(shù)、指 冗余技術(shù)、軟件陷井技術(shù),用匯編語言程序?qū)崿F(xiàn)這些技術(shù),不需要增加硬件成本,可靠性定性好,方便靈活。15. 試編寫8字節(jié)外部數(shù)據(jù)存儲器到內(nèi)部數(shù)據(jù)存儲器的數(shù)據(jù)塊傳送程序,外部數(shù)據(jù)存儲 地址范圍為40H? 47H,內(nèi)部數(shù)據(jù)存儲器地址范圍為

27、30H? 37H。成累器的內(nèi)令高,穩(wěn)器MOV R3,#8MOV R0,#40HMOVR1,#30H LOP1:MOVXA,ROMOV R1,AINC ROINCR1DJNZ R3,LOP116. 試編寫8字節(jié)外部程序存儲器到內(nèi)部數(shù)據(jù)RAM的傳送程序,外部程序存儲器地址為2040H? 2047H,內(nèi)部 RAM 地址為 30H? 37H。參看15題答案(提示:外部程序存儲器地址為16位地址:2040H-2047H,間接尋址采 用DPTR)17. 試編程使內(nèi)部 RAM的20H-4FH單元的數(shù)據(jù)塊按降序排列。參看23題答案(提示:本題對 20H4FH單元(48個)數(shù)據(jù)降序排列)。1&內(nèi)部RAM

28、的20H單元開始有一個數(shù)據(jù)塊,以O(shè)DH為結(jié)束標志,試統(tǒng)計該數(shù)據(jù)塊長度,將該數(shù)據(jù)塊傳送到外部數(shù)據(jù)存儲器7E01H開始的單元,并將長度存入7E00H單丿11 OMOVMOVRO, #20HDPTR, #7E01HLOP: MOVA, R0MOV60H,ASUBBA, #0DHJZLOP1MOVA,60HMOVDPTR, AXINCR3INCROINCDPTRAJMPLOPLOP1: MOVDPTR, #7E00HMOVA,R3MOVDPTR, AXEND19. 試編寫一個用查表法查0? 9字形7段碼(假設(shè)表的首地址為TABLE )的子程序,調(diào)用子程序前,待查表的數(shù)據(jù)存放在累加器A中,子程序返回后,

29、查表的結(jié)果也存放在累加器A中。SQR1: MOV DPTR,#TABLE MOVC A, A+DPTR RETTABLE: DB 0C0H,0F9H,0A4H,0B0H,99H ; 09的寧形顯示段碼(LED 共陽極。DB 92H,82H,F8H,80H,90H20. 內(nèi)部RAM的DATA開始的區(qū)域中存放著10個單字節(jié)十進制數(shù),求其累加和,并將丿元。MOMoMo lop: adM結(jié)果存入 SUM和SUM+1單R0,# DATAR3,#0AHA,#0A,R0MOR4,AVd MO NcA, #0R5,ARODJNMoMoVNDR3, LOPSUM,R4SUM+1,R5在否則21. 內(nèi)部RAM的D

30、ATA 1和DATA2單元開始存放著兩個等長的數(shù)據(jù)塊,數(shù)據(jù)塊的長度LEN單元中。請編程檢查這兩個數(shù)據(jù)塊是否相等,若相等,將OFFH寫入RESULT單元,將0寫入RESULT單元。MOV RO,#DATA1MOV R3, LENLOP: MOV A, R0CJNZA,DATA2, LOP1INC ROINC DATA2DJNZ R3,LOPMOVA,#OFFHMOV RESULT,AAJMP LOP2LOP1:MOVA,#0MOV RESULT, ALOP2: AJMP LOP2END22. 有一輸入設(shè)備,其端口地址為20H,要求在1秒鐘時間內(nèi)連續(xù)采樣 10次讀取該端口據(jù),求其算術(shù)平均值,結(jié)果存

31、放在內(nèi)部RAM區(qū)20H單元。MOV R0,#20HMOV R2,#0MOV A,#0MOV R4,#0LOPMOVR3,#0AHIN: ACALL DELAYMOVX A, R0 MOV R2 , A MOVA,R4 ADD A, R2 MOV R4, A DJNZ R3, IN MOV B,#0AH DIV ABMOV 20H,A AJMP LOPDELAY: MOVR5OP64HFHLOOP:NOPNOPDJNZ R7, LOOPDJNZ R5,L OP1RETEND延時時間為0.Is的子程照從將存放次或最大換23. 編寫子程序,將內(nèi)部RAM區(qū)以30H為起始地址的連續(xù) 10個存儲單元中的數(shù)

32、據(jù),小到大的順序排序,排序結(jié)果仍存放在原數(shù)據(jù)區(qū)。采用冒泡法排序:冒泡排序法的基本算法是:N個數(shù)排序,從數(shù)據(jù)存放單元的一端(如起始單元)開始,相鄰二個數(shù)依次進行比較,如果相鄰兩個數(shù)的大小次序和排序要求一致,則不改變它們的 序,否則相互交換兩數(shù)位置,使其符合排序要求,這樣逐次比較,直至將最?。ń敌颍ㄉ颍┑臄?shù)移至最后。然后,再將ml個數(shù)繼續(xù)比較,重復上面操作,直至比較完畢可采用雙重循環(huán)實現(xiàn)冒泡法排序,外循環(huán)控制進行比較的次數(shù),內(nèi)循環(huán)實現(xiàn)依次比較交 數(shù)據(jù)。程序如下:ORG0000BLOCEQU30;設(shè) BLOCK 為 30HKMOVHR7, #9H單元;設(shè)置外循環(huán)計數(shù)器NEXTMOVA,R7MOV

33、80AMOVh6A;設(shè)置外循環(huán)計數(shù)器MOVR#30H;設(shè)置數(shù)據(jù)指針COMPMOVO,,R0MOVR2AINC ROCLRCSUBB A, RO JC LESS MOV A, R2 XCHA, R0 DEC RO MOV RO, A INC RODJNZ LESS:;(R6)-1 不等于 0, 轉(zhuǎn) COMPR6,COMPMOV R0,#30HDEC 80HMOV R6, 80h DJNZ R7, COMP RETEND第4 章習題答案1. MCS-51 系列單片機能提供幾個中斷源、幾個中斷優(yōu)先級?各個中斷源的優(yōu)先級怎樣 確 定?在同一優(yōu)先級中,各個中斷源的優(yōu)先順序怎樣確定?答: MCS-51 系

34、列單片機能提供 5個中斷源, 2 個中斷優(yōu)先級。各個中斷源的優(yōu)先級是由 特 殊功能寄存器 IP 來確定, IP 中和各個中斷源對應(yīng)位為 1 時,此中斷源為高優(yōu)先級,否則為 低優(yōu) 先級。在同一優(yōu)先級中,各個中斷源的優(yōu)先順序是由自然優(yōu)先級來確定的。2. 簡述 MCS-51 系列單片機的中斷響應(yīng)過程。答:MCS-51系列單片機的中斷響應(yīng)過程是按照以下順序執(zhí)行的:開中斷一一-中斷請求- 中斷判斷 中 斷響應(yīng) 中斷返回。3. MCS-51 系列單片機的外部中斷有哪兩種觸發(fā)方式?如何設(shè)置?對外部中斷源的中斷請求信號有何要求?答: MCS-51 系列單片機的外部中斷有電平觸發(fā)和邊沿觸發(fā)兩種方式。是由特殊功能

35、寄存器TCON 中 ITO,IT1 的狀態(tài)確定的,如: IT0 為 1 時外部中斷 0為邊沿觸發(fā)方式,當INTO 外部引腳出現(xiàn)下降沿時向 CPU 提出中斷請求,否則為電平觸發(fā)方式,當 INTO 外部引腳出 現(xiàn)低電平時向 CPU 提出中斷請求。4. MCS-51 單片機中斷響應(yīng)時間是否固定?為什么?答: MCS-51 單片機中斷響應(yīng)時間不固定,因為當中斷源向 CPU 提出中斷請求時, CPU 正在 執(zhí)彳丁的指令的指令周期是不一樣的。5. MCS-51 單片機如果擴展 6個中斷源,可采用哪些方法?如何確定它們的優(yōu)先級? 答:一般可采取中斷加查詢方式,軟件先查詢到的為高優(yōu)先級,最后查詢到的為低優(yōu)先6

36、. 試用中斷技術(shù)設(shè)計一發(fā)光二極管LED閃爍電路,閃爍周期為2s (方波)。答:用定時器實現(xiàn)ORG 0000HAJMP STARTORG 00B0HAJMP INT-TOSTART MOV TMOD, #01HMOV TH0,#3CHMOV TL0,#0B0HMOV RO,#10SETB ETOSETB EASETB TROSJMP$INT-TO:MOV THO, #3CHMOV TL0,#0B0HDJNZ R0,END-PCPL P1.0MOV RO,#10END-P RETIEND7. 當正在執(zhí)行某一中斷源的中斷服務(wù)程序時,如果有新的中斷請求岀現(xiàn),問在什么情況下可響應(yīng)新的中斷請求?在什么情況下不能響應(yīng)新的中斷請求?答:當正在執(zhí)行某一中斷源的中斷服務(wù)程序時,如果有新的中斷請求岀現(xiàn),當新中斷源中斷級別比正在執(zhí)行中斷源的中斷級別高時可響應(yīng)新的中斷請求,否則不能響應(yīng)新的中斷請求。&使用8051外部中斷0請求,在中斷服務(wù)程序中讀取P1 口數(shù)據(jù);然后使用外部中斷1請求,在中斷服務(wù)程序中將讀入的P1 口數(shù)據(jù)由P0 口輸岀答:ORG0000HAJMPSTART;跳到主程序起始地址ORG0003H;面屮斷矢量地址AJMPEX

溫馨提示

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

最新文檔

評論

0/150

提交評論