單片機原理與應(yīng)用_戴勝華_課后答案_第1頁
單片機原理與應(yīng)用_戴勝華_課后答案_第2頁
單片機原理與應(yīng)用_戴勝華_課后答案_第3頁
單片機原理與應(yīng)用_戴勝華_課后答案_第4頁
單片機原理與應(yīng)用_戴勝華_課后答案_第5頁
已閱讀5頁,還剩11頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、.單片機作業(yè)答案-第二章1、MCS-51系列單片機內(nèi)部有哪些主要的邏輯部件?P10答:MCS-51系列單片機內(nèi)部的邏輯部件主要有:算術(shù)/邏輯部件ALU、累加器A、只讀存儲器ROM、隨機存儲器RAM、指令寄存器IR、程序計數(shù)器PC、定時器/計數(shù)器、I/O接口電路、程序狀態(tài)寄存器PSW、寄存器組。3、MCS-51內(nèi)部RAM區(qū)功能如何分配?如何選用4組工作寄存器中的一組作為當前的工作寄存器組?位尋址區(qū)域的字節(jié)地址范圍是多少?P13-P15答:MCS-51內(nèi)部RAM的地址空間為00H-7FH,128B,按功能分為3個區(qū)域。00H-1FH的32B單元是4個工作寄存器組,單片機執(zhí)行程序時,具體使用哪一組是

2、通過對PSW的RS1、RS0兩位的設(shè)置來實現(xiàn);20H-2FH的16B共128位,是可以按位尋址的內(nèi)部RAM區(qū);30H-7FH的80B單元是只能按字節(jié)尋址的內(nèi)部RAM區(qū)。5、8031設(shè)有4個8位并行端口,若實際應(yīng)用8位I/O口,應(yīng)使用P0-P3中的哪個端口傳送?16位地址如何形成?P19-P21答:P1口是專門供用戶使用的I/O口,是準雙向接口,故可以使用P1口傳送; P0口既可作地址/數(shù)據(jù)總線使用,又可作通用I/O使用。一方面用來輸出外部存儲器或I/O的低8位地址,另一方面作為8位數(shù)據(jù)輸入/輸出口,故由P0口輸出16位地址的低8位; P2口可作通用I/O口使用,與P1口相同。當外接存儲器或I/

3、O時,P2口給出地址的高8位,故P2口輸出16位地址的高8位。8、MCS-51的時鐘周期、機器周期、指令周期是如何分配的?當振蕩頻率為10MHz時,一個機器周期為多少微妙?P25答:CPU執(zhí)行一條指令的時間稱為指令周期,它是以機器周期為單位的。MCS-51典型的指令周期為一個機器周期,每個機器周期由6個狀態(tài)周期組成,每個狀態(tài)周期由2個時鐘周期(振蕩周期)組成。當振蕩頻率為10MHz時,一個機器周期為12/10M Hz=1.2us。9、在MCS-51擴展系統(tǒng)中,片外程序存儲器和片外數(shù)據(jù)存儲器地址一樣時,為什么不會發(fā)生沖突?P12;P13、P18答:1、程序存儲器和數(shù)據(jù)存儲器物理上是獨立的,尋址片

4、外程序存儲器和片外數(shù)據(jù)存儲器的尋址方式、尋址空間和控制信號不同。2、對外部程序存儲器訪問使用MOVC指令;對外部數(shù)據(jù)存儲器訪問使用MOVX指令。10、MCS-51的P3口具有哪些第二種功能?P19表2-6答: P3.0 RXD(串行輸入口) P3.1 TXD(串行輸出口)P3.2 INT0(外部中斷0) P3.3 INT(外部中斷1)P3.4 T0(定時器0外部中斷) P3.5 T1(定時器1外部中斷)P3.6 WR(外部數(shù)據(jù)存儲器寫信號)P3.7 RD(外部數(shù)據(jù)存儲器讀信號)11、位地址7CH與字節(jié)地址7CH有哪些區(qū)別?位地址7CH具體在內(nèi)存中什么位置?P14答:位地址7CH與字節(jié)地址7CH

