第六章單片機基礎(chǔ)學習知識原理與應(yīng)用第二版習題集規(guī)范標準答案_第1頁
第六章單片機基礎(chǔ)學習知識原理與應(yīng)用第二版習題集規(guī)范標準答案_第2頁
第六章單片機基礎(chǔ)學習知識原理與應(yīng)用第二版習題集規(guī)范標準答案_第3頁
第六章單片機基礎(chǔ)學習知識原理與應(yīng)用第二版習題集規(guī)范標準答案_第4頁
第六章單片機基礎(chǔ)學習知識原理與應(yīng)用第二版習題集規(guī)范標準答案_第5頁
已閱讀5頁,還剩8頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、1. 何為“準雙向I/O接口”?在 MCS-51單片機的四個并口中,哪些是“準雙向I/O接口”?答:準雙向I/O接口是能實現(xiàn)輸入輸出功能,但在使用時只能從輸入和輸出中選擇一 個。MCS-51單片機的四個并口中 P1、P2、P3是準雙向I/O接口。2. 80C51單片機內(nèi)部有幾個定時/計數(shù)器?它們由哪些功能寄存器組成?怎樣實現(xiàn)定 時功能和計數(shù)功能?答:80C51單片機內(nèi)部有兩個16位的可編程定時/計數(shù)器,由TH0,TL0,TH1,TL1,TMOD 和TCON功能寄存器組成。通過 TMOD中的C/T位選擇對機器周期計數(shù)實現(xiàn)計數(shù)功能, 選擇對外部脈沖計數(shù)實現(xiàn)計數(shù)功能。3. 定時/計數(shù)器T0有幾種工作

2、方式?各自的特點是什么?答:有四種工作方式,特點見下表:M1M0工作方式方式說明00013位定時/計數(shù)器01116位定時/計數(shù)器1028位自動重置定時/計數(shù)器113兩個8位定時/計數(shù)器(只有T0有)10個單位,不同4. 定時/計數(shù)器的四種工作方式各自的計數(shù)范圍是多少?如果要計 的方式初值應(yīng)為多少?答:有四種方式。方式 0計數(shù)范圍:18192;方式1計數(shù)范圍:165536;方式2計數(shù) 范圍:1256;方式3計數(shù)范圍:1256。如果計10個單位,方式0初值為:8192-10=8182 ;方式1初值為:65536-10=65526 ; 方式2初值為:256-10=246 ;方式2初值為:256-10

3、=246。5. 設(shè)振蕩頻率為12MHz,如果用定時/計數(shù)器T0產(chǎn)生周期為100ms的方波,可以選 擇哪幾種方式,其初值分別設(shè)為多少?答:只能選擇方式 1,初值為65536-50000=15536。6. 何為同步通信?何為異步通信?各自的特點是什么?答:異步通信方式的特點是數(shù)據(jù)在線路上傳送時是以一個字符(字節(jié))為單位,未傳送時線路處于空閑狀態(tài),空閑線路約定為高電平“1”。特點是對發(fā)送時鐘和接收時鐘的要求相對不高,線路簡單,但傳送速度較慢。同步通信方式的特點是數(shù)據(jù)在線路上傳送時以字符塊為單位,一次傳送多個字符,傳 送時須在前面加上一個或兩個同步字符,后面加上校驗字符。特點是對發(fā)送時鐘和接收時鐘要求

4、較高,往往用同一個時鐘源控制,控制線路復(fù)雜,傳送速度快。7. 單工、半雙工和全雙工有什么區(qū)別?答:單工方式只有一根數(shù)據(jù)線,信息只能單向傳送;半雙工方式也只有一根數(shù)據(jù)線,但信息可以分時雙向傳送;全雙工方式有兩根數(shù)據(jù)線,在同一個時刻能夠?qū)崿F(xiàn)數(shù)據(jù)雙向傳送。8. 設(shè)某異步通信接口,每幀信息格式為10位,當接口每秒傳送 1000個字符時,其10000波特串行口數(shù)據(jù)寄存器 SBUF有什么特點?發(fā)送數(shù)據(jù)寄存器和接收數(shù)據(jù)寄存器合起用一個特殊功能寄存器SBUF(串行口數(shù)據(jù)執(zhí)行MOV A, SBUF接收時為接波特率為多少?答:9.答:寄存器),執(zhí)行MOV SBUF,A發(fā)送時為發(fā)送數(shù)據(jù)寄存器, 收數(shù)據(jù)寄存器。9.

