版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、、填空題:1、當使用 8051 單片機時,需要擴展外部程序存儲器,此時EA應接 低電平 。2、8051 上電復位后,從地址 0000H開始執(zhí)行程序,外部中斷 1 的中斷入口地址為 0013H.3、8051 最多有 64KB 的程序存儲器和 64KB的數(shù)據(jù)存儲器。4、P0口通常用作 分時復用為地址總線(低 8 位)及數(shù)據(jù)總線或外接上拉電阻用作普通 I/O 口。5、P2 口的功能為 用作地址總線 和作為普通 I/O 口使用 。6、若由程序設定 RS1、 RS0=01,則工作寄存器 R0的直接地址為 08H。7、若由程序設定 RS1、 RS0=00,則工作寄存器 R0的直接地址為 00H。8、若累加
2、器 A中的數(shù)據(jù)為 01110010B,則 PSW中的 P=0(偶數(shù)個 1為 0,奇數(shù)為 1)9、8051 單片機共有 5 個中斷源,分別是 INT0 外部中斷 0、 INT1 外部中斷 1、T0 定時器 / 計數(shù)器中斷 0中斷、 T1定時器計數(shù)器 1 中斷、串行口中斷 。10、ADC0809是 8 通路 8位逐次逼近式模 /數(shù)轉(zhuǎn)換器。11、計算機中按功能把總線分為 數(shù)據(jù)總線 、 地址總線 和 控制總線 。12、MOVA ,#0F5H中,#0F5H的尋址方式稱之為 立即尋址。 MOV類指令稱之為 一般傳輸 指令。13、8051的一個機器周期等于 12個晶體震蕩周期;通常 8051 單片機的 AL
3、E引腳以 1/6 倍 的晶振頻率輸出脈沖。14、8051 單片機復位后,堆棧指針 SP指向第 07H號內(nèi)部 RAM;8051 的堆棧是向 上生長的。15、十進制調(diào)整指令 DA A,專用于 BCD碼的加減運算。16、單片機的中斷觸發(fā)方式有 低電平觸發(fā)和下降沿觸發(fā) 兩種。 大多數(shù)情況下, 單片機控制系 統(tǒng)采用 下降沿觸發(fā) 方式觸發(fā)中斷。17、若執(zhí)行加法運算后累加器( A)中的數(shù)據(jù)為 01110010B,則 PSW中的 P=018、8051 單片機的程序存儲器和數(shù)據(jù)存儲器編址方式采用的是哈佛結(jié)構(gòu),即數(shù)據(jù)存儲器和 程序存儲器 分開 的編址方式。二、單項選擇題1、8051 單片機執(zhí)行 MOVX寫指令時,
4、相關(guān)的信號狀態(tài)是PSEN無效為高電平, WR有效為低電平2、若=1,=1,現(xiàn)在需要保存 R1的內(nèi)容,可執(zhí)行 PUSH 19H指令3、下列指令不是變址尋址方式的是MOVX A,DPTR4、在 8051 片外擴展一片 EEPROM 28C64需要 13根地址線(片選除外), 8 根數(shù)據(jù)線。5、8051 定時器 / 計數(shù)器工作方式 2 是自動重裝 8 位計數(shù)器6、單片機程序存儲器的尋址范圍是由程序計數(shù)器PC的位數(shù)決定的, MCS-51的 PC為 15 位,因此其尋址范圍是 64KB。( 216B=64KB)7、若單片機的振蕩頻率為 12MHz,設定時器工作在方式 1 需要定時 1ms,則定時器初值應
5、為216-1000. (計算過程:機器周期 =12/12MHz=1 s 次數(shù)=1ms/1 s=1000 次 方式一為 16 位=216 )8、訪問外部數(shù)據(jù)存儲器的指令是MOVX,訪問程序存儲器的指令是 MOV。C9、匯編語言中,最多包含 4個區(qū)段,其中 操作碼 區(qū)段是必不可少的。10、MCS-51單片機的位尋址區(qū)域為 20H-2FH。11、MCS-51單片機復位后, PC值被初始化為 0000H。CPU首先響應 外部中斷 0.12、MCS-51單片機在同一優(yōu)先級的中斷源同時申請中斷時,三、讀程序1、執(zhí)行下列程序段中第一條指令后(1)() = 0() = 0執(zhí)行第二條指令后,(2)() =1()
6、 =0ANL P1 , #42HORL P1 , #0ECH2、下列程序段執(zhí)行后,( R0)=47H,(48H)= 0FFH,( 47H)=3FHMOV R0,#48HMOV 48H,#0MOV 47H,#40HDEC R0DEC R0DEC R03、已知( SP)=29H,( DPTR)=1234H,在執(zhí)行下列指令后,( SP)= 2BH,內(nèi)部 RAM(2AH)=34H,( 2BH) =12HPUSH DPLPUSH DPH四、簡答題1、簡述 MCS-51單片機中,振蕩周期、機器周期和指令周期的關(guān)系。答:( 1)振蕩周期:振蕩周期為單片機提供定時信號的振蕩源的周期或外部輸入時鐘的周 期。(
7、2)時鐘周期:又稱狀態(tài)周期或狀態(tài)時間S,是振蕩周期的兩倍,分為 P1、 P2節(jié)拍,通常 P1 完成算術(shù)邏輯操作,在 P2 節(jié)拍完成內(nèi)部寄存器間的數(shù)據(jù)傳送操作。( 3)機器周期:一個機器周期由 6個狀態(tài)(時鐘周期)(或 12 個振蕩周期)組成。( 4)指令周期:執(zhí)行一條指令的全部時間,是機器周期的倍數(shù),MCS-51單片機中指令周期通常由 1、2、4 個機器周期組成。2、DAC0832作為數(shù)模轉(zhuǎn)換器,其連接方式有幾種答: 3 種。單緩沖方式、雙緩沖方式和直通方式。( 1)直通方式常用于不帶微機的控制系統(tǒng)。( 2)單緩沖方式是值 DAC0832內(nèi)部的兩個數(shù)據(jù)緩沖器有一個處于直通方式,另一個處于受 8
8、051 控制的鎖存方式。( 3)對于多路 D-A 轉(zhuǎn)換,要求同步進行 D-A 轉(zhuǎn)換輸出時,必須采用雙緩沖同步方式。3、8051 單片機作定時和計數(shù)時,其計數(shù)脈沖分別由誰提供8051 單片機定時計數(shù)器共有幾種工作模式分別是什么答:當用作定時器時,是在內(nèi)部對CPU的時鐘脈沖計數(shù)。當用作計數(shù)器時,是對相應輸入引腳輸入的脈沖信號計數(shù)。工作模式:(1)工作模式 0:使用低字節(jié)的 5 位和高字節(jié)的 8 位組成 13位的計數(shù)器,低 5 位計數(shù) 溢出后向高位進位計數(shù),高 8 位計數(shù)器計滿后置位溢出標志位。2)工作模式 1:使用低字節(jié)和高字節(jié)的 16位組成 16 位計數(shù)器。與 0模式的區(qū)別僅在計數(shù)器長度,定時長
9、度和計數(shù)容量不同。(3)工作模式 2:使用低字節(jié)的 8 位做計數(shù)器、高字節(jié)的 8 位作為預置常數(shù)的寄存器。(4)工作模式 3:只適用于定時器 /計數(shù)器 T0,T0分別為兩個獨立的 8 位計數(shù)器 TH0 和 TL0.4、MCS-51單片機系統(tǒng)共有幾種尋址方式分別是什么答:有 7 種尋址方式:( 1)寄存器尋址( 2)直接尋址( 3)立即尋址( 4)寄存器間接尋址(5)相對尋址 ( 6)位尋址 ( 7)基址加變址寄存器間接尋址5、試說明特殊功能寄存器 TCON中 TF1、TR1、IE1 、IT1 位的含義是什么這些位什么情況下 被置位或清除答: TF1 T1 計數(shù)溢出標志位,當計數(shù)器T1 計數(shù)計滿
10、溢出時,該位由硬件置1,轉(zhuǎn)到中斷服務程序時,再由硬件自動清 0.TR1T1 計數(shù)運行控制位,由軟件置1 或清 0. 為 1 時允許計數(shù)器 T1 計數(shù),為 0 時禁止計數(shù)器 T1 計數(shù)。TF0 T0 計數(shù)溢出標志位,當計數(shù)器T0 計數(shù)計滿溢出時,由硬件置 1,申請中斷。進入中斷服務程序后由硬件自動清 0.TR0 T0 計數(shù)運行控制位,由軟件置1 或清 0,為 1 時允許計數(shù)器 T0 計數(shù),為 0 時禁止計數(shù)器 T0 計數(shù)。IE0 外部中斷 0( INT0)請求標志位,當 CPU采樣到 INT0 引腳出現(xiàn)中斷請求后,此位 由硬件置 1. 在中斷響應完成后轉(zhuǎn)向中斷服務程序時,再由硬件自動清 0.IE
11、1 外中斷 1( INT0)請求標志位,功能同上。IT0 外中斷 0 請求信號方式控制位,當 IT0=1 ,后沿負跳變有效; IT0=0 ,低電平有效。 此位可由軟件置 1 或清 0.IT1 外中斷 1 請求信號方式控制位, IT1=1 ,后沿負跳變有效; IT1=0 ,低電平有效。五、應用題1、將存于外部 RAM 8000H開始的 50H個數(shù)據(jù)傳送到內(nèi)部 0010H開始的區(qū)域,請編程實現(xiàn)。ORG 0100HMOV DPR,#8000HMOV R0,#10HMOV R2,#50HMOVX A,DPTRMOV R0,AINC DPTRINC R0END知識點:1、各 P 口功能 :P0口:8 位
12、雙向三態(tài) I/O 口,或分時復用為地址總線(低 8 位)及數(shù)據(jù)總線,或作為普通I/O 口使用。P1口:8 位準雙向 I/O 口,常用作普通 I/O 口使用,個別引腳有第二功能P2口:8 位準雙向 I/O 口,或用作地址總線(高 8位),或作為普通 I/O 口使用P3口:8 位準雙向 I/O 口,或作為普通 I/O 口使用;或作為第二功能口使用。 串行輸入端口( RXD) 串行輸出端口( TXD)外部中斷 0(INT0 ) 外部中斷 1( INT1) T0 T1外部數(shù)據(jù)存儲器寫選通( WR) 外部數(shù)據(jù)存儲器讀選通( RD)2、引腳 EA 當 EA=1時,訪問內(nèi)部程序存儲器, EA=0時,訪問外部
13、程序存儲器 引腳 PSEN外部程序存儲器的讀選通信號,讀取時有效低電平引腳 PROG/ALE當訪問外部存儲器時, ALE(允許地址鎖存)的輸出用于鎖存地址的低位字節(jié)。即使不訪問外部存儲器, ALE 端扔以不變的頻率周期性地出現(xiàn)正脈沖信號,次頻率為振 蕩器頻率的 1/6 ,可用作對外輸出的時鐘,或用于定時,每當訪問外部數(shù)據(jù)存儲器的時候, 將跳過一個 ALE 脈沖。3、PSW中各個位的功能 :( CY)進位標志位(AC)輔助進位標志位( F0)標志位( RS1RS0)四組工作寄存器區(qū)選擇控制位 1 和位 000 工作 0 區(qū)( 00H) 01 1 區(qū)( 08H) 10 2 區(qū)( 10H) 11 3
14、 區(qū)( 18H) (OV)溢出標志位保留位,未用4、8051 單片機的時序定時單位: 節(jié)拍、狀態(tài)、機器周期和指令周期5、復位: RST引腳處至少保持 24 個振蕩周期的高電平就可復位寄存器內(nèi)容寄存器內(nèi)容PC0000HTCON00HACC00HT2CON00HB00HTH000HPSW00HTL000HSP07HTH100HDPTR0000HTL100HP0P30FFHTH200HIP( 8051)XXX00000BTL200HIP( 8052)XX000000BRLDH00HIE( 8051)0XX00000BRLDL00HIE( 8052)0X000000BSCON00HTMOD00HSBU
15、F不定PCON(HMOS)0XXXXXXXBPCON( CHMO)S0XXX0000B6、尋址方式(1)寄存器尋址 方式是對選中寄存器中的數(shù)據(jù)進行處理,適用于數(shù)據(jù)放置在寄存器之中的 情況。MOV R1,B ; 將寄存器 B 中的數(shù)值送入到寄存器 R1中INC R2 ; 將寄存器 R2中的數(shù)值加 1MOV A, R7 ;將寄存器 R7中的數(shù)值送入累加 器 A寄存器 尋址范圍 :寄存器區(qū)中 8 個工作寄存器 R0R7 中的一個(由指令操作碼的低三位數(shù)值確定)、特殊寄存器 A, B, DPTR, Cy (進位位,也是位處理機的累加器)也可作為寄存器尋址的對象。(2)直接尋址 方式是對直接指定地址的存
16、儲器單元中的數(shù)據(jù)進行處理,適用于數(shù)據(jù)放置在可以直接尋址的存儲單元之中的情況。MOV 40H,B ;將寄存器 B 中的數(shù)值送入到內(nèi)部 RAM的 40H單元中MOV TL0 , R7;將寄存器 R7中的數(shù)值送入到特殊功能寄存器TL0 中 直接尋址范圍 : 片內(nèi) RAM,包括 SFR,且 SFR只能直接尋址(3)立即尋址 是對指令操作碼后的數(shù)據(jù)進行處理, 適用于在程序中直接處理的數(shù)據(jù)的情況。MOV 38H, 05H ;將數(shù)值 05H 送入到內(nèi)部 RAM的 38H單元中ADD A , 30H;將 A 寄存器中的數(shù)值加上 30HMOV TH0 , 0F2H ;將定時器 0 高 8 位設置為數(shù)值 0F2H
17、(4)位尋址MOV C,40H ;把位 40H 的值送進位位 C位尋址的尋址范圍包括:內(nèi)部 RAM中的位尋址區(qū) 單元地址為 20H-2FH,共 16 個單元, 128 個位,位地址是 00H-7FH。特殊功能寄存器中的可尋址位 可供位尋址的特殊功能寄存器共有 11 個,實際有尋址位 83 個。 注意 : 位尋址只能直接尋址。(5)寄存器間接尋址 是將要處理數(shù)據(jù)的地址放在寄存器中,即用寄存器中的數(shù)據(jù)作為存儲 單元的地址數(shù)值。MOV R1,#05H ; 將數(shù)值 05H送入到以 R1 內(nèi)數(shù)值為地址的內(nèi)部 RAM單元中ADD A ,R;1將累加器 A 中的數(shù)值加上以 R1內(nèi)數(shù)值為地址的內(nèi)部 RAM單元
18、中的數(shù)據(jù)結(jié)果存放于 AMOVX A , DPTR ; 將以 DPTR內(nèi)數(shù)值為地址的外部數(shù)據(jù)存儲器的內(nèi)容送給累加器A注意 : 寄存器間接尋址范圍包括內(nèi)部 RAM和外部 RAM,且外部 RAM只能寄存器間接尋址,訪(6)相對尋址方式 目的地址 =轉(zhuǎn)移指令所在的地址 +轉(zhuǎn)移指令字節(jié)數(shù) +relJC relJNC relJB bit, relJNB bit, relJBC bit, relSJMP rel(7)基址加變址寄存器間接尋址專用 16 位寄存器( DPTR 或 PC)存放基地址,寄存器A 做變址寄存器,僅兩條指令:MOVC A,A PCMOVC A,A DPTR只能讀取程序存儲器。7 、指令
19、(1)一般傳輸指令 MOV A, Rn(2)累加器傳輸指令XCH A, Rn (n為0-7 之一,將工作寄存器 Rn的內(nèi)容和 A的內(nèi)容交換)SWAP A ;A的高 4位和低 4 位互換XCHD A,Ri ;Ri為 R0或R1,將 Ri 所指單元的低 4位與 A的低 4位互換,高 4位不變。3)查表指令MOVC A,A+DPT;R將 DPTR中的 16 位地址和 A 中內(nèi)容相加得新地址,把此地址內(nèi)容送AMOVC A ,A+P;C將 PC值和 A的內(nèi)容相加所得值作為新地址,將此地址單元內(nèi)容送A(4)堆棧指令PUSH direct ; 先將 SP加 1,再將 direct 所指單元內(nèi)容推入 SP+1
20、所指的堆棧單元POP direct ;先將 SP單元的內(nèi)容彈出到 direct 單元,再將 SP 減 1 (5)算術(shù)運算指令ADD A, Rn ;將 A的內(nèi)容和 Rn的內(nèi)容相加,結(jié)果在 A中ADDC A, Rn;(A) (A)+(Rn)+CY,Rn 為 R0 R7之一 ( 帶進位)SUBB A, Rn ; A中內(nèi)容減去進位位 CY ,再減去 Rn中內(nèi)容, 結(jié)果在 A中(帶借位) MUL 乘法DIV 除法ANL (邏輯與,例如, ANL P1, A)ORL (邏輯或,例如, ORL P2, A)XRL (邏輯異或,例如, XRL P3, A)JBC ( 若目標位置位則跳轉(zhuǎn)并將目標位清零,例如,
21、JBC , LABEL)CPL ( 求補 , 例如 , CPLINC ( 增量指令 , 例如, INC P2)DEC (減量指令 , 例如, DEC P2)DJNZ (目標寄存器減 1 后不為零則跳轉(zhuǎn) , 例如, DJNZ P3, LABEL)MOV , C ( 將進位位送入端口位 )DA A十進制調(diào)整指令,對 A中的 BCD碼加法結(jié)果進調(diào)整CLR ( 清除端口位 )SETB ( 置位端口位 )SETB bit ;某位置 1CLR A ; A清 0,不影響標志位CPL A ; A中內(nèi)容逐位取反RR A; A中內(nèi)容循環(huán)右移一位, ; 最低位 D0移到 D7RL A; A中內(nèi)容循環(huán)左移一位, ;
22、即 D7移到 D0, D0移到 D1等RRC A ; CY 進入 A 的最高位, A 的最低位進入 CY, D2 進入 D1 等RLC A ; A 的最高位進入 CY,原 CY進入 A的最低位 D0, D0進入 D1等8、中斷分類中斷源名稱中斷申請標志觸發(fā)方式中斷入口地址外部中斷外部中斷 0IE0INT0 引腳上的低電平 / 下降沿引起的中斷0003H內(nèi)部中斷定時器 / 計數(shù)器 T0 中斷IF0T0 定時器 / 計數(shù)器溢出后引起的中斷000BH外部中斷外部中斷 1IE1INT1 引腳上的低電平 / 下降沿引起的中斷0013H內(nèi)部中斷定時器 / 計數(shù)器 T1 中斷IF1T1 定時器 / 計數(shù)器溢
23、出后引起的中斷001BH內(nèi)部中斷串口中斷RITI (串行口接收完成或發(fā)送完一幀數(shù)據(jù)后引起的中斷0023H中斷的功能(1)可實現(xiàn)高速 CPU與慢速外設之間的配合(2)可實現(xiàn)實時處理(3)實現(xiàn)故障的緊急處理(4)便于人機聯(lián)系中斷的處理過程主要包括: 中斷請求、中斷響應、中斷服務、中斷返回 4 個過程。EA中斷允許的總控制位。 當 EA=0 時,中斷總禁止,相當于關(guān)中斷,即禁止所有中斷;當EA=1 時,中斷總允許,相當于開中斷。此時,每個中斷源是否開放由各中斷控制位決定。 所以只有當 EA=1 時,各中斷控制位才有意義。ES串行口中斷允許控制位 ,當 ES=0,禁止該中斷; ES=1,允許串行中斷。
24、ET1定時器 1中斷允許控制位 ,當 ET1=0,禁止該中斷; ET1=1,允許定時器 1 中斷EX1外部中斷 1 允許控制位 ,當 EX1=0,禁止外部 中斷 1;當 EX1=1,允許外部中斷 1。ET0定時器 0中斷允許控制位 ,當 ET0=0,禁止該中斷; ET0=1,允許定時器 0 中斷。EX0外部中斷 0 允許控制位 ,當 EX0=0,禁止外部中斷 0;當 EX0=1,允許外部中斷 0。定時器控制寄存器 ( TCON)該寄存器的字節(jié)地址為 88H,位地址為 88H-8FH,也可以用表示INT0 、 T0 、 INT1 、 T1 、 串口 、 T2( 最高) ( 最低 )在開放中斷的條
25、件下,用下述四個原則使用中斷優(yōu)先級結(jié)構(gòu) :(1) 非中斷服務子程序可以被任何一個中斷申請所 中斷,而與優(yōu)先級結(jié)構(gòu)無關(guān)。(2) 如果若干中斷同時提出申請,則 CPU將選擇優(yōu)先級、優(yōu)先權(quán)最高者予以響應。(3) 低優(yōu)先級可以被高優(yōu)先級的中斷申請所中斷。換句話說,同級不能形成嵌套、高優(yōu) 先級不能被低優(yōu)先級嵌套, 當禁止嵌套時, 必須執(zhí)行完當前中斷服務子程序之后才考慮是否 響應另一個中斷申請。(4) 同一個優(yōu)先級里,優(yōu)先權(quán)的順序是由硬件決定而不能改變的。但是用戶可以通過改 變優(yōu)先級的方法改變中斷響應的順序。例如, 8051 單片機中串行口的優(yōu)先權(quán)最低,但是可 以在中斷優(yōu)先級寄存器 IP 中寫入 10H,
26、則只有串行口是最高優(yōu)先級。若同時有若干中斷提 出申請,則一定會優(yōu)先響應串行口的申請。串行口控制寄存器 ( SCON)SCON 寄存器的字節(jié)地址為 98H,位地址為 98H9FH,其中的低兩位 RI 和 TI 鎖存串行口 的接收中斷和發(fā)送中斷的請求標志位中斷響應的條件 :中斷源有中斷請求; 此中斷源的中斷允許位為 1;CPU開中斷 (即 EA=1)。9、定時器概念 :在 8051 單片機中,定時器 /計數(shù)器就是一個固定長度的二進制計數(shù)器,當對輸入脈 沖信號的數(shù)量進行計數(shù)時, 我們稱其為計數(shù)器, 當對單片機的系統(tǒng)時鐘或其它標準時鐘進行計數(shù)時, 由于這類時鐘信號本身就表示時間, 計數(shù)值對應著時間值,
27、 所以從這個角度上將其 稱為定時器。組成:在 8051單片機中,內(nèi)部定時器都是可編程控制的定時器 /計數(shù)器,至少由兩部分組成: 脈沖計數(shù)電路和控制字寄存器及譯碼控制電路。10、串行接口的四種工作方式(1)模式 0(MODE0): 同步移位寄存器方式。 8位數(shù)據(jù)(先為 LSB)從引腳 RXD接收/移出,引 腳 TXD 輸出移位時鐘,波特率固定為晶振頻率的1/12 。模式 0 通常用來擴展輸入輸出口。(2)模式 1(MODE1):10 位數(shù)據(jù)被發(fā)送 (從引腳 TXD)或接收(從引腳 RXD):1 個啟動位, 8 個數(shù)據(jù)位, 1 個停止位。在接收時,停止位被送入特殊功能寄存器的SCON的 RB8 位
28、。波特率是可變的。(3)模式 2(MODE2):11 位數(shù)據(jù)被發(fā)送 (從引腳 TXD)或接收(從引腳 RXD):1 個啟動位, 8 個數(shù)據(jù)位,可編程的第 9 個數(shù)據(jù)位, 1 個停止位。發(fā)送時,第 9 位(SCON 的 TB8 位)可被賦 予 0 或 1。例如,可將奇偶校驗位送至 TB8位。在接收時, 停止位被送入特殊功能寄存器 SCON 的 RB8 位。模式 2 的波特率可為 1/32 或 1/64 晶振頻率。(4)模式 3(MODE3):11 位數(shù)據(jù)被發(fā)送 (從引腳 TXD)或接收(從引腳 RXD):1 個啟動位, 8 個數(shù)據(jù)位,可編程的第 9 個數(shù)據(jù)位, 1 個停止位。發(fā)送時,第 9 位(
29、SCON 的 TB8 位)可被賦 予 0 或 1 。實際上,除了波特率之外,模式 2 和模式 3 是相同的。模式 3 的波特率是可變的。模式 1或3波特率2SMODosc32 12 256 ( TH1)8255A的工作方式 0,A 口作為輸入, B、 C口作為輸出控制寄存器地址: 0FF7FH取端口 A:0FF7CH B:0FF7DH C:0FF7EH根據(jù)題意寫入控制字為MOV A,#90H=90H.根據(jù)題意計算而變化)MOV DPTR,#0FF7FHMOVX DPTR,AMOV DPTR,#0FF7CHMOVX A,DPTRMOV DPTR,#0FF7DHMOV A,#DATA1MOVX D
30、PTR,A控制寄存器地址 DPTR 方式控制字控制寄存器 A 口地址 DPTR 從 A 口讀數(shù)據(jù)B 口地址 DPTR 要輸入的數(shù)據(jù) DATA1 A 將 DATA1送 B 口輸出MOV DPTR,#0FF7EH C 口地址 DPTRMOV A,#DATA2 DATA2 AMOVX DPTR,A將 DATA2送 C 口輸出DAC0832啟動轉(zhuǎn)換程序ORG 0000HMOV R1,#data1MOV A,R1MOVX DPTR,AMOV DPTR,#0BFFFHMOV R1,#data2MOVX DPTR,AMOV DPTR,#7FFFHMOVX DPTR,A例:用定時器 0,方式 2計數(shù),要求每計
31、滿 100 次,將 端取反。分析 :TMOD=00000110B計數(shù)初值 :TH0=TL0=28-100=156=9CH程序如下:ORGSTART:MOVTMOD,#06HMOV TL0,#9CHMOV TH0,#9CHSETBTR0LOOP:JBC TF0,DONE判計滿 100 次否若計滿則清零 TF0 且轉(zhuǎn) DONESJMPLOOPDONE:CPLSJMPLOOP例 已知單片機晶振頻率為12MHz,要求使用 T0 定時,使單片機引腳上連續(xù)輸出周期為1ms1000H的方波。分析 :首先算出機器周期 =12/(12MHz)=1us ,所以需要 T0計數(shù) M次M=1us=500256<5
32、00<8192, 所以選擇方式 0初值 N=213-500=7692=1E0CH因為選用方式 0,低 8位 TL0只使用低 5位,其 余的均計入高 8位 TH0的初值。TL0=0CH, TH0=0F0HORG 0000HRESET: AJMP STARTORG000BHAJMPT0INTORG0100HSTART: MOV SP,#60HMOVTH0,#0F0HMOVTL0,#0CHSETBTR0SETBET0SETB EAMAIN: AJMPMAINT0INT: CPLMOV TL0,#0CHMOV TH0,#0F0HRETI3、假設單片機晶振 fosc=6MHz,請利用 T0 和輸出
33、矩形波,矩形波的高電平寬 50us,低電平寬 300us。 第 13)晶振 fosc=6MHz機器周期為 2us定時器 T0 使之工作于模式 3定時 50us 的初值為: 256-25=231清 TR0 , TF0定時 300US的初值為: 256-150=106 (6AH) 方法 1:MOV TCON ,#0MOV TL0 , #0E7HSETB ;SETB TR0 ;LOOP1: JNB TF0 , LOOP1CLR TF0;CLR TR0;MOV TL0 , #6AHSETB TR0;CLR ;LOOP2: JNB TF0 , LOOP2CLR TF0;CLR TR0;MOV TL0 ,
34、 #0E7HSETB TR0;SETB ;SJMP LOOP1高電平初值。 256-25口輸出高電平啟動定時器 T0檢測 T0 是否溢出 清除溢出標志 關(guān)閉定時器 寫低電平初值 256-150 啟動定時器 T0 使輸出低電平檢測 T0 是否溢出清除溢出標志關(guān)閉定時器寫高電平初值 256-25啟動定時器 T0 使輸出高電平重復6、設 fosc=12MHz,編寫程序,其功能為:對 T0 進行初始化,使之工作于模式2,產(chǎn)生 200us 的定時,并用查詢 T0 溢出標志 TF0 的方法,控制引腳輸出周期為 2ms的方波。 第 18題 )MOV TMOD , #02H MOV TCON , #0;MOV
35、 TH0 , #56 MOV TL0 , #56 MOV R7 , #5 SETB TR0 SETB LOOP: JNB TF0 , LOOP CLR TF0 ; DJNZ R7 , LOOP ; MOV R7 , #5 ; CPL ; SJMP LOOP ;工作于模式 2,定時方式 清除 TF0、 TR0。與 1ms是 5 倍的關(guān)系啟動定時器 T0將置高電平檢測 T0 的溢出標志清除 T0 的溢出標志是否到 5 次重新寫入計數(shù)次數(shù)取反口循環(huán)往復; T0; (256-200)=56; 200us9、當系統(tǒng)選用 6MHz晶體振蕩器時,由T0 工作在方式為,利用中斷響應,產(chǎn)1)寫出 T0 定時器的
36、方式控制字, T0定時器初值計算。2)試編寫程序完成此功能思路:方波的周期為 2ms,每隔 1ms對取反,可完成題目要求。系統(tǒng)晶體振蕩器的頻率為 6MHz,機器周期為 2us,定時器 T0在方式 2 時, 最大定時 256us×2=512us,達不到 1ms的要求,故將定時器 T0 的初始值選為: 256-250=6( 定時,兩次后取反 口。(1)T0的初始值為:X=256-250=6T0 的控制字為:MOV TMOD , #20H MOV TCON , #02)參考程序如下:ORG 0000HSJMP MainORG 000BHAJMP T0ORG 0030HMain: MOV T
37、MOD , #20HCLR TR0CLR TF0MOV IE , #02HMOV IP , #0MOV TH0 , #6MOV TL0 , #6MOV R7 , #2SETB TR0SETB EASJMP $;定時器 T1 工作于方式 2;關(guān)閉定時器 T1;清除定時器 T1 溢出標志;允許定時器 T1 中斷;不設置悠閑級別;定時器 T1 初值;(256-250=6);定時與 1ms的 2 倍的關(guān)系;啟動定時器 T1;開中斷T0: DJNZ R7 , NEXT兩次是否到未到則中斷返回,到則繼續(xù)CPLMOV R7 , #2;取反口;重置 2 倍的關(guān)系12、要求從引腳輸出 1000Hz 方波,晶振頻
38、率為 12MHz。試設計程序思路:( 1)只要使每隔 500 s 取反一次即可得到 1ms方波;。(2)將 T1設為定時方式 0:GATE=,0 C/T()=0,M1M0=0;0 T0不用可為任意, 只要不使其進入方式 3,一般取 0即可。故 TMOD=00。H下面計算 500s定時 T1 的初值:機器周期: T=1 s , 設初值為 X則:X=8192-500=7692= B=1111 0000 0 0110 B= F 0 0 C H因為在作 13位計數(shù)器用時, TL1高3位未用,應寫 0,X的低 5位裝入 TL1 的低 5 位,所以 TL1=#0CH;X的高 8 位應裝入 TH1,所以 T
39、H1=#F0H。參考源程序如下:MOV TCON , #0;清 TF1、TR1MOV TMOD , #0;定時器 T1 工作于方式 0MOV TL1 , #0CHSETB TR1LOOP: JNB TF1 , LOOPCLR TF1CPLCLR TR1MOV TH1 , #0F0HMOV TL1 , #0CHSETB TR1SJMP LOOP;8192-500=7692=F00CH;啟動定時器 T1;等待定時 500us 的溢出;清除溢出標志;取反口;關(guān)閉定時器 T1;重寫定時 500us 的初值;重寫定時 500us 的初值;啟動定時器 T113、試用定時 / 計數(shù)器 T1 對外部事件計數(shù)。
40、要求每計數(shù) 100,就將 T1改成定時 方式,控制輸出一個脈寬為 10ms的正脈沖,然后又轉(zhuǎn)為計數(shù)方式,如此反復循 環(huán)。設晶振頻率為 12MHz。定時器 T1 確定工作于方式 1計數(shù) 100 的初始值為: 65536-100100=64+32+4=01100100 B65536-100=1111 1111 1001 1100 B = FF9CH定時 10ms的初始值為: 65536-100005000=4096+512+256+128+8 =65536-5000=60536=1110 1100 0111 1000 B = EC78H參考程序如下:LOOP3: CLR TR1CLR TF1MOV
41、 TMOD 50HMOV TH1 , #0FFHMOV TL1 , #9CHSETB TR1LOOP1: JNB TF1 , LOOP1MOV TMOD , #10HCLR TF1CLR TR1MOV TH1 , #0ECHMOV TL1 , #78HSETB TR1LOOP2: JNB TF1 , LOOP2;關(guān)閉定時器 T1;清除定時器 T1 的溢出標志;定時器 T1 工作于方式 1,計數(shù);計數(shù) 100 的初值;65536-100=FF9CH;啟動定時器 T1;等待計數(shù) 100 溢出;定時器 T1 工作于方式 1,定時;清除定時器溢出標志;關(guān)閉定時器 T1;定時 10ms的初值;65536
42、-5000=EC78H;啟動定時器 T1;等待定時 10ms溢出CPL ;取反口SJMP LOOP3 ;返回循環(huán)14、若單片機晶振為 12MHz,利用定時器 1 方式 1,產(chǎn)生 1ms的定時,在腳產(chǎn)生 周期為 2ms方波,用查詢方式工作,查詢標志為 TF1。已知 fosc =12MHz1個機器周期為 1us1ms=1000us初值=65536-1000=5453664536轉(zhuǎn)換為二進制: 1111 1100 0001 1000T0的低 8 位: 00011000(18H)T0的高 8 位:(FCH)則有 : (TL0) #18H參考源程序如下:MOV TCON , #10HMOV TMOD ,
43、 #0MOV TH1 , #0FCHMOV TL1 , #18HSETB TR1LOOP: JNB TF1 , LOOPCLR TF1CPLCLR TR1MOV TH1 , #0FCHMOV TL1 , #18H(TH0)#0FCH;定時器 T1 工作于方式 1;清除 TR1、 TF1;定時 1ms的初值;65536-1000=FC18H;啟動定時器 T1;等待定時 1ms的溢出;清除溢出標志;取反口;關(guān)閉定時器 T1;重寫定時 1ms的處值;重寫定時 1ms的處值SETB TR1;啟動定時器 T1SJMP LOOP;返回循環(huán)15、系統(tǒng)時鐘頻率為 6 MHz,試用定時器 T0 作外部計數(shù)器,編
44、程實現(xiàn)每計到 1000 個脈沖,使 T1 開始 2ms定時,定時時間到后, T0 又開始計數(shù),這樣反復循環(huán)不 止。(1) 定時器 T0工作于方式 1,計數(shù) 1000的初值為: 65536-10001000=512+256+128+64+32+8=0000 0001 1111 1000 B65536-1000=1111 1100 0001 1000 B = FC18H(2) 晶振 fosc=6MHz,機器周期為 2us,定時器 T0工作于方式 1,定時 1ms的初 值為: 65536-500500=256+128+64+32+16+4 = 00000000 B ( 取反 +1 可得到結(jié)果 )(6
45、5536-500)=65036=1111 1110 0000 1100 BTH0=#0FEH ; TL0=#0CH(3) 參考程序如下:LOOP3: MOV TMOD , #0000 0101 BCLR TF0CLR TR0MOV TH0 , #0FCHMOV TL0 , #18HSETB TR0LOOP1: JNB TF0 , LOOP1CLR TF0CLR TR0MOV TMOD , #01HMOV TH0 , #0FEHMOV TL0 , #0CHSETB TR0LOOP2: JNB TF0 , LOOP2SJMP LOOP35V,方式一、填空題:1、MCS 5l 單片機的最大程序?qū)ぶ房?/p>
46、間是KB ,該空間的地址范圍從至 ,系統(tǒng)上電及復位后,程序入口地址為 。2、若由程序設定 PSW中的 RS1、RS0=01,則工作寄存器 R0R7 的直接地址為 _ _ 。3、MCS-51單片機的 I/O 端口采用 _ _ 編址方式。、4、一個 8位 D/A轉(zhuǎn)換器其分辨率為 _ _ ,若該 8位 D/A轉(zhuǎn)換器的基準電壓為 則數(shù)字量 100 對應得模擬量為 。5、單片機系統(tǒng)中經(jīng)常采用的地址譯碼技術(shù)包括法和 法。6、INTEL 8051 CPU 是位的單片機,其內(nèi)部有 KB的 ROM。7、指出下列各指令中源操作數(shù)的尋址方式。(1)MOVC A, A+DPTR(2)XCH A, R0;(3)MOV
47、C,( 4) JC LOOP8、判斷下列各條指令的書寫格式是否有錯,并指出原因。( 1) MUL R0R1(2) MOV A, R7(3) MOV A, #3000H(4)MOV R1, C9、單片機與外設進行數(shù)據(jù)交換通常有 方式、 方式和 三種。10、MCS-51單片機串行口的方式 0是 方式,方式 2是方式。11、單片機復位后 SP中的狀態(tài)為 , P0P3口的狀態(tài)為 。12、串行通信根據(jù)數(shù)據(jù)傳送時的編碼格式不同可分為 和 兩種方式。13、堆棧按照 原則工作,使用 指明棧頂位置。14、8051 單片機片內(nèi)有 字節(jié)的 ROM,字節(jié)的 RAM。15 、 使 用 8031 單 片 機 構(gòu) 成 的
48、系 統(tǒng) 時 , 其 EA 引 腳 應 , 因 為16、ADC0809是位的 A/D轉(zhuǎn)換器。17、單片機復位后 PC的內(nèi)容為 ,復位對片內(nèi) RAM中存放的內(nèi)容 ( 有, 無 )影響。18、多位 LED顯示器通常有 顯示和 顯示兩種接口。19. 執(zhí)行下列兩條指令后, PSW中的標志位 ( CY)=,(OV)=,(AC)=,(P) =。MOV A, #80HADD A, #98H20 JC LOOP指令中操作數(shù)的尋址方式是 尋址方式為 。 21下列指令中正確的是。(1) RLCR7(3) MOV A, DPTR22一個 4k*4RAM芯片的地址線有, MOV A ,P1 指令中源操作數(shù)的(2)SET
49、B4) POP 40H根,數(shù)據(jù)線有 。23設( A) =30H,( B) =40H,( SP)=40H,執(zhí)行下列程序段后,( A)=PUSH APOP APOP B24若 8位 A/D轉(zhuǎn)換器的滿量程輸入為 5V時,該轉(zhuǎn)換器可分辨的最小電壓是。25一單片機系統(tǒng)的外部晶體振蕩器頻率為6MHz,現(xiàn)啟動單片機的的定時 / 計數(shù)器 1統(tǒng)計外部脈沖的個數(shù),當計滿100 時,使輸出 0。則:0 時,T1的初值應為(TH1)=,(TL1)=當 T1 工作在方式;1 時,T1的初值應為(TH1)=,(TL1)=當 T1 工作在方式;2 時,T1的初值應為(TH1)=,(TL1)=當 T1 工作在方式。26. 已
50、知 (SP)=60H,子程序 DELAY的首地址為 1878H,現(xiàn)執(zhí)行位于 1123H 處的 LCALL DELAY 三字節(jié)指令后, (PC)= ,(61H)=, (62H)=。、填空題:(答)1. 64KB , 0 , 0FFFFH, 02. 080FH3. 統(tǒng)一4. 1/256 , (5*100/256V )5. 線選法, 譯碼法6. 8, 47. 基址變址尋址, 寄存器間接尋址, 位尋址, 相對尋址8. ×, 乘法指令用 A× B;×, 寄存器間接尋址用 R0和 R1(只能用 R1 和 R0 作指針);×, A 是 8 位寄存器×, C
51、為進位位,不能送給寄存器9、查詢、定時、中斷。10、8 位移位寄存器,多機11、07H、FFH12、同步通信、異步通信13、先進后出, SP14、4K,128。15、接地,其片內(nèi)沒有程序存儲器16、817、0000H、無18、靜態(tài),動態(tài), 1, 0, 020相對尋址, 直接尋址21(4)22 12, 42340H24.25. FCH, 1CH, FFH, 9CH, 9CH, 9CH26. 1878H, 26H, 11H、選擇題:1當 MCS-51單片機接有外部存儲器時, P2 口可作為。A數(shù)據(jù)輸入口B. 數(shù)據(jù)的輸出口C 準雙向輸入輸出口D高 8位地址線2單片機的并行接口中,作為數(shù)據(jù)線使用的并行
52、口是。AP0B. P1C. P2D. P33 MCS 5l 單片機的堆棧區(qū)是設置在中。A 片內(nèi) ROM區(qū)B片外 ROM區(qū)C 片內(nèi) RAM區(qū)D. 片外 RAM區(qū)4片內(nèi) RAM的 20H 2FH為位尋址區(qū),所包含的位地址是。A 00H20HB. 00H 7FHC 20H2FHD00HFFH5在寄存器間接尋址方式中,間址寄存器中存放的數(shù)據(jù)是。A參與操作的數(shù)據(jù)B操作數(shù)的地址值C程序的轉(zhuǎn)換地址D指令的操作碼6當需要從 MCS-51單片機程序存儲器取數(shù)據(jù)時,采用的指令為A. MOV A, R1A, A + DPTRC. MOVX A, R0A, DPTR7. 能夠用紫外光擦除 ROM中程序的只讀存儲器稱為。A. 掩膜 ROM8. 在片外擴展一片 2716 程序存儲器芯片要 地址線。根 根 根 根9. 定時器 /計數(shù)器工作方式 1 是 。A. 8 位計數(shù)器結(jié)構(gòu) B. 2 個 8 位計數(shù)器結(jié)構(gòu)C. 13 位計數(shù)結(jié)構(gòu)D. 16 位計數(shù)結(jié)構(gòu)10T0 中斷的中斷入口地址為。A. 0003H B. 000BH C.
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024至2030年中國一次性嬰兒止尿片數(shù)據(jù)監(jiān)測研究報告
- 2024年中國騎馬針市場調(diào)查研究報告
- 2024年中國潔具清洗劑市場調(diào)查研究報告
- 2024八年級數(shù)學上冊第二章分式與分式方程2分式的乘除法第1課時分子分母都是單項式的分式的乘除與乘方習題課件魯教版五四制
- 2024年南昌客運駕駛員理論知識題庫
- 2024年紅河道路旅客運輸考卷
- 2024年自貢駕??荚嚳瓦\從業(yè)資格證考試題庫
- 給小學捐款倡議書(22篇)
- 清明節(jié)安全教育主題班會教案(12篇)
- 資產(chǎn)清查自查報告
- 吹膜操作法概述
- 數(shù)據(jù)中心機房建筑裝修工程施工方案
- 思科交換機簡單配置(通用教程)
- 現(xiàn)澆箱梁重大危險源告知牌
- 英語學習經(jīng)驗交流ppt
- 儀器柜明細卡
- 華為性格測試攻略
- 小學生學習心理調(diào)查問卷(學生篇)
- Arbortext editor詳細教程
- theBeatles披頭士甲殼蟲樂隊簡介
- 石方機械破除施工方案
評論
0/150
提交評論