5、在RAM中的位置不同,尋址方式也不用。位地址7CH在內(nèi)部RAM區(qū)2FH中,可以位尋址;字節(jié)地址7CH在用戶區(qū)中,只能按字節(jié)尋址。第三章2、什么是尋址方式?MCS-51單片機有哪幾種尋址方式?P36答:尋址方式是指令中確定操作數(shù)的形式。MSC-51單片機有立即數(shù)尋址、直接尋址、寄存器尋址、寄存器間接尋址、變址尋址、相對尋址、位尋址。3、指出下列指令中畫線的操作數(shù)的尋址方式?P36MOV R0, #55H ; 立即尋址 MOV A, 2AH ; 直接尋址 MOV A, R1 ; 寄存器間接尋址MOV R0, A ; 寄存器尋址 DIV A, B ; 寄存器尋址 ADD A, R7 ; 寄存器尋址

6、MOVX A, DPTR ; 寄存器間接尋址MOV DPTR, #0123H ; 立即尋址 MOVC A, A+DPTR ; 基址加變址尋址 INC DPTR ; 寄存器尋址 7、為什么要進行十進制調(diào)整?調(diào)整方法是什么?P49答:十進制表示用BCD碼規(guī)則,相加大于10進位;運算用二進制規(guī)則,相加大于16進位。所以要進行十進制調(diào)整。調(diào)整方法:數(shù)的低四位大于9或標志位AC=1,則低四位加06H調(diào)整。高四位大于9或標志位CY=1則高四位加60H。8、編程實現(xiàn)兩個一字節(jié)壓縮型BCD碼的減法。設(shè)被減數(shù)地址在R0中,減數(shù)地址在R1中,差仍存于被減數(shù)地址單元中。?答: CLR CMOV A,#9AH SUB

7、B A,R1 ADD A,R0DA AMOV R0,A9、把片外數(shù)據(jù)存儲器8000H單元中的數(shù)據(jù)讀到累加器中,應(yīng)用哪幾條指令?P45例3.7答: MOV DPTR, #8000HMOV A, DPTR10、已知內(nèi)部RAM中,(A) =35H,(R0) =6FH,(P1) =0FCH,(SP) =0C0H。分別寫出下列各條指令的執(zhí)行結(jié)果。P41-(1) MOV R0, A ; (R0)=35H P41(2)(2) MOV R0, A ; (6FH)=35H P42(4)(3) MOV A, #90H ; (A)=90H P41(1)(4) MOV A, 90H ; (A)=(90H) P41(1

8、)(5) MOV 80H, #81H ; (80H)=81H P42(3)(6) MOVX R0, A ; (6FH)=35H P45 2(7) PUSH A ; (0C1H)=35H,(SP)=0C1H P43(6)(8) SWAP A ; (A)=53H P44(8)(9) XCH A, R0 ; (A)=6FH,(R0)=35H P44(7)第四章2、在匯編語言程序設(shè)計中,為什么要采用標號來表示地址?標號的構(gòu)成原則是什么?使用標號有什么限制?注釋段起什么作用?P69答:采用標號便于在編寫程序時,實現(xiàn)跳轉(zhuǎn)、循環(huán)等程序控制轉(zhuǎn)移。標號位于語句的開始,由以字母開頭的字母和數(shù)字組成,它代表語句的地

9、址。標號與指令間要用冒號“:”分開,標號與“:”之間不能有空格,“:”與操作碼之間可以有空格。注釋段放在語句的最后,以冒號開始,為不可執(zhí)行部分,對程序進行解釋性說明。3、MCS-51匯編語言有哪幾條常用的偽指令?各起什么作用?P70-P72答:MCS-51匯編語言有以下常用的偽指令:1、設(shè)置起始地址偽指令ORG(Origin)格式:ORG 起始地址作用:ORG偽指令總是出現(xiàn)在每段源程序或數(shù)據(jù)塊的開始,可以使程序、子程序和數(shù)據(jù)快存放在存儲器的任何位置。若在源程序中不放ORG指令,則匯編將從0000H單元開始編排目標程序。ORG定義控件地址應(yīng)由從小到大,且不能重疊。2、定義字節(jié)偽指令DB(Defi

10、ne Byte)格式:DB 作用:把項或項表的數(shù)值存入從標號開始的連續(xù)單元中。3、定義字偽指令DW(Define Word)格式:DW 作用:基本含義與DB相同,不同的是DW定義16位數(shù)據(jù)。4、預留存儲區(qū)偽指令DS(Define Storage)格式:DS 作用:由標號指定的單元開始,定義一個存儲區(qū),以給程序使用。存儲區(qū)內(nèi)預留的存儲單元數(shù)由表達式的值決定。5、為標號賦值偽指令EQU格式:EQU 數(shù)或匯編符號作用:將操作數(shù)中的地址或數(shù)據(jù)賦給標號字段的標號,故又稱為等值指令。6、數(shù)據(jù)地址賦值偽指令DATA格式:DATA 作用:其功能和EQU類似,但有以下區(qū)別。(1)用DATA定義的標識符匯編時作為

