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

下載本文檔

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

文檔簡介

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

2、01000001B 65 (2) 110101111B 431 (3)11110001.11B 241.75 (4)10000011111010 84425.(1) 00100100 00100100 00100100 (2) 10100100 11011011 11011100 (3) 01111111 01111111 01111111(4)1000 0000 1111 11111000 0000 (5) 10000001 11111110 11111111 (6)1111100110000110100001116. 00100101B 00110111BCD 25H7. 137 119

3、898什么是總線?總線主要有哪幾部分組成?各部分的作用是什么?總線是連接計算機各部件之間的一組公共的信號線。一般情況下,可分為系統(tǒng)總線和外總線。系統(tǒng)總線應包括:地址總線(AB)控制總線(CB)數(shù)據(jù)總線(DB)地址總線(AB):CPU根據(jù)指令的功能需要訪問某一存儲器單元或外部設備時,其地址信息由地址總線輸出,然后經(jīng)地址譯碼單元處理。地址總線為16位時,可尋址范圍為216=64K,地址總線的位數(shù)決定了所尋址存儲器容量或外設數(shù)量的范圍。在任一時刻,地址總線上的地址信息是惟一對應某一存儲單元或外部設備??刂瓶偩€(CB):由CPU產(chǎn)生的控制信號是通過控制總線向存儲器或外部設備發(fā)出控制命令的,以使在傳送信

4、息時協(xié)調(diào)一致的工作。CPU還可以接收由外部設備發(fā)來的中斷請求信號和狀態(tài)信號,所以控制總線可以是輸入、輸出或雙向的。數(shù)據(jù)總線(DB):CPU是通過數(shù)據(jù)總線與存儲單元或外部設備交換數(shù)據(jù)信息的,故數(shù)據(jù)總線應為雙向總線。在CPU進行讀操作時,存儲單元或外設的數(shù)據(jù)信息通過數(shù)據(jù)總線傳送給CPU;在CPU進行寫操作時,CPU把數(shù)據(jù)通過數(shù)據(jù)總線傳送給存儲單元或外設9什么是接口電路? CPU與接口電路連接一般應具有哪些信號線?外部設備與接口電路連接一般應具有哪些信號線?CPU通過接口電路與外部輸入、輸出設備交換信息,一般情況下,外部設備種類、數(shù)量較多,而且各種參量(如運行速度、數(shù)據(jù)格式及物理量)也不盡相同。CP

5、U為了實現(xiàn)選取目標外部設備并與其交換信息,必須借助接口電路。一般情況下,接口電路通過地址總線、控制總線和數(shù)據(jù)總線與CPU連接;通過數(shù)據(jù)線(D)、控制線(C)和狀態(tài)線(S)與外部設備連接。10. 存儲器的作用是什么?只讀存儲器和隨機存儲器有什么不同?存儲器具有記憶功能,用來存放數(shù)據(jù)和程序。計算機中的存儲器主要有隨機存儲器(RAM)和只讀存儲器(ROM)兩種。隨機存儲器一般用來存放程序運行過程中的中間數(shù)據(jù),計算機掉電時數(shù)據(jù)不再保存。只讀存儲器一般用來存放程序,計算機掉電時信息不會丟失。11某存儲器的存儲容量為64KB,它表示多少個存儲單元?64×102412. 簡述微型計算機硬件系統(tǒng)組成

6、。一臺計算機的基本結構由運算器、控制器、存儲器、輸入設備和輸出設備五部分組成。13. 什么是單片機?單片機與微機相比有何特點?單片機(Single-Chip-Microcomputer)又稱單片微控制器,其基本結構是將微型計算機的基本功能部件:中央處理機(CPU)、存儲器、輸入接口、輸出接口、定時器/計數(shù)器、中斷系統(tǒng)等全部集成在一個半導體芯片上,因此,單片機其體積小、功耗低、價格低廉,且具有邏輯判斷、定時計數(shù)、程序控制等多種功能。單片機結構上的設計,在硬件、指令系統(tǒng)及I/O能力等方面都有獨到之處,具有較強而有效的控制功能。雖然單片機只是一個芯片,但無論從組成還是從其邏輯功能上來看,都具有微機系