5、MCS-51單片機串行口有幾種工作方式?各自特點是什么?其中:I/O 接口。那么只有接收的第 9答:有四種工作方式,分別是方式0、方式1、方式2和方式3。方式0,稱為同步移位寄存器方式,一般用于外接移位寄存器芯片擴展方式1,稱為8位的異步通信方式,通常用于雙機通信。方式2和方式3,稱為9位的異步通信方式,通常用于多機通信。10. 說明SM2在方式2和方式3對數(shù)據(jù)接收有何影響。答:通過SM2對方式2和方式3數(shù)據(jù)接收進行控制,SM2=1,位為“ 1”才接收有效。如 SM2=0,接收的第9位無論為1還是0都接收有效。11. 怎樣來實現(xiàn)利用串行口擴展并行輸入/輸出口?答:利用串行口在方式 0時,當外接

6、一個串入并出的移位寄存器,就可以擴展并行輸 出口;當外接一個并入串出的移位寄存器時,就可以擴展并行輸入口。12. 什么是中斷、中斷允許和中斷屏蔽?答:在計算機中,由于計算機內(nèi)外部的原因或軟硬件的原因,使CPU從當前正在執(zhí)行的程序中暫停下來,而自動轉(zhuǎn)去執(zhí)行預(yù)先安排好的為處理該原因所對應(yīng)的服務(wù)程序。執(zhí)行 完服務(wù)程序后,再返回被暫停的位置繼續(xù)執(zhí)行原來的程序,這個過程稱為中斷,實現(xiàn)中斷 的硬件系統(tǒng)和軟件系統(tǒng)稱為中斷系統(tǒng)。中斷允許是允許中斷請求送CPU產(chǎn)生中斷,中斷屏蔽是禁止中斷請求信號送 CPU產(chǎn)生中斷。13. 8051有幾個中斷源?中斷請求如何提出?答:MCS-51單片機提供5個硬件中斷源:兩個外部

7、中斷源麗0(P3.2)和iNtT (P3.3),兩個定時/計數(shù)器T0和T1中斷;1個串行口中斷。外部中斷源iNT0和iNTT的中斷請求信號從外部引腳P3.2和P3.3輸入;兩個定時/計數(shù)器T0和T1的溢出中斷TF0和TF1定時/計數(shù)器T0(或T1)溢出時提出;串行口中斷由發(fā) 送中斷標志T1和接收中斷標志R1產(chǎn)生。14. 8051的中斷源中,哪些中斷請求信號在中斷響應(yīng)時可以自動清除?哪些不能自動 清除?應(yīng)如何處理?答:工作在邊沿觸發(fā)方式下的兩個外部中斷源和兩個定時/計數(shù)器中斷中斷請求信號在中斷響應(yīng)時可以自動清除,工作在電平觸發(fā)方式下的兩個外部中斷源和串行口中斷不能自 動清除。工作在電平觸發(fā)方式下

8、的兩個外部中斷源的中斷請求信號通過外加硬件和加軟件 的方式清除,串行口中斷標志T1和標志R1完全由軟件清除。15. 8051的中斷優(yōu)先級有幾級?在形成中斷嵌套時各級有何規(guī)定?答:8051的中斷優(yōu)先級有兩級;形成中斷嵌套時規(guī)定(1)正在進行的中斷過程不能被新的同級或低優(yōu)先級的中斷請求所中斷,直到該中斷服務(wù)程序結(jié)束,返回了主程序且執(zhí) 行了主程序中的一條指令后,CPU才響應(yīng)新的中斷請求。(2)正在進行的低優(yōu)先級中斷服務(wù)程序能被高優(yōu)先級中斷請求所中斷,實現(xiàn)兩級中斷 嵌套。(3) CPU同時接收到幾個中斷請求時,首先響應(yīng)優(yōu)先級最高的中斷請求。16. 設(shè)8051的P1中各位接發(fā)光二極管,分別用匯編語言和C

