單片機課后習題_第1頁
單片機課后習題_第2頁
單片機課后習題_第3頁
單片機課后習題_第4頁
單片機課后習題_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第一章1. 給出下列有符號數(shù)的原碼、反碼和補碼(假設(shè)計算機字長為 8 位) 。 +45 -89 -6 +112 答:【+45】原=00101101, 【+45】反=00101101, 【+45】補=00101101 【-89】原=11011001, 【-89】反=10100110, 【-89】補=10100111 【-6 】原=10000110 , 【-6 】反=11111001, 【-6 】補=11111010 【+112 】原=01110000, 【+45 】反=01110000 , 【+45】補=01110000 2. 指明下列字符在計算機內(nèi)部的表示形式。 AsENdfJFmdsv120 答:41H 73H 45H 4EH 64H 66H 4AH 46H 6DH 64H 73H 76H 31H 32H 30H 10. 什么是單片機? 答:單片機是把微型計算機中的微處理器、存儲器、I/O 接口、定時器/計數(shù)器、串行接口、中斷系統(tǒng)等電路集成到一個集成電路芯片上形成的微型計算機。因而被稱為單片微型計算機,簡稱為單片機。11. 單片機的主要特點是什么? 答:主要特點如下: 1) 在存儲器結(jié)構(gòu)上,單片機的存儲器采用哈佛(Harvard)結(jié)構(gòu) 2) 在芯片引腳上,大部分采用分時復用技術(shù) 3) 在內(nèi)部資源訪問上,采用特殊功能寄存器(SFR)的形式 4) 在指令系統(tǒng)上,采用面向控制的指令系統(tǒng)5) 內(nèi)部一般都集成一個全雙工的串行接口 6) 單片機有很強的外部擴展能力 12. 指明單片機的主要應用領(lǐng)域。 答:單機應用:1) 工業(yè)自動化控制;2) 智能儀器儀表;3) 計算機外部設(shè)備和智能接口;4) 家用電器 多機應用:功能彌散系統(tǒng)、并行多機處理系統(tǒng)和局部網(wǎng)絡(luò)系統(tǒng)。第二章1. MCS-51 單片機由哪幾個部分組成? 答:MCS-51 單片機主要由以下部分組成的:時鐘電路、中央處理器(CPU) 、存儲器系統(tǒng)(RAM 和 ROM)、定時/計數(shù)器、并行接口、串行接口、中斷系統(tǒng)及一些特殊功能寄存器(SFR)。2. MCS-51 的標志寄存器有多少位,各位的含義是什么? 答:MCS-51 的標志寄存器 PSW 有 8 位; D D6 5 4 3 2 1 0c0S1 RsoRV含義如下: C(PSW.7):進位或借位標志位。 AC(PSW.6):輔助進位或借位可標志位。 F0(PSW.5):用戶標志位。是系統(tǒng)預留給用戶自己定義的標志位。 RS1、RS0(PSW.4、PSW.3) :寄存器組選擇位??捎密浖梦换蚯辶?,用于從四組工作寄存器中選定當前的工作寄存器組。 OV(PSW.2):溢出標志位。在加法或減法運算時,如運算的結(jié)果超出 8 位二進制數(shù)的范圍,則 OV 置 1,標志溢出,否則 OV 清零。 P(PSW.0):奇偶標志位。用于記錄指令執(zhí)行后累加器 A 中 1 的個數(shù)的奇偶性。若累加器 A中 1 的個數(shù)為奇數(shù),則 P 置位,若累加器 A 中 1 的個數(shù)為偶數(shù),則 P 清零。 其中 PSW.1 未定義,可供用戶使用。 3. 在 8051 的存儲器結(jié)構(gòu)中,內(nèi)部數(shù)據(jù)存儲器可分為幾個區(qū)域?各有什么特點? 答:片內(nèi)數(shù)據(jù)存儲器按功能可以分成以下幾個部分:工作寄存器組區(qū)、位尋址區(qū)、一般RAM 區(qū)和特殊功能寄存器區(qū),其中還包含堆棧區(qū)。工作寄存器組區(qū),00H1FH 單元,可用 R0 R7 等 8 個寄存器訪問;位尋址區(qū),20H2FH 單元,可按位方式訪問;一般 RAM區(qū),30H7FH 單元;堆棧區(qū),可從 08 到 7F 單元;特殊功能寄存器區(qū)位于 80HFFH 單元。4. 什么是堆棧?說明 MCS-51 單片機的堆棧處理過程。 答:堆棧是按先入后出、后入先出的原則進行管理的一段存儲區(qū)域。CS-51 單片機的堆棧是向上生長型的,存入數(shù)據(jù)是從地址低端向高端延伸,取出數(shù)據(jù)是從地址高端向低端延伸。入棧和出棧數(shù)據(jù)是以字節(jié)為單位的。入棧時,SP 指針的內(nèi)容先自動加 1,然后再把數(shù)據(jù)存入到 SP 指針指向的單元;出棧時,先把 SP 指針指向單元的數(shù)據(jù)取出,然后再把 SP 指針的內(nèi)容自動減 1。 5. 簡述內(nèi)部 ROM 的工作寄存器組情況,系統(tǒng)默認是第幾組? 答:51 單片機有 4 組工作寄存器,每組 8 個,用寄存器 R0R7 表示,標志寄存器 PSW 的RS1、RS03 兩位用于從四組工作寄存器中選定當前的工作寄存器組,默認是第 0 組。 6. 51 單片機的程序存儲器 64KB 空間在使用時有那幾個特殊地址? 答:51 單片機程序存儲器的 64KB 存儲空間使用時有 7 個特殊的地址,第一個是 0000H,它是系統(tǒng)的復位地址,51 單片機復位后 PC 的值為 0000H,復位后從 0000H 單元開始執(zhí)行程序,由于后面幾個地址的原因,用戶程序一般不直接從 0000H 單元開始存放,而是放于后面,通過在 0000H 單元放一條絕對轉(zhuǎn)移指令轉(zhuǎn)到后面的用戶程序。后面 6 個為 6 個中斷源的入口地址,51 單片機中斷響應后,系統(tǒng)會自動的轉(zhuǎn)移到相應中斷入口地址去執(zhí)行程序。7. 簡述什么是 51 單片機的特殊功能寄存器? 答:特殊功能寄存器(SFR)也稱為專用寄存器,專門用于控制、管理片內(nèi)算術(shù)邏輯部件、并行 I/O 接口、串行口、定時/計數(shù)器、中斷系統(tǒng)等功能模塊的工作。用戶在編程時可以給其設(shè)定值,但不能移作他用。SFR 分布在 80H0FFH 的地址空間,與片內(nèi)隨機存儲塊統(tǒng)一編址。除 PC 外, 51 子系列有 18 個特殊功能寄存器,其中 3 個為雙字節(jié),共占用 21 個字節(jié);52 子系列有 21 個特殊寄存器,其中 5 個為雙字節(jié),共占用 26 個字節(jié)。 8. MCS-51 單片機有多少根 I/O 線?它們和單片機的外部總線有什么關(guān)系? 答:MCS-51 單片機有 32 根 I/O 線,由 P0 口經(jīng)地址鎖存器提供低 8 位(A7A0) ,P2 口提供高 8 位(A15A8)而形成。數(shù)據(jù)總線寬度為 8 位,由 P0 口直接提供??刂瓶偩€由第二功能狀態(tài)下的 P3 口和 4 根獨立的控制線 RST、EA、ALE 和 PSEN 組成。 9. 簡述 PSEN、EA、RST和 ALE 引腳的功能。 答:ALE:地址鎖存信號輸出端。ALE 在每個機器周期內(nèi)輸出兩個脈沖。下降沿用于控制鎖存 P0 輸出的低 8 位地址。 PSEN:片外程序存儲器讀選通信號輸出端,低電平有效。在從外部程序存儲器讀取指令或常數(shù)期間,該信號有效。 RST:復位信號。當單片機振蕩器工作時,該引腳上出現(xiàn)持續(xù)兩個機器周期的高電平,就可實現(xiàn)復位操作,使單片機回復到初始狀態(tài)。 EA:片外程序存儲器選用端。該引腳為低電平時,選用片外程序存儲器,高電平或懸空時選用片內(nèi)程序存儲器。 10. 什么是機器周期?什么是指令周期?MCS 有效。-51 單片機的一個機器周期包括多少個時鐘周期? 答:機器周期:機器周期是單片機的基本操作周期,每個機器周期包含 S1、S2、 、S66 個狀態(tài),每個狀態(tài)包含兩拍 P1 和 P2,每一拍為一個時鐘周期(振蕩周期)。因此,一個機器周期包含 12 個時鐘周期。 11. 復位的作用是什么?51 單片機復位有幾種方式? 答:復位使單片機回復到初始狀態(tài)。在時鐘電路工作以后,當外部電路使得 RST 端出現(xiàn)兩個機器周期(24 個時鐘周期)以上的高電平,系統(tǒng)內(nèi)部復位。復位有兩種方式:上電復位和按鈕復位, 12. 時鐘周期的頻率為 6MHz,機器周期和 ALE 信號的頻率為多少? 答:2MHZ 第三章1在 MCS-51 單片機中,尋址方式有幾種?其中對片內(nèi) RAM 可以用哪幾種尋址方式?對片外 RAM 可以用哪幾種尋址方式? 答:尋址方式可分為數(shù)的尋址和指令尋址,數(shù)的尋址有:常數(shù)尋址(立即尋址) 、寄存器數(shù)尋址(寄存器尋址) 、存儲器數(shù)尋址(直接尋址方式、寄存器間接尋址方式、變址尋址方式)和位尋址,指令的尋址有絕對尋址和相對尋址。片內(nèi) RAM 尋址有:寄存器尋址、直接尋址方式和寄存器間接尋址方式。片外 RAM 尋址有:寄存器間接尋址方式。 2在對片外 RAM 單元尋址中,用 Ri 間接尋址與用 DPTR 間接尋址有什么區(qū)別? 答:片外數(shù)據(jù)存儲器尋址中,用 Ri 間接尋址只能訪問低端的 256 字節(jié)單元,而用 DPTR 作指針間接訪問可訪問整個 64K 字節(jié)。 3在位處理中,位地址的表示方式有哪幾種?答:1 直接位地址(00H0FFH) 。例如:20H 2字節(jié)地址帶位號。例如:20H.3 表示 20H 單元的 3 位。3特殊功能寄存器名帶位號。例如:P0.1 表示 P0 口的 1 位。 4位符號地址。例如:TR0 是定時/計數(shù)器 T0 的啟動位 。 4寫出完成下列操作的指令。 (1)R0 的內(nèi)容送到 R1 中。 MOV A,R0 MOV R1,A (2 )片內(nèi) RAM 的 20H 單元內(nèi)容送到片內(nèi) RAM 的 40H 單元中。 MOV 40H,20H (3 )片內(nèi) RAM 的 30H 單元內(nèi)容送到片外 RAM 的 50H 單元中。MOV A,30H MOV R0,#50H MOVX R0,A (4 )片內(nèi) RAM 的 50H 單元內(nèi)容送到片外 RAM 的 3000H 單元中。MOV A,50H MOV DPTR,#3000H MOVX DPTR,A (5 )片外 RAM 的 2000H 單元內(nèi)容送到片外 RAM 的 20H 單元中。MOV DPTR,#2000H MOVX A,DPTR MOV 20H,A (6 )片外 RAM 的 1000H 單元內(nèi)容送到片外 RAM 的 4000H 單元中。 MOV DPTR,#1000H MOVX A,DPTR MOV DPTR,#4000H MOV DPTR,A (7 ) ROM 的 1000H 單元內(nèi)容送到片內(nèi) RAM 的 50H 單元中。MOV A,#0 MOV DPTR,#1000H MOVC A,A+DPTR MOV 20H,A (8 ) ROM 的 1000H 單元內(nèi)容送到片外 RAM 的 1000H 單元中。MOV A,#0 MOV DPTR,#1000H MOVC A,A+DPTR MOVX DPTR,A 5區(qū)分下列指令有什么不同? (1)MOV A,20H 和 MOV A,#20H 答:前者源操作數(shù)是直接尋址,后者源操作數(shù)立即尋址。 (2 ) MOV A,R1 和 MOVX A,R1 答:前者源操作數(shù)是訪問片內(nèi)數(shù)據(jù)存儲器,后者源操作數(shù)訪問片外數(shù)據(jù)存儲器低 256 字節(jié)。(3 ) MOV A,R1 和 MOV A,R1 答:前者源操作數(shù)是寄存器尋址,后者源操作數(shù)寄存器間接尋址。 (4 ) MOVX A,R1 和 MOVX A,DPTR 答:前者源操作數(shù)是訪問片外數(shù)據(jù)存儲器低 256 字節(jié),后者源操作數(shù)訪問片外數(shù)據(jù)存儲器整個 64K 字節(jié)。 (5 ) MOVX A,DPTR 和 MOVC A,A+DPTR答:前者源操作數(shù)是訪問片外數(shù)據(jù)存儲器,后者源操作數(shù)訪問程序數(shù)據(jù)存儲器。 6設(shè)片內(nèi) RAM 的(20H )=40H, (40H)=10H , (10H)=50H, (P1)=0CAH。分析下列指令執(zhí)行后片內(nèi) RAM 的 20H、40H、10H 單元以及 P1、P2 中的內(nèi)容。 MOV R0,#20H MOV A,R0 ;A=40H MOV R1,A ;R1=40H MOV A,R1 ;A=10H MOV R0, P1 ;(40H)=0CAH MOV P2,P1 P2=0CAH MOV 10H,A (10H )=10H MOV 20H,10H (20H)=10H 結(jié)果:(20H) =10H、 (10H)=10H、 (40H)=0CAH、P2=0CAH 和 P1=0CAH 7已知(A)=02H, (R1)=7FH , (DPTR)=2FFCH,片內(nèi) RAM(7FH )=70H,片外 RAM(2FFEH)=11H,ROM(2FFEH)=64H,試分別寫出以下各條指令執(zhí)行后目標單元的內(nèi)容。 (1 ) MOV A,R1 結(jié)果:累加器 A 等于 70H (2 ) MOVX DPTR,A 結(jié)果:片外 RAM(2FFCH)單元等于 02H (3 ) MOVC A,A+DPTR 結(jié)果: 累加器 A 等于 64H (4 ) XCHD A,R1 結(jié)果:累加器 A 等于 00H,片內(nèi) RAM(7FH )單元等于 72H 8已知:(A)=78H , (R1) =78H, (B)=04H,CY=1,片內(nèi) RAM(78H)=0DDH, (80H)=6CH,試分別寫出下列指令執(zhí)行后目標單元的結(jié)果和相應標志位的值。 (1 ) ADD A,R1 ; 累加器 A 等于 55H,CY 等于 1 (2 ) SUBB A,#77H ; 累加器 A 等于 00H,CY 等于 0(3 ) MUL AB ; 累加器 A 等于 E0H,B 寄存器等于 01H,CY 等于 1,OV 等于 0 (4 ) DIV AB ; 累加器 A 等于 1EH,B 寄存器等于 00H,CY、OV 等于 0 (5 ) ANL 78H,#78H ; 片內(nèi) RAM(78H)單元等于 58H (6 ) ORL A,#0FH ; 累加器 A 等于 7FH (7 ) XRL 80H,A ; 片內(nèi) RAM(80H)等于 14H 9設(shè)(A)=83H, (R0)=17H, (17H)=34H ,分析當執(zhí)行完下面指令段后累加器A、R0、17H 單元的內(nèi)容。 ANL A,#17H ;A=03H ORL 17H,A ;(17H)=37H XRL A,R0 ; A=34H CPL A ; A=CBH 結(jié)果:A=CBH , (R0)=17H, (17H)=37H 10寫出完成下列要求的指令。 (1 )累加器 A 的低 2 位清零,其余位不變。 ANL A,#11111100B (2 )累加器 A 的高 2 位置“1” ,其余位不變。 ORL A,#11000000B (3 )累加器的高 4 位取反,其余位不變。 XRL A,#11110000B (4 )累加器第 0 位、2 位、4 位、6 位取反,其余位不變。 XRL A,#01010101B 11說明 LJMP 指令與 AJMP 指令的區(qū)別?答:LJMP 指令后面提供的是 16 位目標地址,所以可以轉(zhuǎn)移到 64KB 程序存儲器的任意位置,缺點是:執(zhí)行時間長,字節(jié)數(shù)多。 AJMP 指令后帶的是 11 位直接地址,執(zhí)行時,先將程序指針 PC 的值加 2(該指令長度為2 字節(jié)) ,然后把指令中的 11 位地址 addr11 送給程序指針 PC 的低 11 位,而程序指針的高5 位不變,只能在當前 2K 范圍內(nèi)轉(zhuǎn)移。 12設(shè)當前指令 CJNE A,#12H,10H 的地址是0FFEH,若累加器 A 的值為 10H,則該指令執(zhí)行后的 PC 值為多少?若累加器 A 的值為 12H呢? 答:指令執(zhí)行后的 PC 值為 1011H,若累加器 A 的值為 12H,則指令執(zhí)行后的 PC 值為1001H。 13用位處理指令實現(xiàn) P1.4=P1.0(P1.1P1.2 )/P1.3 的邏輯功能。 程序: MOV C,P1.1 ORL C,P1.2 ANL C, P1.0 ORL C,/P1.3 MOV P1.4,C 14下列程序段匯編后,從 1000H 單元開始的單元內(nèi)容是什么? ORG 1000H TAB: DB 12H,34H DS 3 DW 5567H,87H 答:(1000H )=12H , (1001H )=34H, (1002H)=00H , ( 1003H)=00 , (1004H )=00, (1005H) =67H, (1006H)=55H, (1007H )=87H , ( 1008H)=00H 15試編一段程序,將片內(nèi) RAM 的 20H、21H、22H 單元的內(nèi)容依次存入片外 RAM 的20H、21H、22H 中。 程序:MOV R0,#20H MOV R2, #03H LOOP:MOV A,R0 MOVX R0,A INC R0 DJNZ R2,LOOP SJMP $ 16編程實現(xiàn)將片外 RAM 的 2000H2030H 單元的內(nèi)容,全部搬到片內(nèi) RAM 的 20H 單元開始位置,并將源位置清零。 程序: MOV R0,#20H MOV DPTR,#2000H MOVR2,#30H LOOP: MOVX A,DPTR MOV R0,A MOV A,#00 MOVX DPTR, A INC DPTR INC R0 DJNZ R2,LOOP SJMP $ 17編程將片外 RAM 的 1000H 單元開始的 100 個字節(jié)數(shù)據(jù)相加,結(jié)果放于 R7R6 中。 程序: MOV DPTR,#1000H MOV R2,#100 MOV R7,#00 MOV R6,#00 LOOP: MOVX A,DPTR ADD A,R6 MOV R6,A MOV A,R7 ADDC A,#0 MOV R7,A INC DPTR DJNZ R2,LOOP SJMP $ 18編程實現(xiàn) R4R3R2,結(jié)果放于 R7R6R5 中。 程序: ORG 0100H MUL1:MOV A,R2 MOV B,R3 MUL AB ;R2R3 ,結(jié)果的低字節(jié)直接存入積的 R5 MOV R5,A ;結(jié)果的高字節(jié)存入R6 中暫存起來 MOV R6,B MUL2:MOV A,R2 MOV B,R4 MUL AB ;R2R4 ,結(jié)果的低字節(jié)與 R6 相加后,再存入 R6 中ADD A,R6MOV R6,A MOV A,B ;結(jié)果的高字節(jié)加上進位位后存入 R7 中 ADDC A,#00 MOV R7,A SJMP $19編程實現(xiàn)把片內(nèi) RAM 的 20H 單元的 0 位、1 位,21H 單元的 2 位、3 位,22H 單元的4 位、5 位,23H 單元的 6 位、 7 位,按原位置關(guān)系拼裝在一起放于 R2 中。 程序: MOV C,20H.0 MOV A.0,C MOV C,20H.1 MOV A.1,C MOV C,21H.2 MOV A.2,C MOV C,21H.3 MOV A.3,C MOV C,22H.4 MOV A.4,C MOV C,22H.5 MOV A.5,C MOV C,23H.6 MOV A.6,C MOV C,23H.7 MOV A.7,C MOV R2,A 20用查表的方法實現(xiàn)一位十六進制數(shù)轉(zhuǎn)換成 ASCII。 程序:(設(shè)一位十六進制數(shù)放在 R2中,輪換的 ASCII 也放于 R2 中) C16STASC:MOV DPTR,#TAB MOV A,R2 MOVC A,A+DPTR MOV R2,A RET TAB:DB 30H, 31H,32H ,33H ,34H,35H,36H ,37H DB 38H,391H,41H ,42H , 43H,44H,45H,46H21編程統(tǒng)計從片外 RAM2000H 開始的 100 個單元中“0”的個數(shù)放于 R2 中。 程序: MOV DPTR,#2000H MOV R3,#100 MOV R2,#00 LOOP: MOVX A,DPTR JNZ NEXT INC R2NEXT:INC DPTR DJNZ R3,LOOP SJMP $第四章1. C51 特有的數(shù)據(jù)類型有哪些? 答:C51 特有的數(shù)據(jù)類型有特殊功能寄存器型和位類型。 2. C51 中的存儲器類型有幾種,它們分別表示的存儲器區(qū)域是什么? 答:C51 中的存儲器類型有 6 種,分別如下: data:直接尋址的片內(nèi) RAM 低 128B,訪問速度快 bdata:片內(nèi) RAM 的可位尋址區(qū)(20H 2FH) ,允許字節(jié)和位混合訪問 idata:間接尋址訪問的片內(nèi) RAM,允許訪問全部片內(nèi) RAM pdata:用 Ri 間接訪問的片外 RAM 低 256B xdata:用 DPTR 間接訪問的片外 RAM,允許訪問全部 64KB 片外 RAM code:程序存儲器ROM 64KB 空間 3. 在 C51 中,bit 位與 sbit 位有什么區(qū)別? 答:bit 位類型符用于定義一般的位變量。存儲器類型只能是 bdata、data、idata,只能是片內(nèi) RAM 的可位尋址區(qū),嚴格來說只能是 bdata。 sbit 位類型符用于定義在可位尋址字節(jié)或特殊功能寄存器中的位,定義時需指明其位地址,可以是位直接地址,可以是可位尋址變量帶位號,也可以是特殊功能寄存器名帶位號。 4. 位變量和特殊功能寄存器變量有什么作用? 答:特殊功能寄存器變量是 C51 中特有的一種變量。通過特殊功能寄存器變量可訪問 MCS-51 系列單片機的特殊功能寄存器。訪問時需通過 sfr 或 sfr16 類型說明符進行定義,定義時需指明它們所對應的特殊功能寄存器的地址。 位變量也是 C51 中的一種特有變量。通過位變量可訪問 MCS-51 系列單片機的可位尋址位。使用時需用位類型符進行定義。位類型符有兩個:bit 和 sbit??梢远x兩種位變量。 5. 在 C51 中,通過絕對地址來訪問的存儲器有幾種? 答:通過絕對地址來訪問存儲器有三種方法:1. 使用 C51 運行庫中預定義宏。2. 通過指針訪問。3. 使用 C51 擴展關(guān)鍵字_at_ 6. 什么是存儲模式,存儲模式和存儲器類型有什么關(guān)系? 答:C51 中有三種存儲模式:SMALL 模式、COMPACT 模式和 LARGE 模式。不同的存儲模式對變量默認的存儲器類型不一樣。 (1) SMALL 模式。 SMALL 模式稱為小編譯模式,在 SMALL 模式下,編譯時變量被默認在片內(nèi) RAM 中,存儲器類型為 data。 (2) COMPACT 模式。COMPACT 模式稱為緊湊編譯模式,在 COMPACT 模式下,編譯時變量被默認在片外 RAM 的低 256B 空間,存儲器類型為 pdata。 (3) LARGE 模式。 LARGE 模式稱為大編譯模式,在 LARGE 模式下,編譯時變量被默認在片外RAM 的 64B 空間,存儲器類型為 xdata。 在程序中變量存儲模式的指定通過#pragma 預處理命令來實現(xiàn)。如果沒有指定,則系統(tǒng)都隱含為 SMALL 模式。 7. 在 C51 中,修飾符 using n 有什么作用? 答:using n 修飾符,用于指定本函數(shù)內(nèi)部使用的工作寄存器組,其中 n 的取值為 03,表示寄存器組號。 8. 在 C51 中,中斷函數(shù)與一般函數(shù)有什么不同? 答:中斷函數(shù)在定義時后面帶 interrupt m 修飾符,m 的取值為 031,對應的中斷情況如下:0外部中斷 0,1 定時/計數(shù)器 T0,2外部中斷 1,3定時/ 計數(shù)器 T1,4串行口中斷,5定時 /計數(shù)器 T2,其他值預留。 編寫 MCS-51 中斷函數(shù)需要注意如下幾點。 (1) 中斷函數(shù)不能進行參數(shù)傳遞,如果中斷函數(shù)中包含任何參數(shù)聲明都將導致編譯出錯。 (2) 中斷函數(shù)沒有返回值。 (3) 在任何情況下都不能直接調(diào)用中斷函數(shù) (4) 如果在中斷函數(shù)中調(diào)用了其他函數(shù),則被調(diào)用函數(shù)所使用的寄存器必須與中斷函數(shù)相同,否則會產(chǎn)生不正確的結(jié)果。 (5) C51 編譯器對中斷函數(shù)編譯時會自動在程序開始和結(jié)束處加上相應的內(nèi)容。 (6) C51 編譯器從絕對地址 8m+3 處產(chǎn)生一個中斷向量,其中 m 為中斷號,也即 interrupt 后面的數(shù)字。該向量包含一個到中斷函數(shù)入口地址的絕對跳轉(zhuǎn)。 (7) 中斷函數(shù)最好寫在文件的尾部,并且禁止使用 extern 存儲類型說明。防止其他程序調(diào)用。9. 按給定的存儲類型和數(shù)據(jù)類型,寫出下列變量的說明形式。 (1) 在 data 區(qū)定義字符變量val1。 char data val1; (2) 在 idata 區(qū)定義整型變量 val2。 int idata val2; (3) 在 xdata 區(qū)定義無符號字符型數(shù)組 val34。 unsigned char xdata val34; (4) 在 xdata 區(qū)定義一個指向 char 類型的指針 px。 char xdata *px; (5) 定義可尋址位變量 flag。 bit flag; (6) 定義特殊功能寄存器變量 P3。 sfr P3=0xa0; (7) 定義特殊功能寄存器變量 SCON。 sfr SCON=0x98; (8) 定義 16 位的特殊功能寄存器 T0。 sfr16 T0=0x8a; 第七章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 有幾種工作方式?各自的特點是什么? 答:有四種工作方式,特點見下表:答:有四種工作方式,特點見下表: M1 M0 工作方式 方式說明0 0 0 13 位定時/ 計數(shù)器0 1 1 16 位定時/ 計數(shù)器1 0 2 8 位自動重置定時/ 計數(shù)器1 1 3 兩個 8 位定時/ 計數(shù)器 (只有 T0 有) 4. 定時/計數(shù)器的四種工作方式各自的計數(shù)范圍是多少?如果要計 100 個單位,不同的方式初值應為多少? 答:有四種方式。方式 0 計數(shù)范圍: 18192;方式 1 計數(shù)范圍:165536;方式 2 計數(shù)范圍:1256;方式 3 計數(shù)范圍: 1256。 如果計 100 個單位,方式 0 初值為:8192-100=8092 ;方式 1 初值為:65536-100=65436;方式 2 初值為:256-100=156;方式 2 初值為:256-100=156。 5. 設(shè)振蕩頻率為 6MHz,如果用定時 /計數(shù)器 T0 產(chǎn)生周期為 10ms 的方波,可以選擇哪幾種方式,其初值分別設(shè)為多少? 答:只能選擇方式 1,初值為 65536-10000=55536。 6. 何為同步通信?何為異步通信?各自的特點是什么? 答:異步通信方式的特點是數(shù)據(jù)在線路上傳送時是以一個字符(字節(jié)) 為單位,未傳送時線路處于空閑狀態(tài),空閑線路約定為高電平“1” 。特點是對發(fā)送時鐘和接收時鐘的要求相對不高,線路簡單,但傳送速度較慢。 同步通信方式的特點是數(shù)據(jù)在線路上傳送時以字符塊為單位,一次傳送多個字符,傳送時須在前面加上一個或兩個同步字符,后面加上校驗字符。特點是對發(fā)送時鐘和接收時鐘要求較高,往往用同一個時鐘源控制,控制線路復雜,傳送速度快。 7. 單工、半雙工和全雙工有什么區(qū)別? 答:單工方式只有一根數(shù)據(jù)線,信息只能單向傳送;半雙工方式也只有一根數(shù)據(jù)線,但信息可以分時雙向傳送;全雙工方式有兩根數(shù)據(jù)線,在同一個時刻能夠?qū)崿F(xiàn)數(shù)據(jù)雙向傳送。 8. 設(shè)某異步通信接口,每幀信息格

溫馨提示

  • 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

提交評論