11、標號登記在符號表中,所以可以先使用后定義;而EQU定義的標識符必須先定義后使用。(2)用EQU可以把一個匯編符號賦給字符名,而DATA只能把數(shù)據(jù)賦給字符名。(3)DATA可以把一個表達式賦給字符名,而DATA只能把數(shù)據(jù)賦給字符名。(4)DATA常在程序中用來定義數(shù)據(jù)地址。7、位地址符號偽指令BIT格式:字符名 BIT 位地址作用:把位地址賦給字符名稱8、源程序結(jié)束偽指令END格式:END 作用:END命令通知匯編程序結(jié)束匯編。在END之后,所有的匯編語言指令均不作處理。如果沒有這條指令,匯編程序通常會給出“警告”指示。6、外部RAM中從1000H到10FFH有一個數(shù)據(jù)區(qū),現(xiàn)在將它傳送到外部RA

12、M中2500H單元開始的區(qū)域中,編寫有關(guān)程序。COMPARE WITH P80 例4.10答: START: MOV R0,#00HMOV DPTR,#1000HLOOP: MOVX A,DPTRMOV DPH,#25HMOVX DPTR,AMOV DPH,#10HINC DPTRINC R0DJNZ R0,LOOPSJMP $11、設(shè)系統(tǒng)晶體振蕩頻率為12MHz,請編寫延時50ms的延時子程序。P81例4.11答:使用12MHz晶振時,1個機器周期為1us,一條DJNZ耗時2us,采用雙重循環(huán)方法,50ms=2us*250*100,程序如下:DL50MS: MOV R4, #100DELAY

13、1: MOV R3 , #250DELAY2: DJNZ R3, DELAY2DJNZ R4, DELAY1RET12、分析下列程序中各條指令的作用,并說明運行后相應(yīng)寄存器和內(nèi)存單元的結(jié)果。MOV A, #34H ; (A)=34H MOV B, #0ABH ; (B)=0ABH MOV 34H, #78H ; (34H)=78H XCH A, R0 ; (A),(R0)互換 XCH A, R0 ; (A),(R0)互換XCH A, B ; (A),(B)互換 SJMP $ ; 暫停 第五章:2、8051單片機的定時器/計數(shù)器有哪幾種工作方式?各有什么特點?P105答: 8051單片機的定時器

14、/計數(shù)器有4種工作方式,分別是:工作方式0:M1M0=00,為13位定位器/計數(shù)器,其計數(shù)器由THi的全8位和TLi的低5位構(gòu)成,TLi的高3位未用。當TLi的低5位計滿時,向THi進位,THi溢出后對中斷標志位TFi 置“1”,并申請中斷。Ti是否溢出可用軟件查詢TFi是否為“1”。計數(shù)器范圍為1-8192,如需再次定時或計數(shù),需要用指令重置時間常數(shù)。工作方式1:M1M2=01,與工作方式0基本相同,不同之處在于其為16位定時器/計數(shù)器,計數(shù)值范圍為1-65536,如需再次定時或計數(shù),需要用指令重置時間常數(shù)。工作方式2:M1M0=10,為可重裝初值的8位定時器/計數(shù)器。把16位的計數(shù)器拆成兩

