單片機與接口技術(shù)課后習題答案_第1頁
單片機與接口技術(shù)課后習題答案_第2頁
單片機與接口技術(shù)課后習題答案_第3頁
單片機與接口技術(shù)課后習題答案_第4頁
單片機與接口技術(shù)課后習題答案_第5頁
已閱讀5頁,還剩36頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

單片機與接口技術(shù)課后習題答案習題答案第二章:硬件結(jié)構(gòu)

一、填空

1.0;低電平

2.32;4;8;R0-R7

3.上電自動復位;手動按鍵復位;0;00H-07H;RS1=1,RS0=0

4.內(nèi)部數(shù)據(jù)存儲器;外部數(shù)據(jù)存儲器;內(nèi)部程序存儲器;外部程序存儲器;3

5.00H-FFH;0000H-FFFFH

6.0B;4KB

7.1.2MHz;12MHz;1us

二、選擇

1.①2.④3.①4.①5.②6.③7.③8.③9.③

三、判斷

1.×2.×3.×4.√5.×6.×7.×8.×9.×①②③④習題答案第三章:指令系統(tǒng)

一、填空

1.指令

2.111;單;雙;三

3.7

4.操作數(shù);A;B;DPTR

5.操作數(shù);地址;R0;R1;DPTR

6.直接

7.DPTR;PC;A;程序存儲器

8.DPTR;SP;MOVX

9.直接;立即

10.80H習題答案第三章:指令系統(tǒng)

一、填空

11.68H

12.68H

13.62H;68H;36H

14.41H;39H;88H

15.BFH;0;0;0

16.2EH;1;1;0

17.26H;1

18.90H;06H;0;1

19.16H;05H;0;0

20.06H;09H

21.00H;96H

二、選擇

1.④2.③3.④4.②①②③④習題答案三、編程與問答題

9:試編寫程序,采用“與”運算,判斷內(nèi)RAM20H單元的8位二進制數(shù)是整數(shù)還是負數(shù)。

ORG 0000H

MOV 20H,#10 ;賦初值

MOV A,#80H ;(ACC.7)=1

ANL A,20H

JZ POS ;正數(shù)?(POSITIVENUMBER)

NEG: CLR F0 ;負數(shù)(NEGATIVENUMBER)

SJMP OUT ;END

POS: SETB F0 ;正數(shù),置標志位F0

OUT: NOP

END ;結(jié)束①②③④習題答案11:試編寫程序,將內(nèi)RAM從20H開始存放的16個數(shù)傳送到從18H開始的單元中。

ORG 0000H

MOV R0,#20H ;存放數(shù)據(jù)原始起始地址

MOV R1,#1 ;第一個數(shù)據(jù)為1

INIT: MOV A,R1 ;循環(huán)送數(shù)(初始化)

MOV @R0,A ;

INC R0 ;

INC R1 ;

CJNE R1,#11H,INIT ;是否送完16個數(shù)?

SETB F0 ;置初始化完成標志位

MOV R0,#20H ;存放數(shù)據(jù)原始起始地址

MOV R1,#18H ;存放數(shù)據(jù)目標起始地址

MOV R2,#10H ;計數(shù):共16個數(shù)據(jù)

LOOP: MOV A,@R0 ;送數(shù)

MOV @R1,A

INC R0

INC R1

DJNZ R2,LOOP ;是否傳送結(jié)束?

SETB P1.0 ;置傳送結(jié)束標志位

END ;結(jié)束①②③④習題答案13:試編寫程序,將片外RAM從2000H開始存放的16個數(shù)傳送到片外RAM從30H開始的單元中。

ORG 0000H

MOV DPTR,#2000H ;存放數(shù)據(jù)原始起始地址

MOV A,#0 ;第一個數(shù)據(jù)為1

INIT: MOVX @DPTR,A ;循環(huán)送數(shù)(初始化)

INC DPTR ;

INC A ;

CJNE A,#10H,INIT ;是否送完16個數(shù)?