7、統(tǒng)的含義。另一方面,單片機畢竟是一個芯片,只有外加所需的輸入、輸出設備,才可以構成實用的單片機應用系統(tǒng)。14. 單片機主要應用于哪些領域?(1) 智能儀器。智能儀器是含有微處理器的測量儀器。單片機廣泛應用于各種儀器儀表,使儀器儀表智能化取得了令人矚目的進展。(2) 工業(yè)控制。單片機廣泛應用于各種工業(yè)控制系統(tǒng)中,如數(shù)控機床、溫度控制、可編程順序控制等。(3) 家用電器。目前各種家用電器普遍采用單片機取代傳統(tǒng)的控制電路,如洗衣機、電冰箱、空調(diào)、彩電、微波爐、電風扇及高級電子玩具等。由于配上了單片機,使其功能增強而身價倍增,深受用戶的歡迎。(4) 機電一體化。機電一體化是機械工業(yè)發(fā)展的方向,機電一體

8、化產(chǎn)品是指集機械技術、微電子技術、計算機技術于一體,具有智能化特征的機電產(chǎn)品。單片機除以上各方面應用之外,還廣泛應用于辦公自動化領域(如復印機)、汽車電路、通信系統(tǒng)(如手機)、計算機外圍設備等,成為計算機發(fā)展和應用的一個重要方向。15. 什么是嵌入式系統(tǒng)?嵌入式系統(tǒng)有哪些重要特征?所謂嵌入式系統(tǒng),是“以應用為中心、以計算機技術為基礎、軟件硬件可裁減、功能、可靠性、成本、體積、功耗嚴格要求的專用計算機系統(tǒng)”。即以嵌入式應用為目的計算機系統(tǒng)。嵌入式系統(tǒng)的重要特征:1、 系統(tǒng)內(nèi)核小2、 專用性強。3、 系統(tǒng)精簡嵌入式系統(tǒng)一般沒有系統(tǒng)軟件和應用軟件的明顯區(qū)分,其功能設計及實現(xiàn)上不要求過于復雜,這樣一方

