單片機(jī)習(xí)題解答教材_第1頁(yè)
單片機(jī)習(xí)題解答教材_第2頁(yè)
單片機(jī)習(xí)題解答教材_第3頁(yè)
單片機(jī)習(xí)題解答教材_第4頁(yè)
單片機(jī)習(xí)題解答教材_第5頁(yè)
已閱讀5頁(yè),還剩14頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、 10.3 判斷下列說(shuō)法是否正確。判斷下列說(shuō)法是否正確。(1)DPTR可以分為2個(gè)8位的寄存器使用,但PC不行。( 對(duì) )(2)片內(nèi)RAM的位尋址區(qū),只能供位尋址使用,不能供字節(jié)尋址使用。(3)為使8051單片機(jī)的準(zhǔn)雙向I/O口工作在輸入方式,必須將它預(yù)先設(shè)置為1。 ( 對(duì) )(4)在8051單片機(jī)中,一個(gè)機(jī)器周期等于1s。(5)串行通信幀發(fā)送時(shí),指令把TB8位的狀態(tài)送入發(fā)送SBUF中。(6)特殊功能寄存器IE,與定時(shí)器/計(jì)數(shù)器的控制無(wú)關(guān)。(7)同一時(shí)間同一級(jí)別的多中斷請(qǐng)求,將形成阻塞,系統(tǒng)無(wú)法響應(yīng)。(8)8051單片機(jī)的CPU是由RAM和EPROM組成的。(9)串行口方式1的波特率是可變的,

2、通過(guò)定時(shí)器/計(jì)數(shù)器T1的溢出率設(shè)定。 ( 對(duì) )(10)在8051的中斷請(qǐng)求中,需外加電路實(shí)現(xiàn)中斷請(qǐng)求撤銷的是外部串行中斷。10.10 系統(tǒng)復(fù)位后執(zhí)行下述指令,試問(wèn)T0的定時(shí)時(shí)間為多長(zhǎng)? MOV TH0, #06H MOV TL0, #00H SETB TR0答: 系統(tǒng)復(fù)位后,TMOD=00H,此時(shí)T0工作為方式0、定時(shí)器初值為:TH0=06H,TL0=00H, 因?yàn)椴捎梅绞?工作,丟掉TL0的高3位,則THL0中的二進(jìn)制數(shù)為:0,0000,110 0,0000即變?yōu)?0C0H,則有: T0的定時(shí)時(shí)間為:(213-C0H)*Tcy = (8192-192)*Tcy = 8000*Tcy S。

3、10.12 若單片機(jī)系統(tǒng)的晶振頻率為11.0592MHz,串行口工作于方式1,波特率為4800b/s,請(qǐng)寫出T1作為波特率發(fā)生器的方式控制字和計(jì)數(shù)初值。 答:串行口工作于方式1,晶振頻率為11.0592MHz,由教材P.256的公式計(jì)算,或由表10.8查閱可知,TH1=FAH。即: 方式控制字 :TMOD=20H, 計(jì)數(shù)初值:TH1=TL1=FAH (SMOD=0);。 或或: TH1=TL1=F4H (SMOD=1)。 11.7 已知:40H單元中有一個(gè)正數(shù)X,試寫出對(duì)X求補(bǔ)的程序。答:對(duì)一個(gè)8位帶符號(hào)二進(jìn)制機(jī)器數(shù)的求補(bǔ)可以定義為“求反加1”。相應(yīng)程序?yàn)椋?MOV A,40H CPL A I

4、NC A MOV 40H,A 亦可:亦可: CLR A CLR C SUBB A,40H MOV 40H,A 11.8 試編程將試編程將A中的高四位送入中的高四位送入P2口的高四口的高四位,位,P2口低四位不變。口低四位不變。 MOV R0,A ANL A,#0F0H ANL P2,#0FH ORL P2,A MOV A,R0 11.14 11.14 編寫程序?qū)崿F(xiàn)十進(jìn)制減法,計(jì)算編寫程序?qū)崿F(xiàn)十進(jìn)制減法,計(jì)算65-3265-32 11.15 試編寫程序,將內(nèi)部試編寫程序,將內(nèi)部RAM以以BK為起始為起始地址的地址的10個(gè)單元中的數(shù)據(jù)求和,并將結(jié)果送入個(gè)單元中的數(shù)據(jù)求和,并將結(jié)果送入SUM單元。設(shè)