SETB F0 ;置初始化完成標志位

MOV DPTR,#2000H ;存放數(shù)據(jù)原始起始地址

MOV R0,#30H ;存放數(shù)據(jù)目標起始地址

MOV R1,#10H ;計數(shù):共16個數(shù)據(jù)

LOOP: MOVX A,@DPTR ;循環(huán)送數(shù)(轉(zhuǎn)儲)

MOVX @R0,A

INC DPTR

INC R0

DJNZ R1,LOOP ;是否傳送結(jié)束?

SETB P1.0 ;置傳送結(jié)束標志位

END ;結(jié)束①②③④習題答案第四章:程序設計

一、填空

1.保護;恢復

2.機器語言

3.0500H;0505H;01H;0507H

二、編程

①②③④【習題P85-5】找最大數(shù)《單片機與接口技術(shù)》開始第一個數(shù)送入BIG取數(shù)送入A(BIG)≥(A)?結(jié)束交換兩數(shù)NY初始化還有數(shù)嗎?NY《單片機與接口技術(shù)》LIST EQU 20H

NUM EQU 30

BIG EQU 40H

ORG 1000H

MOV R0,#LIST ;設置地址指針,指向存放數(shù)據(jù)的起始單元

MOV R7,#NUM ;數(shù)據(jù)個數(shù)

MOV BIG,@R0 ;將第一個數(shù)當做當前最大數(shù)

DEC R7 ;修改剩余的數(shù)據(jù)個數(shù)

NEXT: INC R0 ;指向下一個數(shù)據(jù)單元

MOV A,@R0 ;取數(shù)據(jù)

CJNE A,BIG,COMP ;比較當前數(shù)與當前最大數(shù)

SJMP CONT ;兩數(shù)相等,不用處理

COMP: JC CONT ;兩數(shù)不等,比較大小

MOV BIG,A ;A中數(shù)大,送入BIG中

CONT: DJNZ R7,NEXT ;判斷數(shù)據(jù)是否比較完畢

RET【習題P85-5】源程序習題答案第五章:中斷系統(tǒng)

一、填空

1.共享

2.外部

3.PC;PC;外部中斷0矢量地址

4.外部中斷0

5.電平;邊沿

二、選擇

1.②2.③3.④4.①5.③6.④7.②8.②

三、編程①②③④【習題P99-3】試編寫一段對中斷系統(tǒng)初始化程序,要求允許外部中斷0(電平觸發(fā))、T0中斷、串行口中斷,且使T0為高優(yōu)先級中斷?!秵纹瑱C與接口技術(shù)》《單片機與接口技術(shù)》 ORG 0000H

AJMP MAIN

ORG 0003H ;外部中斷0中斷矢量地址

AJMP IT_0

ORG 000BH ;定時器0中斷矢量地址

AJMP IT_T0

ORG 0023H ;串口中斷矢量地址

AJMP IT_S

ORG 0100H ;主程序起始地址

MAIN: … ;主程序其他初始化工作

SETB EXO ;開外部中斷0

CLR ITO ;置外部中斷0電平觸發(fā)方式

SETB ET0 ;開定時器0中斷

SETB ES ;開串口中斷

SETB EA ;開CPU總中斷

SETB PT0 ;置定時器0為高優(yōu)先級中斷

… ;主程序主體內(nèi)容

IT_0: … ;外部中斷0中斷處理子程序

IT_T0: … ;定時器0中斷處理子程序

IT_S: … ;串口中斷處理子程序

END ;主程序結(jié)束【習題P99-3】初始化程序中斷初始化習題答案第六章:定時器

一、填空

1.16;4;3

2.中斷標志位;查詢標志位

3.32768us

二、選擇

1.③2.④

本章相關(guān)習題題目及答案詳見后面內(nèi)容。①②③④《單片機與接口技術(shù)》一、填空題

1.8051單片機內(nèi)部有2個()位的加1定時/計數(shù)器,其中T0有()種工作模式;T1有()種工作模式。