9、語言編程實現(xiàn)逐個輪流點亮二極管,并循環(huán)顯示。參考程序:ORG OOOOHLJMPMAINORG0100HMAIN : MOVLOOP : MOVA, #01HP1, ACALLDELAYRL ASJMPLOOPSJMPDELAY : MOVDJNZ$R7, #0FFHR7, $RETENDC語言程序:#include delay(unsigned int x); main()/包含特殊功能寄存器庫void void unsigned char i,j; while(1)i=01;for (j=0;j8;j+) P 1=i; delay(100); i=i*2; voidunsigned cha

10、r j; while(x-)for (j=0;jv125;j+); delay(unsigned int x)18. 8051系統(tǒng)中,已知振蕩頻率為12MHz,用定時/計數(shù)器T0,實現(xiàn)從P1.0產(chǎn)生周期 為2ms的方波。要求分別用匯編語言和C語言進行編程。解:分析:從P1.0輸出周期為2ms的方波,只須P1.0每1ms取反一次則可。當系統(tǒng) 時鐘為12MHZ,定時/計數(shù)器T0工作于方式1時,最大的定時時間為 65.536ms,滿足1ms 的定時要求,方式控制字應(yīng)設(shè)定為00000001B( 01H)。定時1ms,計數(shù)值N為1000,初值 X=65536-1000=64536,貝U TH0=FCH,

11、TL0=18H。采用中斷處理方式:程序如下:MAIN :ORG 0000HLJMPMAINORG000BHMOVTH0 ,#0FCHMOVTL0 ,#18HCPLP 1.0RETIORG0100HMOVTMOD,#01HMOVTH0 ,#0FCHMOVTL0 ,#18HSETBEASETBET0SETBTR0SJMP$END中斷處理程序主程序C語言程序:#include sbit voidP1_0=P 1人0; main()/包含特殊功能寄存器庫TM0D=0x01;TH0=0xFC;TL0=0x18;EA=1;ET0=1;TR0=1;while(1); voidtimeO_int(void)

12、interr upt 1/中斷服務(wù)程序TH0=0xFC;TL0=0x18;P1_0=! P1_0;19.8051系統(tǒng)中,已知振蕩頻率為12MHz,用定時/計數(shù)器T1,實現(xiàn)從P1.1產(chǎn)生周期為2s的方波。要求分別用匯編語言和C語言進行編程。解:從P1.1產(chǎn)生2s的方波,應(yīng)產(chǎn)生500ms的周期性的定時,定時到對P1.1取反就可實現(xiàn)。由于定時時間較長,一個定時/計數(shù)器T1不能直接實現(xiàn),米用定時/計數(shù)器T1產(chǎn)生周期性為10ms的定時,然后用一個寄存器R2對10ms計數(shù)100次來實現(xiàn)。系統(tǒng)時鐘為12MHZ ,定時/計數(shù)器T1定時10ms,計數(shù)值N為10000,只能選方式1,方式控制字為00010000B

13、(10H),初值 X:X=65536-10000=55536=1101100011110000B貝U TH1=11011000B=D8H,TL1=11110000B=F0H。定時/計數(shù)器T1米用中斷處理方式。匯編程序:ORG 0000HLJMPMAINORG001BHLJMPINTT1ORG0100HMAIN : MOV TMOD , #10HMOVTH1, #0D8HMOVTL1 , #0F0HMOVR2, #00HSETBEASETBET1SETBTR1SJMP$INTT1 : MOVTH1, #0D8HMOVTL1 , #0F0HINCR2CJNER2, #64H , NEXTCPLP

