




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第一張緒論1第一臺(tái)計(jì)算機(jī)的問(wèn)世有何意義?答:第一臺(tái)電子數(shù)字計(jì)算機(jī)ENIAC問(wèn)世,標(biāo)志著計(jì)算機(jī)時(shí)代的到來(lái)。與現(xiàn)代的計(jì)算機(jī)相比,ENIAC有許多不足,但它的問(wèn)世開(kāi)創(chuàng)了計(jì)算機(jī)科學(xué)技術(shù)的新紀(jì)元,對(duì)人類(lèi)的生產(chǎn)和生活方式產(chǎn)生了巨大的影響。2計(jì)算機(jī)由哪幾部分組成?答:由運(yùn)算器、控制器、存儲(chǔ)器、輸入設(shè)備和輸出設(shè)備組成,運(yùn)算器與控制器合稱(chēng)為CPU。3微型計(jì)算機(jī)由哪幾部分構(gòu)成?微型計(jì)算機(jī)由微處理器、存儲(chǔ)器和I/O接口電路構(gòu)成。各部分通過(guò)地址總線(xiàn)(AB)、數(shù)據(jù)總線(xiàn)(DB)和控制總線(xiàn)(CB)相連。4微處理器與微型計(jì)算機(jī)有何區(qū)別?答:微處理器集成了運(yùn)算器和控制器(即CPU);而微型計(jì)算機(jī)包含微處理器、存儲(chǔ)器和I/O接口
2、電路等。5什么叫單片機(jī)?其主要特點(diǎn)有哪些? 答:在一片集成電路芯片上集成微處理器、存儲(chǔ)器、I/O接口電路,從而構(gòu)成了單芯片微型計(jì)算機(jī),即單片機(jī)。單片機(jī)主要特點(diǎn)有:控制性能和可靠性高;體積小、價(jià)格低、易于產(chǎn)品化;具有良好的性能價(jià)格比。6微型計(jì)算機(jī)有哪些應(yīng)用形式?各適于什么場(chǎng)合?答:微型計(jì)算機(jī)有三種應(yīng)用形式:多板機(jī)(系統(tǒng)機(jī))、單板機(jī)和單片機(jī)。多板機(jī),通常作為辦公或家庭的事務(wù)處理及科學(xué)計(jì)算,屬于通用計(jì)算機(jī)。單板機(jī),I/O設(shè)備簡(jiǎn)單,軟件資源少,使用不方便。早期主要用于微型計(jì)算機(jī)原理的教學(xué)及簡(jiǎn)單的測(cè)控系統(tǒng),現(xiàn)在已很少使用。單片機(jī),單片機(jī)體積小、價(jià)格低、可靠性高,其非凡的嵌入式應(yīng)用形態(tài)對(duì)于滿(mǎn)足嵌入式應(yīng)用需
3、求具有獨(dú)特的優(yōu)勢(shì)。目前,單片機(jī)應(yīng)用技術(shù)已經(jīng)成為電子應(yīng)用系統(tǒng)設(shè)計(jì)的最為常用技術(shù)手段。第二張80c51的結(jié)構(gòu)和原理12180C51單片機(jī)在功能上、工藝上、程序存儲(chǔ)器的配置上有哪些種類(lèi)?答:功能上分為基本型和增強(qiáng)型;工藝上分為HMOS工藝和CHMOS工藝;在片內(nèi)程序存儲(chǔ)器的配置上有掩膜ROM、EPROM和Flash、無(wú)片內(nèi)程序存儲(chǔ)器形式。2 80C51單片機(jī)的存儲(chǔ)器的組織采用何種結(jié)構(gòu)?存儲(chǔ)器地址空間如何劃分?各地址空間的地址范圍和容量如何?在使用上有何特點(diǎn)?答:采用哈佛結(jié)構(gòu),在物理上設(shè)計(jì)成程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器兩個(gè)獨(dú)立的空間;80C51基本型單片機(jī)片內(nèi)程序存儲(chǔ)器為4KB,地址范圍是0000H-0FF
4、FH,用于存放程序或常數(shù);片內(nèi)數(shù)據(jù)存儲(chǔ)器為128字節(jié)RAM,地址范圍是00H-7FH,用于存放運(yùn)算的中間結(jié)果、暫存數(shù)據(jù)和數(shù)據(jù)緩沖;另外在80H-FFH還配有21個(gè)SFR。380C51單片機(jī)的P0P3口在結(jié)構(gòu)上有何不同?在使用上有何特點(diǎn)? 答:作為通用I/O口時(shí),P0、P1、P2和P3都是準(zhǔn)雙向口。P0可以作為地址/數(shù)據(jù)總線(xiàn),此時(shí)是一個(gè)真正的雙向口;P2口可以作為地址線(xiàn)的高8位;P3口是雙功能口,每條口線(xiàn)還具有不同的第二功能。另外,P0口的驅(qū)動(dòng)能力為8個(gè)TTL負(fù)載,而其它口僅可驅(qū)動(dòng)4個(gè)TTL負(fù)載。4如果80C51單片機(jī)晶振頻率分別為6 MHz、11.0592 MHz、12MHz時(shí),機(jī)器周期分別為
5、多少?答:機(jī)器周期分別為2s,1.085s,1s。580C51單片機(jī)復(fù)位后的狀態(tài)如何?復(fù)位方法有幾種?答:復(fù)位后,PC內(nèi)容為0000H,P0口P3口內(nèi)容為FFH,SP內(nèi)容為07H,SBUF內(nèi)容不定,IP、IE和PCON的有效位為0,其余的特殊功能寄存器的狀態(tài)均為00H。復(fù)位方法一種是上電復(fù)位,另一種是上電與按鍵均有效的復(fù)位。680C51單片機(jī)的片內(nèi)、片外存儲(chǔ)器如何選擇?答:80C51的引腳為訪(fǎng)問(wèn)片內(nèi)、片外程序存儲(chǔ)器的選擇端。訪(fǎng)問(wèn)片內(nèi)、片外數(shù)據(jù)存儲(chǔ)器需要采用不同的指令加以區(qū)分。780C51單片機(jī)的PSW寄存器各位標(biāo)志的意義如何?答:CY:進(jìn)位、借位標(biāo)志。有進(jìn)位、借位時(shí) CY=1,否則CY=0;A
6、C:輔助進(jìn)位、借位標(biāo)志(高半字節(jié)與低半字節(jié)間的進(jìn)位或借位);F0:用戶(hù)標(biāo)志位,由用戶(hù)自己定義;RS1、RS0:當(dāng)前工作寄存器組選擇位;OV:溢出標(biāo)志位。有溢出時(shí)OV=1,否則OV=0;P:奇偶標(biāo)志位。存于ACC中的運(yùn)算結(jié)果有奇數(shù)個(gè)1時(shí)P=1,否則P=0。8 80C51單片機(jī)的當(dāng)前工作寄存器組如何選擇?答:當(dāng)前工作寄存器組的選擇由特殊功能寄存器中的程序狀態(tài)字寄存器PSW的RS1、RS0 來(lái)決定。980C51單片機(jī)的控制總線(xiàn)信號(hào)有哪些?各信號(hào)的作用如何?答:RST/VPD:復(fù)位信號(hào)輸入引腳/備用電源輸入引腳;ALE/:地址鎖存允許信號(hào)輸出引腳/編程脈沖輸入引腳;/VPP:內(nèi)外存儲(chǔ)器選擇引腳/片內(nèi)E
7、PROM(或FlashROM)編程電壓輸入引腳;:外部程序存儲(chǔ)器選通信號(hào)輸出引腳。1080C51單片機(jī)的程序存儲(chǔ)器低端的幾個(gè)特殊單元的用途如何?答:0000H0002H:?jiǎn)纹瑱C(jī)復(fù)位入口地址;0003H000AH:外部中斷0的中斷服務(wù)程序入口地址;000BH0012H:定時(shí)/計(jì)數(shù)器0溢出中斷服務(wù)程序入口地址;0013H001AH:外部中斷1的中斷服務(wù)程序入口地址;001BH0022H:定時(shí)/計(jì)數(shù)器1溢出中斷服務(wù)程序入口地址;0023H002AH:串行口的中斷服務(wù)程序入口地址。002BH0032H:定時(shí)/計(jì)數(shù)器2溢出中斷服務(wù)程序入口地址ORG 0000HLJMP MAINORG 0040HMAIN
8、:第三章 80c51的控制指令系統(tǒng)章3 80C51的指令系統(tǒng)180C51系列單片機(jī)的指令系統(tǒng)有何特點(diǎn)?答:執(zhí)行時(shí)間短。1個(gè)機(jī)器周期指令有64條,2個(gè)機(jī)器周期指令有45條,而4個(gè)機(jī)器周期指令僅有2條(即乘法和除法指令);指令編碼字節(jié)少。單字節(jié)的指令有49條,雙字節(jié)的指令有45條,三字節(jié)的指令僅有17條;位操作指令豐富。這是80C51單片機(jī)面向控制特點(diǎn)的重要保證。280C51單片機(jī)有哪幾種尋址方式?各尋址方式所對(duì)應(yīng)的寄存器或存儲(chǔ)器空間如何?答:80C51單片機(jī)的尋址方式有七種。即:寄存器尋址、直接尋址、寄存器間接尋址、立即尋址、基址寄存器加變址寄存器變址尋址、相對(duì)尋址和位尋址。這些尋址方式所對(duì)應(yīng)的
9、寄存器和存儲(chǔ)空間如下表所示。序號(hào)尋址方式寄存器或存儲(chǔ)空間1寄存器尋址寄存器R0R7,A、AB、DPTR和C(布爾累加器)2直接尋址片內(nèi)RAM低128字節(jié)、SFR3寄存器間接尋址片內(nèi)RAM(R0,R1,SP)片外RAM(R0,R1,DPTR)4立即尋址ROM5變址尋址ROM(ADPTR,APC)6相對(duì)尋址ROM(PC當(dāng)前值的127128字節(jié))7位尋址可尋址位(內(nèi)部RAM20H2FH單元的位和部分SFR的位)3訪(fǎng)問(wèn)特殊功能寄存器SFR可以采用哪些尋址方式?答:直接尋址和位尋址方式。4訪(fǎng)問(wèn)內(nèi)部RAM單元可以采用哪些尋址方式?答:直接尋址、寄存器尋址和位尋址方式。5訪(fǎng)問(wèn)外部RAM單元可以采用哪些尋址方
10、式?答:寄存器間接尋址。6訪(fǎng)問(wèn)外部程序存儲(chǔ)器可以采用哪些尋址方式?答:立即尋址、變址尋址和相對(duì)尋址方式。7為什么說(shuō)布爾處理功能是80C51單片機(jī)的重要特點(diǎn)?答:?jiǎn)纹瑱C(jī)指令系統(tǒng)中的布爾指令集、存儲(chǔ)器中的位地址空間與CPU中的位操作構(gòu)成了片內(nèi)的布爾功能系統(tǒng),它可對(duì)位(bit)變量進(jìn)行布爾處理,如置位、清零、求補(bǔ)、測(cè)試轉(zhuǎn)移及邏輯“與”、“或”等操作。在實(shí)現(xiàn)位操作時(shí),借用了程序狀態(tài)標(biāo)志器(PSW)中的進(jìn)位標(biāo)志Cy作為位操作的“累加器”。 8對(duì)于80C52單片機(jī)內(nèi)部RAM還存在高128字節(jié),應(yīng)采用何種方式訪(fǎng)問(wèn)?答:寄存器間接尋址方式。9試根據(jù)指令編碼表寫(xiě)出下列指令的機(jī)器碼。 (1)MOV A,#88H-
11、74H, 88H (2)MOV R3,50H-ABH,50H (3)MOV P1,#55H-75H,90H,55H (4)ADD A,R1-27H (5)SETB 12H-D2H,12H10完成某種操作可以采用幾條指令構(gòu)成的指令序列實(shí)現(xiàn),試寫(xiě)出完成以下每種操作的指令序列。 (1)將R0的內(nèi)容傳送到R1; (2)內(nèi)部RAM單元60H的內(nèi)容傳送到寄存器R2; (3)外部RAM單元1000H的內(nèi)容傳送到內(nèi)部RAM單元60H; (4)外部RAM單元1000H的內(nèi)容傳送到寄存器R2; (5)外部RAM單元1000H的內(nèi)容傳送到外部RAM單元2000H。答:(1)MOV A,R0 MOV R1,A(2)M
12、OV R2,60H(3)MOV DPTR,#1000H MOVX A,DPTR MOV 60H,A(4)MOV DPTR,#1000H MOVX A,DPTR MOV R2,A (5)MOV DPTR,#1000H MOVX A,DPTRMOV DPTR,#2000H MOVX DPTR, A11若(R1)=30H,(A)=40H,(30H)=60H,(40H)=08H。試分析執(zhí)行下列程序段后上述各單元內(nèi)容的變化。 MOV A,R1 (A)=60H MOV R1,40H (30H)=08H MOV 40H,A (40H)=60H MOV R1,#7FH (R1)=7FH答:(R1)=7FH(A
13、)=60H(30H)=08H(40H)=60H12若(A)=E8H,(R0)=40H,(R1)=20H,(R4)=3AH,(40H)=2CH,(20H)=0FH,試寫(xiě)出下列各指令獨(dú)立執(zhí)行后有關(guān)寄存器和存儲(chǔ)單元的內(nèi)容?若該指令影響標(biāo)志位,試指出CY、AC、和OV的值。 (1)MOV A,R0 (2)ANL 40H,#0FH (3)ADD A,R4 (4)SWAP A (5)DEC R1 (6)XCHD A,R1答:(1)(A)=2CH(2)(40H)=0CH(3)(A)=22H,(CY)=1,(AC)=1,(OV)=0(4)(A)=8EH(5)(20H)=0EH(6)(A)=EFH,(20)=0
14、8H13若(50H)=40H,試寫(xiě)出執(zhí)行以下程序段后累加器A、寄存器R0及內(nèi)部RAM的40H、41H、42H單元中的內(nèi)容各為多少? MOV A,50H (A)=40H MOV R0,A (R0)=40H MOV A,#00H (A)=0 MOV R0,A (40H)=0 MOV A,#3BH (A)=3BH MOV 41H,A (41H)=3BH MOV 42H,41H (42H)=3BH答: 14試用指令實(shí)現(xiàn)下列邏輯操作。要求不得改變未涉及的位的內(nèi)容。 (1)使ACC.0置位; (2)清除累加器高4位; (3)清除ACC.3,ACC.4,ACC.5,ACC.6。答:(1)SETB ACC.0
15、 ORL A,#01H(00000001) (2)ANL A,#0FH(00001111) CLR ACC.7;CLR ACC.6; CLR ACC.5; CLR ACC.4 (3)ANL A,#87H (10000111) (置1)01111000 ORL A,#78H (取反)XRL A,#78H15試編寫(xiě)程序,將內(nèi)部RAM的20H、21H、22H三個(gè)連續(xù)單元的內(nèi)容依次存入2FH、2EH和2DH單元。答:MOV 2FH,20H MOV 2EH,21HMOV 2DH,22H16試編寫(xiě)程序,完成兩個(gè)16位數(shù)的減法:7F4DH2B4EH,結(jié)果存入內(nèi)部RAM的30H和31H單元,30H單元存差的高
16、8位,31H單元存差的低8位。答:ORG 0000HCLR CMOV 30H,#7FHMOV 31H,#4DHMOV R0,#31HMOV A,R0SUBB A ,#4EHMOV R0,A ;保存低字節(jié)相減結(jié)果DEC R0MOV A,R0SUBB A,#2BHMOV R0,A ;保存高字節(jié)相減結(jié)果END ORG 0000H CLR C MOV 30H,#7FH MOV 31H,#4DH MOV 40H,#2BH MOV 41H,#4EH MOV R0,#31H MOV R1,#41H MOV R7,#2 MAIN:MOV A,R0 SUBB A,R1 MOV R0,A DEC R0 DEC R
17、1 DJNZ R7,MAIN INC R0 SJMP $ END17試編寫(xiě)程序,將R1中的低4位數(shù)與R2中的高4位數(shù)合并成一個(gè)8位數(shù),并將其存放在R1中。答:MOV A,R1ANL A,#0FHMOV R1,AMOV A,R2ANL A,#0F0HORL A,R1MOV R1,A18試編寫(xiě)程序,將內(nèi)部RAM的20H、21H單元的兩個(gè)無(wú)符號(hào)數(shù)相乘,結(jié)果存放在R2、R3中,R2中存放高8位,R3中存放低8位。答:MOV A,20HMOV B,21HMUL ABMOV R3,AMOV R2,B19若(CY)=1,(P1)=10100011B,(P3)=01101100B。試指出執(zhí)行下列程序段后,CY
18、、P1口及P3口內(nèi)容的變化情況。 MOV P1.3,C (P1)=10101011B MOV P1.4,C (P1)=10111011B MOV C,P1.6 (CY)=0 MOV P3.6,C (P3)=00101100B MOV C,P1.0 (CY)=1 MOV P3.4,C (P3)=00111100B答:(CY)=1, (P1)=10111011B, (P3)=00111100B第四章匯編語(yǔ)言的設(shè)計(jì)180C51單片機(jī)匯編語(yǔ)言有何特點(diǎn)?答:匯編語(yǔ)言結(jié)構(gòu)緊湊、靈活,匯編成的目標(biāo)程序效率高,具有占存儲(chǔ)空間少、運(yùn)行速度快、實(shí)時(shí)性強(qiáng)等優(yōu)點(diǎn)。它是面向機(jī)器的語(yǔ)言,對(duì)于單片機(jī)硬件的操作直接、方便,有
19、利于初學(xué)者對(duì)單片機(jī)結(jié)構(gòu)的認(rèn)知。但它與高級(jí)語(yǔ)言相比移植性不好、編程復(fù)雜、對(duì)編程人員的基礎(chǔ)要求高。2利用80C51單片機(jī)匯編語(yǔ)言進(jìn)行程序設(shè)計(jì)的步驟如何?答:一、任務(wù)分析首先,要對(duì)單片機(jī)應(yīng)用系統(tǒng)的設(shè)計(jì)目標(biāo)進(jìn)行深入分析,明確系統(tǒng)設(shè)計(jì)任務(wù):功能要求和技術(shù)指標(biāo)。然后對(duì)系統(tǒng)的運(yùn)行環(huán)境進(jìn)行調(diào)研。這是應(yīng)用系統(tǒng)程序設(shè)計(jì)的基礎(chǔ)和條件。二、算法設(shè)計(jì)經(jīng)過(guò)任務(wù)分析和環(huán)境調(diào)研后,已經(jīng)明確的功能要求和技術(shù)指標(biāo)可以用數(shù)學(xué)方法(或模型)來(lái)描述,進(jìn)而把一個(gè)實(shí)際的系統(tǒng)要求轉(zhuǎn)化成由計(jì)算機(jī)進(jìn)行處理的算法。并對(duì)各種算法進(jìn)行分析比較,并進(jìn)行合理的優(yōu)化。三、流程描述程序的總體構(gòu)建。先要確定程序結(jié)構(gòu)和數(shù)據(jù)形式,資源分配和參數(shù)計(jì)算等。然后根據(jù)程序
20、運(yùn)行的過(guò)程,規(guī)劃程序執(zhí)行的邏輯順序,用圖形符號(hào)將程序流程繪制在平面圖上。應(yīng)用程序的功能通??梢苑譃槿舾刹糠?,用流程圖將具有一定功能的各部分有機(jī)地聯(lián)系起來(lái)。流程圖可以分為總流程圖和局部流程圖??偭鞒虉D側(cè)重反映程序的邏輯結(jié)構(gòu)和各程序模塊之間的相互關(guān)系;局部流程圖反映程序模塊的具體實(shí)施細(xì)節(jié)。3常用的程序結(jié)構(gòu)有哪幾種?特點(diǎn)如何?答:順序程序:無(wú)分支、無(wú)循環(huán)結(jié)構(gòu)的程序,其執(zhí)行流程是依指令在存儲(chǔ)器中的存放順序進(jìn)行的;分支程序:可以改變程序的執(zhí)行順序;循環(huán)程序:按某種控制規(guī)律重復(fù)執(zhí)行的程序,控制一部分指令重復(fù)執(zhí)行若干次,以便用簡(jiǎn)短的程序完成大量的處理任務(wù)。4子程序調(diào)用時(shí),參數(shù)的傳遞方法有哪幾種?答:利用累加
21、器或寄存器;利用存儲(chǔ)器;利用堆棧。5什么是偽指令?常用的偽指令功能如何?答:偽指令是匯編程序能夠識(shí)別并對(duì)匯編過(guò)程進(jìn)行某種控制的匯編命令。常用的偽指令包括:ORG,功能是向匯編程序說(shuō)明下面緊接的程序段或數(shù)據(jù)段存放的起始地址;END,功能是結(jié)束匯編;DB,功能是從標(biāo)號(hào)指定的地址單元開(kāi)始,在程序存儲(chǔ)器中定義字節(jié)數(shù)據(jù);DW,功能是從標(biāo)號(hào)指定的地址單元開(kāi)始,在程序存儲(chǔ)器中定義字?jǐn)?shù)據(jù)空間;EQU,功能是將表達(dá)式的值或特定的某個(gè)匯編符號(hào)定義為一個(gè)指定的符號(hào)名;BIT,功能是將位地址賦給指定的符號(hào)名。6設(shè)被加數(shù)存放在內(nèi)部RAM的20H、21H單元,加數(shù)存放在22H、23H單元,若要求和存放在24H、25H中,
22、試編寫(xiě)出16位無(wú)符號(hào)數(shù)相加的程序(采用大端模式存儲(chǔ))。答:程序如下:ORG 0000HLJMP MAIN ORG 0040HMAIN: MOV R0,21HMOV R1,23HMOV A,R0ADD A,R1MOV 25H,ADEC R0DEC R1MOV A,R0ADDC A,R1MOV 24H,ASJMP $END7編寫(xiě)程序,把外部RAM中1000H101FH的內(nèi)容傳送到內(nèi)部RAM的30H4FH中。答:ORG 0000H LJMP MAIN ORG 0040HMAIN: MOV DPTR,#1000H MOV R0,#30H MOV R7,#32LOOP:MOVX A,DPTR MOV R
23、0,A INC R0 INC DPTR DJNZ R7,LOOP SJMP $END8編寫(xiě)程序,實(shí)現(xiàn)雙字節(jié)無(wú)符號(hào)數(shù)加法運(yùn)算,要求 (R0R1)+(R6R7)(60H61H)。答:ORG 0000HLJMP MAIN ORG 0040HMAIN: MOV A,R1 ADD A,R7MOV 61H,AMOV A,R0 ADDC A,R6 MOV 60H,A SJMP $ END9若80C51的晶振頻率為6MHz,試計(jì)算延時(shí)子程序的延時(shí)時(shí)間。DELAY:MOV R7,#0F6H LP:MOV R6,#0FAH DJNZ R6,$ DJNZ R7,LP RET答:延時(shí)時(shí)間: 2µs*1+((
24、1+2*250+2)*246)+2+2=0.247486秒(含調(diào)用指令2個(gè)機(jī)器周期)10在內(nèi)部RAM 的30H37H單元存有一組單字節(jié)無(wú)符號(hào)數(shù)。要求找出最大數(shù)存入BIG單元。試編寫(xiě)程序?qū)崿F(xiàn)。答:BIG EQU 2FH ONE EQU 2AH TWO EQU 2BH ORG 0000HLJMP START ORG 0040HSTART:MOV R7,#7 ;比較次數(shù) MOV R0,#30H LOOP:MOV A,R0 MOV ONE,A INC R0 MOV TWO,R0 CLR C SUBB A,R0 JC NEXT ;ONE小,TWO大繼續(xù)比下一對(duì)數(shù) MOV R0,ONE ;ONE大放后面(
25、交換) DEC R0 MOV R0,TWO ;TWO小放前面 INC R0 ; NEXT:DJNZ R7,LOOP MOV BIG,37H SJMP $ END11編寫(xiě)程序,把累加器A中的二進(jìn)制數(shù)變換成3位BCD碼,并將百、十、個(gè)位數(shù)分別存放在內(nèi)部RAM的50H、51H、52H中。答:?jiǎn)巫止?jié)二進(jìn)制數(shù)轉(zhuǎn)換為壓縮的BCD碼僅需要2個(gè)字節(jié);在將壓縮的BCD碼拆分存于3個(gè)單元。 org 0 MOV 52H,#0 MOV 51H,#0 MOV 50H,#0 MOV A,#0FDh LCALL DCDTH SJMP $ DCDTH:MOV R7,#8 MOV R0,A ;暫存于R0 LOOP:CLR C
26、MOV A,R0 RLC A MOV R0,A MOV R1,#51H; MOV A,R1 ; ADDC A,R1 ; DA A ; MOV R1,A ; DEC R1 MOV A,R1 ADDC A,R1 DA A MOV R1,A DJNZ R7,LOOP INC R1 ;50H已是結(jié)果,R1指向51H,51H單元需拆分 MOV A,#00H XCHD A,R1 MOV 52H,A MOV A,R1 SWAP A MOV R1,A RET END12編寫(xiě)子程序,將R1中的2個(gè)十六進(jìn)制數(shù)轉(zhuǎn)換為ASCII碼后存放在R3和R4中。答: ORG 0000HLJMP START ORG 0040H
27、START:MOV R1,#5BH MOV A,R1 ANL A,#0F0H SWAP A ACALL ASCII MOV R3,A MOV A,R1 ANL A, #0FH ACALL ASCII MOV R4, A SJMP $ASCII:PUSH ACC CLR C SUBB A, #0AH POP ACC JC LOOP ADD A, #07HLOOP: ADD A, #30H RET END13編寫(xiě)程序,求內(nèi)部RAM中50H59H十個(gè)單元內(nèi)容的平均值,并存放在5AH單元。答:ORG 0000HLJMP START ORG 0040H START: MOV R7,#10 MOV R0,
28、#50H MOV B,#10 CLR C CLR A LOOP:ADDC A,R0 INC R0 DJNZ R7,LOOP DIV AB MOV 5AH,A SJMP $ END14如圖4.10所示,編制程序?qū)崿F(xiàn):上電后顯示“P”,有鍵按下時(shí)顯示相應(yīng)的鍵號(hào)“0”“7”。答:實(shí)現(xiàn)程序如下:TEMP EQU 30H ORG 0000H JMP START ORG 0100HSTART:MOV SP,#5FH MOV P0,#8CH ;正序顯示"P" MOV P3,#0FFH ;輸入方式 CLR CYNOKEY:MOV A,P3 CPL A JZ NOKEY ;無(wú)鍵按下 MOV
29、TEMP,P3 ;有鍵按下 CALL D10ms MOV A,P3 CJNE A,TEMP,NOKEY ;去抖動(dòng) MOV R2,#0 ;鍵號(hào)計(jì)數(shù)器復(fù)位 MOV A,TEMP LP:RRC A JNC DONE INC R2 SJMP LP DONE:MOV A,R2 MOV DPTR,#CODE_P0 MOVC A,A+DPTR MOV P0,AJMP NOKEYD10ms:MOV R5,#10 ;10MSD1ms:MOV R4,#249 DL:NOP NOP DJNZ R4,DL DJNZ R5,D1ms RET CODE_P0: DB 0C0H,0F9H,0A4H,0B0H,99H,92H
30、,82H,0F8H DB 80H,90H,88H,83H,0C6H,0A1H,86H,8EH END 第五章 中斷系統(tǒng)的定時(shí)及計(jì)數(shù)器1.80C51有幾個(gè)中斷源?各中斷標(biāo)志是如何產(chǎn)生的?又是如何復(fù)位的?CPU響應(yīng)各中斷時(shí),其中斷入口地址是多少?答:5個(gè)中斷源,分別為外中斷和、T0和T1溢出中斷、串口中斷。電平方式觸發(fā)的外中斷標(biāo)志與引腳信號(hào)一致;邊沿方式觸發(fā)的外中斷響應(yīng)中斷后由硬件自動(dòng)復(fù)位。T0和T1,CPU響應(yīng)中斷時(shí),由硬件自動(dòng)復(fù)位。RI和TI,由硬件置位。必須由軟件復(fù)位。另外,所有能產(chǎn)生中斷的標(biāo)志位均可由軟件置位或復(fù)位。各中斷入口地址:0003H,T0000BH,0013H,T1001BH,R
31、I和TI0023H。2.某系統(tǒng)有三個(gè)外部中斷源1、2、3,當(dāng)某一中斷源變低電平時(shí)便要求CPU處理,它們的優(yōu)先處理次序由高到低為3、2、1,處理程序的入口地址分別為2000H、2100H、2200H。試編寫(xiě)主程序及中斷服務(wù)程序(轉(zhuǎn)至相應(yīng)的入口即可)。答:將3個(gè)中斷信號(hào)經(jīng)電阻線(xiàn)或,接。ORG 0000HLJMP MAINORG 0013HLJMP ZDFZ ORG 0040HMAIN:SETB EA SETB EX1 SJMP $ 0RG 0200HZDFZ:PUSH PSW PUSH ACC JB P1.0,DV0 JB P1.1,DV1 JB P1.2,DV2INRET:POP ACC POP
32、 PSWRETIORG 2000H DV0:-JMP INRETORG 2100HDV1:-JMP INRETORG 2200H DV2:-JMP INRET3.外部中斷源有電平觸發(fā)和邊沿觸發(fā)兩種觸發(fā)方式,這兩種觸發(fā)方式所產(chǎn)生的中斷過(guò)程有何不同?怎樣設(shè)定?答:當(dāng)IT0=0時(shí),為電平觸發(fā)方式。電平觸發(fā)方式時(shí),CPU在每個(gè)機(jī)器周期的S5P2采樣引腳電平,當(dāng)采樣到低電平時(shí),置IE0向CPU請(qǐng)求中斷;采樣到高電平時(shí),將IE0清0。在電平觸發(fā)方式下,CPU響應(yīng)中斷時(shí),不能自動(dòng)清除IE0標(biāo)志。電平觸發(fā)方式時(shí),外部中斷源的有效低電平必須保持到請(qǐng)求獲得響應(yīng)時(shí)為止,不然就會(huì)漏掉;在中斷服務(wù)結(jié)束之前,中斷源的有效
33、的低電平必須撤除,否則中斷返回之后將再次產(chǎn)生中斷。該方式適合于外部中斷輸入為低電平,且在中斷服務(wù)程序中能清除外部中斷請(qǐng)求源的情況。當(dāng)IT0=1時(shí),為邊沿觸發(fā)方式。邊沿觸發(fā)方式時(shí),CPU在每個(gè)機(jī)器周期的S5P2采樣引腳電平,如果在連續(xù)的兩個(gè)機(jī)器周期檢測(cè)到引腳由高電平變?yōu)榈碗娖剑吹谝粋€(gè)周期采樣到=1,第二個(gè)周期采樣到=0,則置IE01,產(chǎn)生中斷請(qǐng)求。在邊沿觸發(fā)方式下,CPU響應(yīng)中斷時(shí),能由硬件自動(dòng)清除IE0標(biāo)志。邊沿觸發(fā)方式時(shí),在相繼兩次采樣中,先采樣到外部中斷輸入為高電平,下一個(gè)周期采樣到為低電平,則在IE0或IE1中將鎖存一個(gè)邏輯1。若CPU暫時(shí)不能響應(yīng),中斷申請(qǐng)標(biāo)志也不會(huì)丟失,直到CPU響
34、應(yīng)此中斷時(shí)才清0。另外,為了保證下降沿能夠被可靠地采樣到,和引腳上的負(fù)脈沖寬度至少要保持一個(gè)機(jī)器周期(若晶振頻率為12MHz,為1微秒)。邊沿觸發(fā)方式適合于以負(fù)脈沖形式輸入的外部中斷請(qǐng)求。4.定時(shí)/計(jì)數(shù)器工作于定時(shí)和計(jì)數(shù)方式時(shí)有何異同點(diǎn)?答:定時(shí)/計(jì)數(shù)器實(shí)質(zhì)是加1計(jì)數(shù)器。不同點(diǎn):設(shè)置為定時(shí)器模式時(shí),加1計(jì)數(shù)器是對(duì)內(nèi)部機(jī)器周期計(jì)數(shù)(1個(gè)機(jī)器周期等于12個(gè)振蕩周期,即計(jì)數(shù)頻率為晶振頻率的1/12)。計(jì)數(shù)值乘以機(jī)器周期就是定時(shí)時(shí)間。設(shè)置為計(jì)數(shù)器模式時(shí),外部事件計(jì)數(shù)脈沖由T0或T1引腳輸入到計(jì)數(shù)器。在每個(gè)機(jī)器周期的S5P2期間采樣T0、T1引腳電平。當(dāng)某周期采樣到一高電平輸入,而下一周期又采樣到一低電
35、平時(shí),則計(jì)數(shù)器加1,更新的計(jì)數(shù)值在下一個(gè)機(jī)器周期的S3P1期間裝入計(jì)數(shù)器。相同點(diǎn):它們的工作原理相同,它們都有4種工作方式,由TMOD中的M1M0設(shè)定,即方式0:13位計(jì)數(shù)器;方式1:16位計(jì)數(shù)器;方式2:具有自動(dòng)重裝初值功能的8位計(jì)數(shù)器;方式3:T0分為兩個(gè)獨(dú)立的8位計(jì)數(shù)器,T1停止工作。5.定時(shí)/計(jì)數(shù)器的4種工作方式各有何特點(diǎn)?答:方式0位13位計(jì)數(shù)器,由TL0的低5位(高3位未用)和TH0的8位組成。TL0的低5位溢出時(shí)向TH0進(jìn)位,TH0溢出時(shí),置位TCON中的TF0標(biāo)志,向CPU發(fā)出中斷請(qǐng)求。計(jì)數(shù)初值計(jì)算的公式為: X213N方式1的計(jì)數(shù)位數(shù)是16位,由TL0作為低8位、TH0作為高
36、8位,組成了16位加1計(jì)數(shù)器。計(jì)數(shù)個(gè)數(shù)與計(jì)數(shù)初值的關(guān)系為:X216N方式2為自動(dòng)重裝初值的8位計(jì)數(shù)方式。TH0為8位初值寄存器。當(dāng)TL0計(jì)滿(mǎn)溢出時(shí),由硬件使TF0置1,向CPU發(fā)出中斷請(qǐng)求,并將TH0中的計(jì)數(shù)初值自動(dòng)送入TL0。TL0從初值重新進(jìn)行加1計(jì)數(shù)。周而復(fù)始,直至TR0=0才會(huì)停止。計(jì)數(shù)個(gè)數(shù)與計(jì)數(shù)初值的關(guān)系為:X28N方式3只適用于定時(shí)/計(jì)數(shù)器T0,定時(shí)器T1處于方式3時(shí)相當(dāng)于TR10,停止計(jì)數(shù)。方式3時(shí),T0分成為兩個(gè)獨(dú)立的8位計(jì)數(shù)器TL0和TH0,TL0使用T0的所有控制位。當(dāng)TL0計(jì)數(shù)溢出時(shí),由硬件使TF0置1,向CPU發(fā)出中斷請(qǐng)求。而TH0固定為定時(shí)方式(不能進(jìn)行外部計(jì)數(shù)),并
37、且借用了T1的控制位TR1、TF1。因此,TH0的啟、停受TR1控制,TH0的溢出將置位TF1。6.要求定時(shí)/計(jì)數(shù)器的運(yùn)行控制完全由TR1、TR0確定和完全由、高低電平控制時(shí),其初始化編程應(yīng)作何處理?答:TMOD中GATE的值不同:完全由TR1、TR0確定時(shí)GATE為0;完全由、高低電平控制時(shí)GATE為1。7.當(dāng)定時(shí)/計(jì)數(shù)器T0用作方式3時(shí),定時(shí)/計(jì)數(shù)器T1可以工作在何種方式下?如何控制T1的開(kāi)啟和關(guān)閉?答:T0用作方式3時(shí),T1可以工作在方式0、1和2。T1的開(kāi)啟由TR1控制,即TR11時(shí),T1開(kāi)始工作;TR10時(shí)或者定時(shí)/計(jì)數(shù)器工作在方式3時(shí),T1停止工作。8.利用定時(shí)/計(jì)數(shù)器T0從P1.
38、0輸出周期為1s,脈寬為20ms的正脈沖信號(hào),晶振頻率為12MHz。試設(shè)計(jì)程序。答:采用定時(shí)20ms,然后再計(jì)數(shù)1、49次的方法實(shí)現(xiàn)。a、T0工作在定時(shí)方式1時(shí),控制字TMOD配置: M1M0=01,GATE=0,C/=0,可取方式控制字為01H;b、計(jì)算計(jì)數(shù)初值X:晶振為12 MHz,所以機(jī)器周期Tcy為1。Nt/ Tcy 20×103/1×10620000X216N6553620000455364E20H 即應(yīng)將4EH送入TH0中,20H送入TL0中。 c、實(shí)現(xiàn)程序如下: ORG 0000H AJMP MAIN ;跳轉(zhuǎn)到主程序 ORG 0040H MAIN:MOV TM
39、OD,#01H ;設(shè)T1工作于方式1 MOV TH0,# 4EH ;裝入循環(huán)計(jì)數(shù)初值 MOV TL0,#20H ;首次計(jì)數(shù)值 LP0:SETB P1.0 ACALL NT0 CLR P1.0 MOV R7,#49 ;計(jì)數(shù)49次 LP1:ACALL NT0 DJNZ R7,LP1 AJMP LP0 NT0:MOV TH0,# 4EH MOV TL0,#20H SETB TR0 JNB TF0,$ CLR TR0 CLR TF0 RET END9.要求從P1.1引腳輸出1000Hz方波,晶振頻率為12MHz。試設(shè)計(jì)程序。答:采用T0實(shí)現(xiàn)a、T0工作在定時(shí)方式1時(shí),控制字TMOD配置: M1M0=0
40、1,GATE=0,C/=0,可取方式控制字為01H;b、計(jì)算計(jì)數(shù)初值X:晶振為12 MHz,所以機(jī)器周期Tcy為1。1/1000=1×103Nt/ Tcy 0.5×103/1×106500X216N6553650065036FE0CH 即應(yīng)將FEH送入TH0中,0CH送入TL0中。 c、實(shí)現(xiàn)程序如下: ORG 0000H AJMP MAIN ;跳轉(zhuǎn)到主程序 ORG 000BH ;T0的中斷入口地址 LJMP DVT0 ORG 0040H MAIN:MOV TMOD,#01H ;設(shè)T0工作于方式1 MOV TH0,# 0FEH ;裝入循環(huán)計(jì)數(shù)初值 MOV TL0,#0CH ;首次計(jì)數(shù)值 SETB ET0 ;T0開(kāi)中斷 SETB EA ;CPU開(kāi)中斷 SETB TR0 ;啟動(dòng)T0 SJMP $ ;等待中斷 DVT0:CPL P1.1 MOV TH0,# 0FEH MOV TL0,# 0CH SETB
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 自建停車(chē)場(chǎng)出租合同協(xié)議
- 紙品采購(gòu)標(biāo)準(zhǔn)合同協(xié)議
- 紹興學(xué)校租車(chē)合同協(xié)議
- 自家住宅短租合同協(xié)議
- 聯(lián)發(fā)股份轉(zhuǎn)讓合同協(xié)議
- 翻譯檢驗(yàn)服務(wù)合同協(xié)議
- 紡織合伙協(xié)議合同協(xié)議
- 紙品廠承包送貨合同協(xié)議
- 續(xù)簽勞務(wù)公司合同協(xié)議
- 自建老房轉(zhuǎn)讓合同協(xié)議
- LED制程與工藝介紹
- 《馬克思主義中國(guó)化思想通史》導(dǎo)讀-南京林業(yè)大學(xué)中國(guó)大學(xué)mooc課后章節(jié)答案期末考試題庫(kù)2023年
- 北京中考語(yǔ)文詞語(yǔ)表
- 水資源利用智慧樹(shù)知到答案章節(jié)測(cè)試2023年西安理工大學(xué)
- 水質(zhì)對(duì)干豆腐品質(zhì)的影響機(jī)制及調(diào)控技術(shù)
- LY/T 2676-2016半干旱地區(qū)灌木林平茬與復(fù)壯技術(shù)規(guī)范
- 裝配式混凝土結(jié)構(gòu)的構(gòu)件安裝分項(xiàng)工程(驗(yàn)收批)質(zhì)量驗(yàn)收記錄表
- 作業(yè)許可檢查表
- 農(nóng)產(chǎn)品集中交易市場(chǎng)等級(jí)技術(shù)規(guī)范-編制說(shuō)明
- 張京16分鐘中英文對(duì)照翻譯稿
- 武漢綠地中心項(xiàng)目技術(shù)管理策劃書(shū)(48頁(yè))
評(píng)論
0/150
提交評(píng)論