2.當計數(shù)器產(chǎn)生溢出中斷時,把定時器控制寄存器的TF0(或TF1)位置位。對計數(shù)器溢出的處理,中斷方式時,該位作為()位使用;在查詢方式時,該位作為()位使用。

3.在定時器工作模式0下,計數(shù)器的寬度為13位,如果系統(tǒng)晶振頻率為3MHz,則最大定時時間為()。1.16;4;32.中斷標志位;查詢標志位3.答案:《單片機與接口技術(shù)》二、選擇題

1.在下列寄存器中,與定時/計數(shù)器無關(guān)的是()

①TCON

②TMOD

③SCON

④IE

2.若以查詢方式進行定時應用,則應用程序中的初始化內(nèi)容應包括()

①系統(tǒng)復位、設置工作方式、設置計數(shù)器初值

②設置計數(shù)器初值、設置中斷方式、啟動定時器

③設置工作方式、設置計數(shù)器初值、開中斷

④設置工作方式、設置計數(shù)器初值、關(guān)中斷③④《單片機與接口技術(shù)》三、問答題

1.定時/計數(shù)器用作定時器時,其定時時間與哪些因素有關(guān)?用作計數(shù)器時,對外部計數(shù)脈沖有何要求?

2.當定時器0工作在模式3時,由于TR1被T0占用,那么應如何控制定時器1的開啟和關(guān)閉?fosc(晶振頻率)、工作模式(0、1、2、3)、計數(shù)初值的設置等因素有關(guān);fmax≦fosc/242.開啟:送入設置定時器T1為模式0、1、2的控制字,如:

MOVTMOD,#23H ;或13H,03H

關(guān)閉:送入設置定時器T1為模式3的控制字,如:

MOVTMOD,#33H答案:《單片機與接口技術(shù)》時鐘頻率為12MHz時,其定時/計數(shù)器在計數(shù)狀態(tài)下允許輸入的最高計數(shù)脈沖的頻率是多少?1.具有8位自動重裝入計數(shù)初值功能,定時精確,但計數(shù)值有限,為0~255。適用于對定時精度要求高,如用作精確的脈沖信號發(fā)生器,或用作串行口波特率發(fā)生器等。2.fmax=fosc/24=24MHz/24=1MHz答案:《單片機與接口技術(shù)》四、計算與編程

7.在定時器0的工作模式0、1、2中,如果要求對T0端輸入4個脈沖時,計數(shù)器就產(chǎn)生中斷溢出,則3種工作模式下的計數(shù)初值分別應該設置成多少?TMOD寄存器應該如何設置?答案:模式TMOD初值(TH0)、(TL0)004HX=213-4=8192-4=8188D=1FFCH(TH0)=0FFH,(TL0)=1CH105HX=216-4=65536-4=65532D=0FFFCH(TH0)=0FFH,(TL0)=0FCH206HX=28-4=256-4=252D=0FCH(TH0)=0FCH,(TL0)=0FCH共性問題:

需置初值TH0,TL0,高四位若為A-F,前面應加0

《單片機與接口技術(shù)》9.設單片機的晶振頻率為6MHz,編程用定時器T0,在P1.0口產(chǎn)生一個50Hz的方波。(要求用中斷完成)分析:欲產(chǎn)生50Hz的連續(xù)方波,其周期為1/50=0.02s=20ms,則只需在P1.0口以10ms周期交替輸出高低電平即可,因此定時時間應為10ms。(如右圖示)確定定時器的工作模式:根據(jù)單片機fosc=6MHz,可先計算確定T0在各種工作模式下的最大定時時間:模式0tmax=213×12/fosc=8192×12/(6×106))=16.384ms模式1tmax=216×12/fosc=65536×12/(6×106))=131.072ms模式2tmax=28×12/fosc=256×12/(6×106))=512us根據(jù)以上計算結(jié)果可知,使用模式0或1都可以直接實現(xiàn)10ms的定時,而要使用模式2則還需設置軟計數(shù)器,下面就按模式0和模式1兩種方案分別進行計算和編程。P1.010ms10ms20ms《單片機與接口技術(shù)》方案一:T0工作于模式01.計算計數(shù)初值:

x=213-t/(12/fosc)=8192-(10×10-3)/(6/(12×106))=3192D將3192轉(zhuǎn)換為二進制數(shù):x=0110001111000B:(TMOD)=00HGATEM1M0GATEM1M0C/TC/T0 0 0 0 0 0 0 0則(TH0)=01100011B=63H,(TL0)=00011000B=18H《單片機與接口技術(shù)》方案一源程序(中斷方式);P113-9.asm(fosc=6MHz,T0中斷方式,由P1.0輸出50Hz方波)

ORG 0000H

AJMP START ;跳轉(zhuǎn)主程序

ORG 000BH ;定時器T0中斷矢量地址

LJMP PITO ;跳轉(zhuǎn)中斷服務程序

ORG 0100H

START: MOV SP,#60H ;堆棧初始化

MOV TMOD,#00H ;定時器T0工作方式0(13位計數(shù)器)

MOV TH0,#63H ;置計數(shù)初值

MOV TL0,#18H

CLR P1.0 ;設置方波的起始狀態(tài)

SETB EA ;開中斷

SETB ET0

SETB TR0 ;啟動定時器

SJMP $ ;等待中斷

PITO: MOV TL0,#18H ;重送計數(shù)初值,保證定時時間始終為10ms

MOV TH0,#63H

CPL P1.0 ;輸出方波

RETI ;中斷返回

END《單片機與接口技術(shù)》方案一源程序(查詢方式);P113-9.asm(fosc=6MHz,T0查詢方式,由P1.0輸出50Hz方波)

ORG 0000H

START: MOV IE,#00H ;關(guān)中斷,考慮通用性

MOV TMOD,#00H ;定時器T0工作方式0(13位計數(shù)器)

MOV TL0,#18H ;置計數(shù)初值

MOV TH0,#63H

CLR P1.0 ;設置方波的起始狀態(tài)

SETB TR0 ;啟動定時器

LOOP: JNB TF0,$ ;等待10ms定時時間到

MOV TL0,#18H ;重送計數(shù)初值,保證定時時間始終為10ms

MOV TH0,#63H

CLR TF0 ;清溢出標志,以便下次判斷

CPL P1.0 ;輸出方波

SJMP LOOP ;產(chǎn)生連續(xù)方波

END《單片機與接口技術(shù)》方案二:T0工作于模式11.計算計數(shù)初值:

x=216-t/(12/fosc)=65536-(10×10-3)/(6/(12×106))=60536D:(TMOD)=01HGATEM1M0GATEM1M0C/TC/T0 0 0 0 0 0 0 1將60536轉(zhuǎn)換為二進制數(shù):x=1110110001111000B則(TH0)=11101100B=0ECH,(TL0)=01111000B=78H《單片機與接口技術(shù)》方案二源程序(中斷方式);P113-9.asm(fosc=6MHz,T0中斷方式,由P1.0輸出50Hz方波)

ORG 0000H

AJMP START ;跳轉(zhuǎn)主程序

ORG 000BH ;定時器T0中斷矢量地址

LJMP PITO ;跳轉(zhuǎn)中斷服務程序

ORG 0100H

START: MOV SP,#60H ;堆棧初始化

MOV TMOD,#01H ;定時器T0工作方式1(16位計數(shù)器)

MOV TH0,#0ECH ;置計數(shù)初值

MOV TL0,#78H

CLR P1.0 ;設置方波的起始狀態(tài)

SETB EA ;開中斷

SETB ET0

SETB TR0 ;啟動定時器

SJMP $ ;等待中斷

PITO: MOV TL0,#78H ;重送計數(shù)初值,保證定時時間始終為10ms

MOV TH0,#0ECH

CPL P1.0 ;輸出方波

RETI ;中斷返回