9、面利于控制系統(tǒng)成本,同時也利于實現(xiàn)系統(tǒng)安全。4、 高實時性。第二章1. 舉例說明MCS-51有哪些典型產(chǎn)品,它們有何區(qū)別? MCS-51系列單片機可分為兩大系列:51子系列和52子系列。51子系列單片機的典型產(chǎn)品有8051、8751、8031、80C51、80C31等。它們的結構基本相同,其主要差別反映在片內(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

10、是一個8位寄存器,用于寄存當前指令執(zhí)行后的某些狀態(tài),即反映指令執(zhí)行結果的一些特征信息。Cy(PSW.7):即PSW的D7位,進位/借位標志。AC(PSW.6):即PSW的D6位,輔助進位標志。F0(PSW.5)及F1(PSE.1):即PSW的D5位、D1位,用戶標志位。RS1及RS0(PSW.4及PSW.3):即PSW的D4位、D3位,寄存器組選擇控制位。OV(PSW.2):即PSW的D2位,溢出標志。4. MCS-51存儲器結構的主要特點是什么?程序存儲器和數(shù)據(jù)存儲器各有何不同?MCS-51單片機的存儲器結構與一般微機存儲器的配置方法不同,一般微機把程序和數(shù)據(jù)共存同一存儲空間,各存儲單元對應

11、惟一的地址。而MCS-51的存儲器把程序和數(shù)據(jù)的存儲空間嚴格區(qū)分開。數(shù)據(jù)存儲器用于存放程序運算的中間結果、狀態(tài)標志位等。程序存儲器用于存放已編制好的程序及程序中用到的常數(shù)。5. MCS-51單片機內(nèi)部RAM可分為幾個區(qū)?各區(qū)的主要作用是什么?內(nèi)部數(shù)據(jù)存儲器分為高、低128B兩大部分。低128B為RAM區(qū),地址空間為00H7FH,可分為:寄存器區(qū)、位尋址區(qū)、堆棧及數(shù)據(jù)存儲區(qū)。存放程序運算的中間結果、狀態(tài)標志位等。高128B為特殊功能寄存器(SFR)區(qū),地址空間為80HFFH,其中僅有21個字節(jié)單元是有定義的。6. MCS-51單片機的P0P3四個I/O端口在結構上有何異同?使用時應注意哪些事項?

12、P0口是一個8位漏極開路型雙向I/O端口。P1口是一個內(nèi)部帶上拉電阻的8位準雙向I/O端口。P2口也是一個內(nèi)部帶上拉電阻的8位準雙向I/O端口P3口是一個內(nèi)部帶上拉電阻的8位多功能雙向I/O端口。在使用時應注意以下方面: P0P3都是準雙向I/O口,即CPU在讀取數(shù)據(jù)時,必須先向相應端口的鎖存器寫入“1”。各端口名稱與鎖存器名稱在編程時相同,均可用P0P3表示。當系統(tǒng)復位時,P0P3端口鎖存器全為“1”,故可直接對其進行讀取數(shù)據(jù)。 P0口每一輸出位可驅(qū)動8個LS型TTL負載,P0口可作通用輸入、輸出端口使用,此時,若要驅(qū)動NMOS或其他拉電流負載時,需外接上拉電阻,才能使該位高電平輸出有效。在

13、單片機進行外部存儲器擴展時,P0口必須作為地址/數(shù)據(jù)復用線使用,此時,不必外接上拉電阻,P0也不能作通用I/O口使用。 P1、P2、P3口輸出均接有內(nèi)部上拉電阻,輸入端無需外接上拉電阻,每一位輸出可以驅(qū)動4個LS型TTL電路。 P0、P2口除可以作通用I/O端口、以實現(xiàn)與外部進行數(shù)據(jù)交換外,更主要的是,當CPU訪問外部存儲器時,CPU將自動地把外部存儲器的地址線信號(16位)送P0、P2口,作為地址總線(P0口輸出低8位地址,P2口輸出高8位地址),向外部存儲器輸出16位存儲單元地址。在控制信號作用下,該地址低8位被鎖存后,P0口自動切換為數(shù)據(jù)總線,這時經(jīng)P0口可向外部存儲器進行讀、寫數(shù)據(jù)操作

14、。此時,P2口不再作通用I/O端口,P0口為地址/數(shù)據(jù)復用口。7. 在什么情況下,P3口作為第二功能使用?P3口的第二功能是作為控制端口使用的。由于單片機沒有專設的控制信號引腳,單片機在進行外部存儲器和I/O端口擴展時所需要的控制信號必須由P3口提供,P3口第二功能相當于PC機中CPU的控制線引腳。8. 為什么說單片機具有較強的位處理能力?對于許多控制系統(tǒng),開關量控制是控制系統(tǒng)的主要對象之一。作為傳統(tǒng)的CPU,對于簡單的個別開關量進行控制卻顯得不那么方便,而讓MCS-51值得驕傲的正是它有效地解決了單一位的控制。MCS-51片內(nèi)CPU還是一個性能優(yōu)異的位處理器,也就是說MCS-51實際上又是一

15、個完整而獨立的1位單片機(也稱布爾處理機)。該布爾處理機除了有自己的CPU、位寄存器、位累加器(即進位標志Cy)、I/O口和位尋址空間外,還有專供位操作的指令系統(tǒng),可以直接尋址對位存儲單元和SFR的某一位進行操作。MCS-51單片機對于位操作(布爾處理)有置位、復位、取反、測試轉(zhuǎn)移、傳送、邏輯與和邏輯或運算等功能。所以,單片機具有較強的位處理能力。9. 指出8051可進行位尋址的存儲空間。 007FH(即20H.02FH.7)及SFR地址能被8整除的寄存器中的各位。10. 位地址90H和字節(jié)地址90H及P1.0有何異同?如何區(qū)別?位地址90H表示P1.0位字節(jié)地址90H表示P1口11. 在訪問

16、外部ROM或RAM時,P0和P2口各用來傳送什么信號?P0口為什么要采用片外地址鎖存器? P0口傳送地址低八位后可復用數(shù)據(jù)線,所以,P0口要采用片外地址鎖存器。P2口傳送地址高八位。12. 什么是時鐘周期?什么是機器周期?什么是指令周期?當振蕩頻率為12MHz時,一個機器周期為多少微秒?時鐘周期:也稱振蕩周期,即振蕩器的振蕩頻率fosc的倒數(shù),是時序中最小的時間單位。機器周期:執(zhí)行一條指令的過程可分為若干個階段,每一階段完成一規(guī)定的操作,完成一個規(guī)定操作所需要的時間稱為一個機器周期,一個機器周期包含12個時鐘周期。當振蕩頻率為12MHz時,一個機器周期為12/(12×1000000)

17、秒=1微秒指令周期:定義為執(zhí)行一條指令所用的時間。13. MCS-51單片機有幾種復位方法?復位后,CPU從程序存儲器的哪一個單元開始執(zhí)行程序?MCS-51的復位電路包括上電復位電路和按鍵(外部)復位電路0000H14. 8051系統(tǒng)掉電時如何保存內(nèi)部RAM中的數(shù)據(jù)?單片機在運行過程中,如果發(fā)生掉電,片內(nèi)RAM和SFR中的信息將會丟失。為防止信息丟失,可以把一組備用電源加到RST/VPD端,當VCC上的電壓低于VPD上的電壓時,備用電源通過VPD端,以低功耗保持內(nèi)部RAM和SFR中的數(shù)據(jù)。15. 8051單片機引腳ALE的作用是什么?當8051不外接RAM和ROM時,ALE上輸出的脈沖頻率是多

18、少?其作用是什么?地址鎖存使能輸出ALE:當單片機訪問外部存儲器時,外部存儲器的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)開始工作。第三章1MCS-51有哪幾種尋址方式?舉例說明

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