5、和不大于單元。設(shè)和不大于255 MOV R0,#BK MOV R7,#0AH CLR A LOOP:ADD A,R0 INC R0 DJNZ R7,LOOP MOV SUM,A SJMP $ 12.2 已知一個(gè)補(bǔ)碼形式的16位二進(jìn)制數(shù)(低8位在NUM單元,高8位在NUM+1單元),試編程求出該16位二進(jìn)制數(shù)的絕對(duì)值,并存放在原單元中。 MOV A,NUM+1 JNB ACC.7,DONE MOV R0,#NUM MOV A,R0 CPL A ADD A,#01H MOV R0,A INC R0 MOV A,R0 CPL A ADDC A,#00H MOV R0 A DONE:SJMP $ 12

6、.7 已知片內(nèi)已知片內(nèi)RAM 20H和和30H為起始地址的存儲(chǔ)區(qū)中分別有為起始地址的存儲(chǔ)區(qū)中分別有8字節(jié)無(wú)符號(hào)被減數(shù)和減數(shù)(低字節(jié)在前,高字節(jié)在后)。編寫子程序字節(jié)無(wú)符號(hào)被減數(shù)和減數(shù)(低字節(jié)在前,高字節(jié)在后)。編寫子程序完成減法運(yùn)算,并把差放入以完成減法運(yùn)算,并把差放入以20H為起始地址的存儲(chǔ)單元中為起始地址的存儲(chǔ)單元中BUBTR: MOV R0,#20H ;被減數(shù)起始地址送R0 MOV R1,#30H ;減數(shù)起始地址送R1 MOV R2,#08H ;字長(zhǎng)送R2 CLR C LOOP:MOV A,R0 ;被減數(shù)送A SUBB A,R1 ;相減,形成Cy MOV R0,A ;存差 INC R0

7、;修改被減數(shù)地址指針 INC R1 ;修改減數(shù)地址指針 DJNZ R2,LOOP ;若未完,則轉(zhuǎn)LOOP RET 12.8 片內(nèi)片內(nèi)RAM 20H單元開始存放著單元開始存放著8個(gè)無(wú)符號(hào)數(shù),編個(gè)無(wú)符號(hào)數(shù),編寫子程序找出其中的最大值送入片內(nèi)寫子程序找出其中的最大值送入片內(nèi)RAM的的30H單元單元 MOV R0,#20H ;數(shù)據(jù)區(qū)首地址送R0 MOV A,R0 ;取第一個(gè)數(shù)做基準(zhǔn)數(shù)送A MOV R7,#07H ;比較次數(shù)送計(jì)數(shù)器R7LOOP:INC R0 ;指向下一個(gè)單元 MOV 30H,R0 ;要比較的數(shù)暫存30H CJNE A,30H,CHK ;兩數(shù)作比較CHK:JNC LOOP1 ;A大,則轉(zhuǎn)

8、移 MOV A,R0 ;A小,則大數(shù)送ALOOP1:DJNZ R7,LOOP ;計(jì)數(shù)器減1,不為零,繼續(xù) MOV 30H,A ;比較完,存結(jié)果 RET 12.10 已知已知51系列單片機(jī)系統(tǒng)的晶振頻率為系列單片機(jī)系統(tǒng)的晶振頻率為6MHz,請(qǐng),請(qǐng)編寫程序,使用編寫程序,使用T0定時(shí),在定時(shí),在P1.0輸出連續(xù)矩形波,輸出連續(xù)矩形波, ORG 0000H ;采用查詢方式的程序MAIN:MOV TMOD,#01H ;設(shè)置T0工作于模式1 SETB TR0 ;啟動(dòng)T0WAIT0:SETB P1.0 MOV TH0,#0FFH ;T0計(jì)數(shù)初值(計(jì)數(shù)25,定時(shí)50us) MOV TL0,#0E7HWAIT