15、個8位計數(shù)器,TLi用作8位計數(shù)器,THi用來保存初值。每當TLi計滿溢出時,可自動將THi的初值再裝入TLi,繼續(xù)計數(shù),循環(huán)重復。其計數(shù)范圍為1-256。這種工作方式可省去用戶軟件中重裝初值的程序,并可產(chǎn)生相當精度的定時時間,特別適合于產(chǎn)生周期性脈沖及作為串行口波特率發(fā)生器,缺點是計數(shù)長度太小。工作方式3:M1M0=11,該工作方式只適用于T0。T0在該工作方式被分成兩個相互獨立的8位計數(shù)器,其中TL0既可以作計數(shù)器使用,又可以作定時器使用。而TH0只能作8位定時使用,并占用了T1的控制啟動位TR1和溢出標志位TF1。T1只能工作在方式0、方式1或方式2,只能用在不需中斷控制的場合。工作方式

16、3是為了在使用串行口時,需要兩個獨立的計數(shù)器而特別提供的。因為此時把定時器1規(guī)定用作串行通信的波特率發(fā)生器,并設(shè)定為工作方式2,使用時只要將計數(shù)器初值送到計數(shù)器寄存器即開始工作,啟動后不需要軟件干預,也不使用溢出標志。9、設(shè)晶振頻率為6MHz。編程實現(xiàn):使用定時器T0工作在方式2、定時,在P1.4輸出周期為100us,占空比為4:1的矩形脈沖。答:使用晶體振蕩器頻率為6MHz時,1個機器周期為2us。欲使占空比為4:1,可將矩形脈沖分為5份,前4份P1.4輸出高電平,第5份輸出低電平。計數(shù)初值: 計數(shù)初值滿足:(256-Y)*2us=20us,解得計數(shù)初值為Y=246=0F6H,則TH0=TL

17、0=0F6H。TMOD寄存器定義:D7D6D5D4D3D2D1D0GATEC/M1M0GATEC/M1M0定時器1定時器0定時器工作方式定義:M1M0工作方式說明00013位定時器/計數(shù)器01116位定時器/計數(shù)器102可重裝8位定時器/計數(shù)器113T0分成兩個8位定時器/計數(shù)器,T1停止計數(shù)定時器0,定時方式2,故TMOD設(shè)置:00000010=02H,。程序如下:ORG 2000HSTART: MOV TMOD, #02H /定時器0,定時方式2MOV TL0,0F6H /初值送TL0MOV TH0,0F6H /初值送TH0SETB P1.4 /P1.4置高SETB TR0 /允許T0計數(shù)

18、LOOP: MOV R0, #4 /由于是4:1,故計數(shù)周期定為4WAIT1: JNB TF0,WAIT1 /等待定時器T0溢出標志位CLR TF0 /軟件清零TF0DJNZ R0,WAIT1 /判斷R0是否等于0,即判斷是否循環(huán)了四次CPL P1.4 /對P1.4取反WAIT2: JNB TF0,WAIT2/等待定時器T0溢出標志位,即判斷是否循環(huán)一次CLR TF0 /軟件清零TF0CPL P1.4 /對P1.4再次取反SJMP LOOP /程序循環(huán)運行第六章2、MCS-51單片機的串行口共有哪幾種工作方式?各有什么特點和功能?P129答: MCS-51單片機的串行口共有以下四種工作方式:工

19、作方式0:SM1SM0=00,為同步移位寄存器。當一個數(shù)據(jù)寫入串行口發(fā)送緩沖器時,串行口即將8位數(shù)據(jù)以fosc/12的固定波特率從RXD引腳輸出,低位在先,TXD為移位脈沖信號輸出端。發(fā)送完8位數(shù)據(jù)后中斷標志位T1置“1”。特點是:移位寄存器的發(fā)送和接收以8位為一幀,不設(shè)起始位和停止位,低位在前高位在后,波特率固定,一個機器周期移位一次。工作方式1:SM1SM0=01,串行口被定義為波特率可變的8位異步通信接口。方式1的波特率=(2smod/32) x定時器T1的溢出率特點為:一幀信息為10位,其中1位起始位“0”,8位數(shù)據(jù)位(地位在前)和一位停止位“1”,其波特率可變。工作方式2:SM1SM