20、FR地址空間的可位尋址的11個8位寄存器的88位。位尋址給出的是直接地址。2位尋址和字節(jié)尋址如何區(qū)分?在使用時有何不同?由尋址方式可以看出,不同的尋址方式所尋址的存儲空間是不同的。正確地使用尋址方式不僅取決于尋址方式的形式,而且取決于尋址方式所對應的存儲空間。字節(jié)尋址必須是對8位存儲單元,位尋址的存儲空間只能是片內(nèi)RAM的20H2FH字節(jié)地址中的所有位(位地址為00H7FH)和部分SFR的位,決不能是該范圍之外的任何單元的任何位。3要訪問專用寄存器和片外數(shù)據(jù)寄存器,應采用什么尋址方式?舉例說明。 訪問專用寄存器:可采用直接尋址或寄存器尋址。訪問片外數(shù)據(jù)寄存器:寄存器間接尋址4什么是堆棧?其主要

21、作用是什么? 堆棧是后進先出的數(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單元。 MOV A,20HMOV DPTR,#2000HMOVX DPTR,A6編程將內(nèi)部數(shù)據(jù)存儲器20H30H單元內(nèi)容清零。 MOV R0,#20HMOV A,#0MOV R3,#17LOP :MOV R0,AINC R0DJNZ R3,LOP7編程查找內(nèi)部RAM的32H41H單元中是否有0AAH這個數(shù)據(jù),若有這一數(shù)據(jù),則將50H單元置為0

22、FFH,否則清50H單元為0。MOV R3, #10HMOV A,#0AAH MOV R0,#31HLOP :INC R0 SUBB A,R0 JZ LOP1 DJNZ R3,LOP MOV 50H,#0H AJMP LOP3 LOP1:MOV 50H,#0FFH LOP3: AJMP 1OP3 8查找20H4FH單元中出現(xiàn)00H的次數(shù),并將查找結果存入50H單元。 MOV R3,#30H MOV R0,#20H MOV A,#0LOP: MOV A,R0 JZ LOP1LOP3: INC R0 DJNZ R3,LOP AJMP LOP2LOP1: INC 50H AJMP LOP3 LOP2

23、:AJMP LOP2 9已知A=83H,R0=17H,(17H)=34H,寫出下列程序段執(zhí)行完后的A中的內(nèi)容。ANL A, #17HORL 17H, AXRL A, R0CPLA (A)=11001011B=0CBH10已知單片機的fosc=12MHz,分別設計延時0.1s、1s、1min的子程序。 設晶振頻率為12MHz,一個機器周期為1µs,延時1ms的子程序:執(zhí)行時間(機器周期)DELAY:MOV R7, #0FFH 1 LOOP:NOP 1NOP 1DJNZ R7, LOOP 2RET 2該程序段的總的執(zhí)行時間為:(1+4×255+2)ms=1023µs1

24、ms延時時間為100ms的子程序:DELAY:MOV R5,#64H 對延時1ms的子程序循環(huán)100次。LOP1:MOV R7, #0FFH LOOP:NOP NOP DJNZ R7, LOOPDJNZ R5,LOP1 RET 延時時間為1s的子程序:DELAY1: MOV R3, #0AH 對延時100ms的子程序循環(huán)10次DELAY:MOV R5,#64H 。LOP1:MOV R7, #0FFH LOOP:NOP NOP DJNZ R7, LOOPDJNZ R5,LOP1 DJNZ R3, DELAYRET延時時間為60s的子程序: 對延時1s的子程序循環(huán)60次11MCS-51匯編語言中有

25、哪些常用的偽指令?各起什么作用? BIT(地址符號命令)END(結束匯編)EQU(等值) DB(定義字節(jié))DW(定義字)DS(定義存儲單元)ORG(匯編起始地址)12比較下列各題中的兩條指令有什么異同? MOV A, R1; MOV 0E0H, R1 指令功能相同,尋址方式表示不同 MOV A, P0; MOV A, 80H 指令功能相同,尋址方式表示不同 LOOP:SJMP LOOP; SJMP $ 指令功能相同13下列程序段匯編后,從3000H開始各有關存儲單元的內(nèi)容是什么?ORG 3000HTAB1 EQU 1234HTAB2 EQU 5678HDB65,13,"abcABC&

26、quot;DWTAB1,TAB2,9ABCH 3000H: 65 3001H: 13 3002H: a 3003H: b 3004H: c 3005H: A 3006H:B 3007H: C 3008H: 12H 3009H: 34H 300AH: 56H 300BH: 78H 300CH: 9AH 300DH: 0BCH14為了提高匯編語言程序的效率,在編寫時應注意哪些問題?(1) 把要解決的問題化成一個個具有一定獨立性的功能模塊,各模塊盡量采用子程序完成其功能。(2) 力求少用無條件轉(zhuǎn)移指令,盡量采用循環(huán)結構。(3) 對主要的程序段要下功夫精心設計,這樣會收到事半功倍的效果。(4) 能用8

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

28、,#8 MOV R0,#40H MOV R1,#30HLOP1:MOVX A,R0 MOV R1,A INC R0 INC R1 DJNZ R3,LOP1 16試編寫8字節(jié)外部程序存儲器到內(nèi)部數(shù)據(jù)RAM的傳送程序,外部程序存儲器地址為2040H2047H,內(nèi)部RAM地址為30H37H。參看15題答案(提示:外部程序存儲器地址為16位地址:2040H2047H,間接尋址采用DPTR)17試編程使內(nèi)部RAM的20H4FH單元的數(shù)據(jù)塊按降序排列。 參看23題答案(提示:本題對20H4FH單元(48個)數(shù)據(jù)降序排列)。18內(nèi)部RAM的20H單元開始有一個數(shù)據(jù)塊,以0DH為結束標志,試統(tǒng)計該數(shù)據(jù)塊長度,

29、將該數(shù)據(jù)塊傳送到外部數(shù)據(jù)存儲器7E01H開始的單元,并將長度存入7E00H單元。 MOV R0, #20H MOV DPTR, #7E01HLOP: MOV A, R0 MOV 60H,ASUBB A, #0DH JZ LOP1 MOV A,60H MOVX DPTR, AINC R3 INC R0 INC DPTR AJMP LOPLOP1: MOV DPTR, #7E00H MOV A,R3 MOVX DPTR, A END 19試編寫一個用查表法查09字形7段碼(假設表的首地址為TABLE)的子程序,調(diào)用子程序前,待查表的數(shù)據(jù)存放在累加器A中,子程序返回后,查表的結果也存放在累加器A中。

30、SQR1: MOV DPTR,#TABLE MOVC A, A+DPTR RETTABLE: DB 0C0H,0F9H,0A4H,0B0H,99H ; 09的字形顯示段碼(LED共陽極。DB 92H,82H,F8H,80H,90H 20內(nèi)部RAM的DATA開始的區(qū)域中存放著10個單字節(jié)十進制數(shù),求其累加和,并將結果存入SUM和SUM+1單元。 MOV R0,#DATA MOV R3,#0AH MOV A,#0LOP: ADD A,R0 MOV R4,A ADDC A, #0 MOV R5,A INC R0 DJNZ R3, LOP MOV SUM,R4 MOV SUM+1,R5 END21內(nèi)部

31、RAM的DATA1和DATA2單元開始存放著兩個等長的數(shù)據(jù)塊,數(shù)據(jù)塊的長度在LEN單元中。請編程檢查這兩個數(shù)據(jù)塊是否相等,若相等,將0FFH寫入RESULT單元,否則將0寫入RESULT單元。 MOV R0,#DATA1 MOV R3, LEN LOP: MOV A, R0 CJNZ A,DATA2, LOP1 INC R0 INC DATA2 DJNZ R3,LOP MOV A,#0FFH MOV RESULT,A AJMP LOP2 LOP1:MOV A,#0 MOV RESULT, A LOP2: AJMP LOP2 END22有一輸入設備,其端口地址為20H,要求在1秒鐘時間內(nèi)連續(xù)采樣

32、10次讀取該端口數(shù)據(jù),求其算術平均值,結果存放在內(nèi)部RAM區(qū)20H單元。 MOV R0,#20H MOV R2,#0 MOV A,#0 MOV R4,#0LOP : MOV R3,#0AH IN : ACALL DELAY MOVX A, R0 MOV R2 , A MOV A, R4 ADD A, R2 MOV R4, A DJNZ R3, IN MOV B,#0AH DIV AB MOV 20H,A AJMP LOP DELAY: MOV R5,#64H 延時時間為0.1s的子程序:LOP1: MOV R7, #0FFH LOOP: NOP NOP DJNZ R7, LOOPDJNZ R5

33、,LOP1 RET END 23編寫子程序,將內(nèi)部RAM區(qū)以30H為起始地址的連續(xù)10個存儲單元中的數(shù)據(jù),按照從小到大的順序排序,排序結果仍存放在原數(shù)據(jù)區(qū)。采用冒泡法排序:冒泡排序法的基本算法是:N個數(shù)排序,從數(shù)據(jù)存放單元的一端(如起始單元)開始,將相鄰二個數(shù)依次進行比較,如果相鄰兩個數(shù)的大小次序和排序要求一致,則不改變它們的存放次序,否則相互交換兩數(shù)位置,使其符合排序要求,這樣逐次比較,直至將最?。ń敌颍┗蜃畲螅ㄉ颍┑臄?shù)移至最后。然后,再將n-1個數(shù)繼續(xù)比較,重復上面操作,直至比較完畢??刹捎秒p重循環(huán)實現(xiàn)冒泡法排序,外循環(huán)控制進行比較的次數(shù),內(nèi)循環(huán)實現(xiàn)依次比較交換數(shù)據(jù)。程序如下:ORG00