9、1:JNB TF0,WAIT1 CLR TF0 CLR P1.0 MOV TH0,#0FFH ;T0計(jì)數(shù)初值(計(jì)數(shù)75,定時(shí)150us) MOV TL0,#0B5HWAIT2:JNB TF0,WAIT2 CLR TF0 SJMP WAIT0 ORG 0000H ;采用中斷方式的程序 LJMP MAIN ;跳轉(zhuǎn)至主程序 ORG 000BH ;T0中斷向量地址 AJMP T0ISR ORG 0030HMAIN:MOV SP,#30H ;調(diào)整堆棧指針 MOV TMOD,#01H ;設(shè)置T0工作于模式1 MOV TH0,#0FFH ;T0定時(shí)初值(-25的補(bǔ)碼) MOV TL0,#0E7H MOV I

10、E,#82H ;打開全局中斷和T0中斷 SETB TR0 ;啟動(dòng)T0 SETB P1.0 SETB F0 ;“輸出電平標(biāo)志”置1(輸出高電平) SJMP $ ;循環(huán)等待 ORG 0100H ;定時(shí)器T0中斷服務(wù)程序T0ISR: JNB F0,L1 MOV TH1,#0FFH ; T0計(jì)數(shù)初值(-75的補(bǔ)碼) MOV TL1,#0B5H CLR P1.0 CLR F0 ;“輸出電平標(biāo)志”置1(輸出低電平) SJMP L2 L1:MOV TH0,#0FFH ;T0定時(shí)初值(-25的補(bǔ)碼) MOV TL0,#0E7H SETB P1.0 SETB F0 ;“輸出電平標(biāo)志”置1(輸出高電平) L2:R

11、ETI END 12.11 編寫中斷初始化程序,將 設(shè)為高優(yōu)先級(jí)中斷、電平觸發(fā)方式;T0溢出中斷設(shè)為低優(yōu)先級(jí)中斷,串行口中斷為高優(yōu)先級(jí)中斷,其余中斷源設(shè)為禁止?fàn)顟B(tài)。 MOV IE,#96H SETB PX1 CLR IT1 CLR PT0 SETB PSINT113.8 欲利用DAC 0832 和8031 組成的單片機(jī)應(yīng)用系統(tǒng)產(chǎn)生一個(gè)等腰三角形的波形,要求周期為1 秒、幅值為+5V,試畫出DAC 0832 與8031 的接口電路,并編寫相關(guān)的程序。(參考P339 例13.8)無(wú)關(guān)的地址線取無(wú)關(guān)的地址線取1,則,則DAC0832對(duì)應(yīng)的端口地址為對(duì)應(yīng)的端口地址為7FFFH,將將A內(nèi)容送內(nèi)容送DAC

12、 0832即可即可啟動(dòng)啟動(dòng)轉(zhuǎn)換轉(zhuǎn)換。 利用圖示電路,產(chǎn)生等腰三角波,因數(shù)字量00FFH對(duì)應(yīng)的模擬量為0V5V,則每一步對(duì)應(yīng)的模擬量為: 5V - 0V= 0. 01960. 02V /255步 而等腰三角波的半周期為500ms,每一步上升的時(shí)間為: m sm s5002255MOV DPTR,#7FFFH ;指向0832 端口地址MOV A,#00H ;第一個(gè)波形的起始值為0VLP1: MOVX DPTR,A ;輸出前半周期ACALL DELAY2 ;調(diào)2ms 延時(shí)子程序INC A ;修改輸出值,即幅值增加0.2VJNZ LP1LP2: DEC A; 輸出后半周期MOVX DPTR,A ;輸出

13、數(shù)據(jù)到DAC 0832ACALL DELAY2 ;調(diào)2ms 延時(shí)子程序JNZ LP2SJMP LP1一、判斷一個(gè)數(shù)(例如:累加器A)是否為零:(1)JZ ZERO (2) CJNE A , #00H , NZERO二、判斷一個(gè)數(shù)(例如:累加器A)是否為負(fù)數(shù): (1) JB A7,NEG (2) CJNE A , #80H , NEXT NEXT:JNC NEG (3) RLC A (4) ANL A, #80H JC NEG JNZ NEG比較A,B中兩個(gè)帶符號(hào)數(shù)大小的子程序COMPAB入口:兩個(gè)要比較大小的帶符號(hào)數(shù)分別送入A,B出口:A-B后,若AB,則01HA; A=B,則00HA ; AB,則80HACOMPAB:CL

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論