END《單片機與接口技術(shù)》方案二源程序(查詢方式);P113-9.asm(fosc=6MHz,T0查詢方式,由P1.0輸出50Hz方波)

ORG 0000H

START: MOV IE,#00H ;關(guān)中斷,考慮通用性

MOV TMOD,#01H ;定時器T0工作方式1(16位計數(shù)器)

MOV TL0,#78H ;置計數(shù)初值

MOV TH0,#0ECH

CLR P1.0 ;設置方波的起始狀態(tài)

SETB TR0 ;啟動定時器

LOOP: JNB TF0,$ ;等待10ms定時時間到

MOV TL0,#78H ;重送計數(shù)初值,保證定時時間始終為10ms

MOV TH0,#0ECH

CLR TF0 ;清溢出標志,以便下次判斷

CPL P1.0 ;輸出方波

SJMP LOOP ;產(chǎn)生連續(xù)方波

END習題答案第七章:系統(tǒng)擴展

一、填空

1.分時復用的數(shù)據(jù)總線和低8位地址總線;高8位地址總線;寫控制線;讀控制線

2.64KB;64KB

3.高

4.統(tǒng)一;統(tǒng)一

5.鎖存;三態(tài)緩沖

6.選通控制

二、選擇

1.②2.①3.③4.④5.③6.②7.③①②③④習題答案三、擴展

2.用2片Intel2716給8051單片機擴展一個4KB的外部程序存儲器,要求地址空間與8051的內(nèi)部ROM相銜接,畫出邏輯連接圖。805174LS373D0~D7Q0~Q7O0~O7CEOEOEA0~A7A8~A102716(A)O0~O7CEOEA0~A7A8~A102716(B)8ALEP0.0~P0.7PSEN3P2.3P2.4P2.5P2.6P2.7P2.0~P2.274LS138Y3Y2CBA8G擴展補充練習

1.根據(jù)8031單片機的片外擴展電路,完成如下幾個問題。(1)外擴程序存儲器的容量是

,外擴數(shù)據(jù)存儲器的容量是

。(2)兩片存儲器芯片的地址范圍分別是多少?(地址線未用到的位填1) 2764范圍:

。 1#6264范圍:

。 2#6264范圍:

。答案:(1)8K,16K。

(2) 2764范圍:C000H~DFFFH

1#范圍:A000H~BFFFH 2#范圍:6000H~7FFFH擴展補充練習

2.根據(jù)四片8K×8位存儲器芯片的連接圖,請確定每片存儲器芯片的地址范圍。擴展補充練習3.如下圖所示,請使用74LS373作為地址鎖存器,74LS139作為地址譯碼器,使用4片16KB的E2PROM芯片27128擴展MCS-51單片機的程序存儲器至64KB,請完成電路連接,并確定各E2PROM芯片地址范圍。電路連接:地址范圍:芯片地址范圍10000H~3FFFH24000H~7FFFH38000H~BFFFH4C000H~FFFFH習題答案第八章:鍵盤與顯示器接口

一、填空

1.段選;位選

2.4;1

二、問答

1.靜態(tài)顯示電路與動態(tài)掃描顯示電路的特點:參見課件。

5.消除鍵盤抖動的方法有硬件消抖和軟件消抖,其中軟件消抖一般是采用延時子程序?qū)崿F(xiàn)的。

6.(下頁)①②③④習題答案+5VP1.4P1.3P1.0MCS-51P1.7P1.6P1.5P1.2P1.13210476511109815141312電路連接如圖

程序在后兩頁鍵盤掃描子程序SERCH:MOV R2,#0EFH ;掃描字初值(第0列低電平) MOV R3,#00H ;R3放列號LINE0: MOV A,R2 ; MOV P1,A ; MOV A,P1 ;取鍵盤狀態(tài) JB ACC.3,LINE1 ;第0行沒有按鍵,再判斷第1行 MOV A,#00H ;第0行有按鍵,行首號送A AJMP TRYK ;LINE1: JB

溫馨提示

  • 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

提交評論