20、0=10,串行口被定義為9位異步通信接口。方式2的波特率=(2smod/64) x 振蕩器頻率特點是:一幀信息為11位,1位起始位“0”,8位數(shù)據(jù)位(低位再前),1位可編程為“1”或“0”的第9位數(shù)據(jù),1位停止位“1”。工作方式3:SM1SM0=11,串行口被定義為波特率可變的9位異步通信方式,除了波特率外,方式3和方式2完全相同。方式3的波特率=(2smod/32) x 定時器T1的溢出率特點:一幀信息為11位,1位起始位“0”,8位數(shù)據(jù)位(低位在先),1位可編程為“1”或“0”的第9位數(shù)據(jù),1位停止位“1”。3、MCS-51單片機4種工作方式的波特率應(yīng)如何確定?P134答: MCS-51單

21、片機波特率的確定方法:(1)方式0的波特率=fosc/12(2)方式1的波特率=(2smod/32) x定時器T1的溢出率。(3)方式2的波特率=(2smod/64) x 振蕩器頻率(4)方式3的波特率=(2smod/32) x 定時器T1的溢出率7、請用查詢法編寫程序?qū)崿F(xiàn)串行口工作方式1下的發(fā)送程序。設(shè)單片機主頻為11.0592MHz,波特率為1200bps、發(fā)送數(shù)據(jù)緩沖區(qū)在外部RAM,起始地址為1000H,數(shù)據(jù)塊長度為30B,采用偶校驗(其他條件自設(shè))。答:1) 設(shè)數(shù)據(jù)為ASCII碼形式,最高位作為奇偶校驗位。2) T1作為波特率發(fā)生器,工作于方式2。TMOD寄存器定義:D7D6D5D4D

22、3D2D1D0GATEC/M1M0GATEC/M1M0定時器1定時器0定時器工作方式定義:M1M0工作方式說明00013位定時器/計數(shù)器01116位定時器/計數(shù)器102可重裝8位定時器/計數(shù)器113T0分成兩個8位定時器/計數(shù)器,T1停止計數(shù)故,TMOD=20H;3) 設(shè)SMOD=0。4) 串行口工作在方式1SCOD寄存器定義:D7D6D5D4D3D2D1D0SM0SM1SM2RENTB8RB8TIRI串行口工作方式定義:SM0SM1工作方式方式簡單描述波特率000移位寄存器I/O主振頻率/120118位UART可變1029位UART主振頻率/32或主振頻率/641139位UART可變故,SC

23、ON=40H;5) 波特率為1200bps通過計算得T1的時間常數(shù)為0E8H。程序如下:ORG 1000HSTART: MOV TMOD, #20H ;T1工作方式2MOV TL1, #0E8HMOV TH1, #0E8HMOV PCON, #00H ;SMOD=0波特率不倍增SETB TR1 ;啟動T1MOV SCON, #40H ;串行口工作方式1MOV DPTR, #1000H ;MOV R2, #30 ;計數(shù)值30LOOP: MOVX A, DPTRMOV C, P ;送奇偶標志MOV ACC.7, C ;MOV SBUF, A ;發(fā)送字符WAIT: JNB TI, WAIT ;CLR

24、 TI ;INC DPTRDJNZ R2,LOOPAJMP START第七章1、MCS-51有幾個中斷源?有幾級中斷優(yōu)先級?各中斷標志如何產(chǎn)生?又如何清除? P149答:5個中斷源:2個外部中斷INT0、INT1,3個內(nèi)部中斷T0、T1、串行口。2個優(yōu)先級:高級中斷和低級中斷,由用戶定義。中斷標志的產(chǎn)生:(1) 外部中斷可以設(shè)置邊沿觸發(fā)或者電平觸發(fā),邊沿觸發(fā)進入中斷程序后硬件自動清中斷標志,電平觸發(fā)需要軟件清標志位;(2) 定時器T0,T1計數(shù)溢出產(chǎn)生中斷,進入中斷程序硬件自動清標志位;(3) 串行口發(fā)送完成或者接收到數(shù)據(jù)就觸發(fā)中斷,由于是兩個中斷標志共享一個中斷向量,所以需要在中斷程序里由軟件判斷是發(fā)送中斷還是接受中斷,并且只能由軟件清標志位;中斷請求的清除: (1) 定時中斷由硬件自動撤除定時中斷響應(yīng)后,硬件自動把標志位(TFx)清零。(2) 外

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 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

提交評論