34、00HBLOCKEQU 30H ;設BLOCK為30H單元 MOV R7, #9H ;設置外循環(huán)計數(shù)器NEXT: MOV A, R7MOV 80H, A MOV R6, A ;設置外循環(huán)計數(shù)器MOV R0, #30H ;設置數(shù)據(jù)指針COMP:MOV A, R0 MOV R2, A INC R0 CLRC SUBB A, R0 JCLESS MOVA, R2 XCHA, R0DEC R0 MOVR0, A INC R0LESS:DJNZR6,COMP ;(R6)-1不等于0,轉(zhuǎn)COMP繼續(xù)內(nèi)循環(huán)MOVR0,#30H DEC 80HMOV R6, 80h DJNZR7, COMP RET END第

35、4章習題答案1MCS-51系列單片機能提供幾個中斷源、幾個中斷優(yōu)先級?各個中斷源的優(yōu)先級怎樣確定?在同一優(yōu)先級中,各個中斷源的優(yōu)先順序怎樣確定?答:MCS-51系列單片機能提供5個中斷源,2個中斷優(yōu)先級。各個中斷源的優(yōu)先級是由特殊功能寄存器IP來確定,IP中和各個中斷源對應位為1時,此中斷源為高優(yōu)先級,否則為低優(yōu)先級。在同一優(yōu)先級中,各個中斷源的優(yōu)先順序是由自然優(yōu)先級來確定的。2簡述MCS-51系列單片機的中斷響應過程。答:MCS-51系列單片機的中斷響應過程是按照以下順序執(zhí)行的:開中斷-中斷請求-中斷判斷-中斷響應-中斷返回。3MCS-51系列單片機的外部中斷有哪兩種觸發(fā)方式?如何設置?對外部中斷源的中斷請求信號有何要求?答:MCS-51系列單片機的外部中斷有電平觸發(fā)和邊沿觸發(fā)兩種方式。是由特殊功能寄存器TCON中IT0,IT1的狀態(tài)確定的,如:IT0為1時外部中斷0為邊沿觸發(fā)方式,當INT0外部引腳出現(xiàn)下降沿時向CPU提出中斷請求, 否則為電平觸發(fā)方式,當INT0外部引腳出現(xiàn)低電平時向CPU提出中斷請求。4MCS-51單片機中斷響應時間是否固定?為什么?答:MCS-51單片機中斷響應時間不固定,因為當中斷源向CPU提出中斷請求時,CPU正在執(zhí)行的指令的指令周期是不一樣的。5MCS-51單片機

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論