14、1.1MOVR2, #00HNEXT : RETIENDC語言程序:#include / sbit P 1_1= PIT; char i;包含特殊功能寄存器庫voidmain()TMOD=0x10;TH1=0xD8;TL1=0xf0;EA=1;ET1=1;i=0;TR1=1;while(1); voidtimeO_int(void) interr upt 3 /中斷服務(wù)程序TH1=0xD8;TL1=0xf0;i+;if (i= =100) P1_仁! P1_1;i=0;8051系統(tǒng)中,已知振蕩頻率為12MHz ,用定時/計數(shù)器T1,實現(xiàn)從P1.1產(chǎn)生高電10ms,低電平寬度為 20ms的矩形波

15、。要求分別用匯編語言和 C語言進行編程。20.平寬度為解:本題處理方式有多種, 這里采用對定時/計數(shù)器T1形成10ms周期定時,用R2對10ms 計數(shù),當計到1,則對P1.1置1,當計到2和3,則對P1.1置0來實現(xiàn)。用定時/計數(shù)器T1 形成10ms周期定時見上題。程序如下:ORG 0000HLJMPMAINORG001BHLJMPINTT1ORG0100HMAIN : MOV TMOD,#10HINTT1 :MOVTH1, #0D8HMOVTL1,#0F0HMOVR2, #00HSETBEASETBET1SETBTR1SJMP$MOVTH1, #0D8HMOVTL1,#0F0HINCR2CJ

16、NER2,#01H,NEXTSETBP1.1SJMPEXITNEXT : CJNER2,#02H,NEXT1CLRP1.1SJMPEXITNEXT1 : CJNER2,#03H,NEXTSETBP1.1MOVR2,#00EXIT : RETIENDC語言程序:#include /包含特殊功能寄存器庫i;main()sbit P 1_1= P1A1; char voidTMOD=0x10;TH1=0xD8;TL1=0xf0;EA=1;ET1=1;i=0;TR1=1;while(1)if (i= =0) P1_1=1;if (i= =1) P1_1=0;if (i= =2) P 1_1=0; vo

17、idtimeO_int(void) interr upt 3 /中斷服務(wù)程序TH1=0xD8;TL1=0xf0; i+;if (i= =3) i=0;用8051單片機的串行口擴展并行21.I/O接口,控制16個發(fā)光二極管依次發(fā)光,畫 出電路圖,用匯編語言和 C語言分別編寫相應(yīng)的程序。解:采用在串口連接兩個 CD4094來實現(xiàn),電路圖如下:程序如下;ORGLJMPOOOOHMAINORG0100HMAIN : MOVSCON , #00HMOVR4, #10HMOVR3, #00HMOVR2, #01HCLRP 1.0START : MOVA, R3MOVSBUF, ALOOP: JNBTI ,

18、 LOOPMOVA, R2MOVSBUF, ALOOP1 : JNBTI , LOOP1SETBP 1.0ACALL DELAYCLRTICLRCMOVA, R2RLCAMOVR2, AMOVA, R3RLCAMOVR3, ACLRP 1.0DJNZR4, START1SJMPMAINDELAY : MOVR7, #05HLOOP2 : MOVR6, #0FFHL00P1 : DJNZDJNZR6, L00P1R7, L00P2RETENDC語言程序:#include int X);void delay(unsigned unionunsigned int word; structunsign

19、ed char high;unsigned char low;bytes; number;void main() int i;SCON=OxOO;while(1)number.word=0x01;for (i=0;i16;i+)SBUF=number.bytes.low; while(!TI);TI=0;SBUF=number.bytes.high; while(!TI);TI=0;delay(10);number.word=number.word*2; void delay(unsigned int x)unsigned char j;while(x-)for (j=0;jv125;j+);22.用匯編語言編程設(shè)計一個 8051雙機通信系統(tǒng),將 A機的片內(nèi)RAM中30H3FH 的數(shù)據(jù)塊通過串行口傳送到B機的片內(nèi)RAM的40H4FH中,并畫出電路圖。解:線路連接如圖所示。分析:甲、乙兩機都選擇方式1即8位異步通信方式,最高位用作奇偶校驗,波特率為1200bps,

溫馨提示

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

提交評論