




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、單片機原理及應用期終考試的復習題庫1、單片機與普通計算機的不同之處在于其將(CPU )(儲存器)和(I/O 口 )三部分集成于一塊芯片上。2、8051 與8751的區(qū)別是:(C)A、內部數(shù)據(jù)存儲但也數(shù)目的不同C、內部程序存儲器的類型不同3、在MCS 51單片機中,如果采用B、內部數(shù)據(jù)存儲器的類型不同D、內部的寄存器的數(shù)目不同6MHz晶振頻率,一個機器周期為2u4、內部RAM中,位地址為30H的位,該位所在字節(jié)的字節(jié)地址為26H 5、若A中的內容為63H ,那么,P標志位的值為0。分析:P為偶校驗位,因為 A中1的個數(shù)為偶數(shù),所以 P=0。6、判斷下列說法是否正確:A、8031 的CPU是由RA
2、M 和EPROM 所組成。錯B、區(qū)分片外程序存儲器和片外數(shù)據(jù)存儲器的最可靠的方法是看其位于地址范圍的低端還 是高端。錯C、在MCS-51中,為使準雙向的I/O 口工作在輸入方式,必須保證它被事先預置為1。對D、PC可以看成使程序存儲器的地址指針。對7 > 8031單片機復位后,R4所對應的存儲單元的地址為 (04H ),因上電時PSW= ( 00F )。 這時當前的工作寄存器區(qū)是(0 )組工作寄存器區(qū)。8、判斷以下有關PC和DPTR的結論正確的是(ABCD )A、DPTR是可以訪問的,而 PC不能訪問。B、它們都是16位的存儲器C、它們都有加1的功能。D、DPTR可以分為兩個8位的寄存器
3、使用,但 PC不能。9、 使用8031芯片時,需將/EA引腳接(低)電平,因為其片內無(程序)存儲器。10、片內RAM低128個單元劃分為哪3個主要部分?各部分的主要功能是什么?答:工作寄存器區(qū)、位尋址區(qū)和通用RAM區(qū)(或用戶 RAM區(qū))或(數(shù)據(jù)緩沖區(qū))11、判斷下列說法是否正確A、 程序計數(shù)器PC不能為用戶編程時直接使用,因為它沒有地址。對B、 內部RAM的位尋址區(qū),只能供位尋址使用,而不能供字節(jié)尋址使用。錯C、8031共有21個特殊功能寄存器,它們的位都是可以用軟件設置的,因此,是可以 進行位尋址的。錯12、PC的值是、當前正在執(zhí)行指令的下一條指令的地址13、通過堆棧操作實現(xiàn)子程序調用,首
4、先就要把( PC )的內容入棧,以進行斷點保護 。調用返回時,再進行出棧保護,把保護的斷點送回到( PC )。14、 MCS 51單片機程序存儲器的尋址范圍是由程序計數(shù)器PC的位數(shù)所決定的,因為MCS 51的PC是16位的,因此其尋址的范圍為(64 ) KB。15、當MCS 51單片機運行出錯或程序陷入死循環(huán)時,如何來擺脫困境? 答:軟件陷阱、復位16、判斷下列說法正確的是(B )A、 PC是1個不可尋址的特殊功能寄存器。錯B、 單片機的主頻越高,其運算速度越快。對C、 在MCS 51單片機中,1個機器周期等于1us。錯D、 特殊功能寄存器 SP 內裝的是棧頂首地址單元的內容。 錯17 、如果
5、手中僅有一臺示波器,可通過觀察哪個引腳的狀態(tài),來大致判斷 MCS 51 單片 機正在工作? ALE分析 :因為單片機正常工作時, ALE 腳輸出時鐘頻率為振蕩周期的 1/6 。18 、 判斷下列指令的正誤:1 ) MOV28H,R22 ) DECDPTR3 ) INCDPTR4 ) CLRRo錯、錯、對、錯5) CPLR5錯、錯、錯、對6) MOV Ro,R17) PUSHDPTR8) MOVFo,C9 ) MOV Fo,ACC.3錯、對、對、錯1o) MOVXA,R111 ) MOVC,3oH12) RLCRo19 、判斷下列說法不正確的是( C )A 、 立即尋址方式是被操作的數(shù)據(jù)本身在指
6、令中,而不是它的地址在指令中。對B 、 指令周期是執(zhí)行一條指令的時間。對C 、 指令中直接給出的操作數(shù)稱為直接尋址。錯20 、在基址加變址尋址方式中,以( 累加器 A )作變址寄存器,以( DPTR )或( PC ) 作基址寄存器。21 、 指令格式是由( 操作碼 )和( 操作數(shù) )所組成,也可能僅由( 操作碼 )組成。22 、 假定累加器 A 中的內容為 30H ,執(zhí)行指令1000H : MOVCA,A+PC 后,把程序存儲器( 1031H )單元的內容送入累加器 A中。23、在MCS 51中,PC和DPTR都用于提供地址,但 PC是為訪問(程序)存儲器提 供地址,而 DPTR 是為訪問(
7、數(shù)據(jù) )存儲器提供地址。24 、 在寄存器間接尋址方式中,其“間接”體現(xiàn)在(指令中寄存器的內容不是操作數(shù),而是操作數(shù)的(地址 ) )。25 、 下列程序段的功能是什么?交換 A 、 B 的內容PUSH APUSH BPOP A POP B26、已知程序執(zhí)行前有 A=02H , SP=52H ,(51H) =FFH , (52H)=FFH 。下述程序執(zhí)行 后:POP DPH POP DPLMOV DPTR,#4000HRL AMOV B,AMOVC A,A+DPTR PUSH A MOV A,B INC A MOVC A,A+DPTRPUSH ARETORG 4000HDB 10H,80H,30
8、H,50H,30H,50H請問:A=( 50H ),SP=( 50H ),( 51H)=( 30H ),( 52H)=( 50H ),PC=( 5030H )。27、假定 A=83H ,(R0) =17H ,(17H ) =34H ,執(zhí)行以下指令:ANL A,#17H ORL 17H,AXRL A,Ro CPL A后,A 的內容為(OCBH )。28、假定 A=55H , R3=0AAH ,在執(zhí)行指令 ANL A,R3 后, A=(0 ), R3=( 0AAH )。29、如果 DPTR=5o7BH , SP=32H ,(3oH ) =5oH ,(31H ) =5FH ,(32H ) =3CH
9、,則 執(zhí)行下列指令后:POP DPH POP DPLPOP SP 則: DPH= (3CH ),DPL= (5FH ), SP= (4FH ) 30 、假定, SP=60H , A=30H ,B=70H ,執(zhí)行下列指令:PUSH APUSH B 后,SP的內容為(62H ),61H 單元的內容為(30H ) ,62H單元的內容為(70H )。31、試編寫1個程序,將內部 RAM中45H單元的高4位清O ,低4位置1。答:MoV A, 45HANL A, #OFHoRL A, #OFHMoV 45H, A32 、 已知程序執(zhí)行前有 A=O2H , SP=42H ,(41H ) =FFH , (4
10、2H)=FFH 。下述程序執(zhí)行 后:PoP DPHPoP DPLMoV DPTR,#3OOOHRL AMoV B,AMoVC A,A+DPTRPUSH AMoV A,BINC AMoVC A,A+DPTRPUSH AREToRG 3OOOHDB 1OH,8OH,3OH,8OH,5OH,8OH請問: A=(8OH ), SP=(4OH ),(51H ) =(5OH ),(52H ) =(8OH ), PC=(8O5OH )。33 、 計算下面子程序中指令的偏移量和程序執(zhí)行的時間(晶振頻率為12MHz )。MoV R3,#15H ;1 個機器周期DL1:MoV R4,#255 ;1 個機器周期DL
11、2:MoV P1,R3 ;2 個機器周期DJNZ R4,DL2 ;2個機器周期DJNZ R3,DL1 ;2個機器周期RET ;2 個機器周期答:15348us分析:(2 + 2 )× 255 + 1 + 2 )× 15 + 1 + 2=15348us34 、 假定 A=83H ,(RO ) =17H ,(17H ) =34H ,執(zhí)行以下指令:ANL A,#17HoRL 17H,AXRL A,ROCPL A 后,A的內容為(0CBH )。35、試編寫程序,查找在內部RAM的30H50H單元中是否有0AAH這一數(shù)據(jù)。若有,則將 51H 單元置為“ O1H ”;若未找到,則將 5
12、1H 單元置為“ OOH ”。答: START: MoV RO,#3OHMoV R2,#2OHLOOP: MOV A,R0CJNE A,#0AAH,NEXTMOV 51H,#01HLJMP EXITNEXT: INC R0DJNZ R2,LOOPMOV 51H,#00HEXIT: RET 36、試編寫程序,查找在內部 RAM的20H40H單元中出現(xiàn)“ OoH ”這一數(shù)據(jù)的次數(shù)。 并將查找到的結果存入 41H 單元。答: START: MOV 41H,#OMOV RO,#2OHMOV R2,#2OHLOOP: MOV A,RO JNZ NEXTINC 41HNEXT: INC RODJNZ R2
13、,LOOPRET2000H LCALL LABEL后,堆棧指針 SP 和堆棧內容發(fā)生了什么變化? PC 的值等于什37 、若 SP=6OH ,標號LABEL 所在的地址為3456H 。 LCALL 指令的地址為 2OOOH ,執(zhí)行指令如下:么?如果將指令 LCALL 直接換成 ACALL 是否可以?如果換成 ACALL 指令,可調用的地 址范圍是什么?的低字節(jié) =O3H的高字節(jié) =2OH答: 1)SP=SP+1=61H (61H)=PCSP=SP+1=62H (62H)=PC2 ) PC=3456H3)可以4) 2KB = 2048 Byte38 、 外部中斷 1 所對應的中斷入口地址為(00
14、13H) H 。39 、 下列說法錯誤的是: (ABC )A、 各中斷發(fā)出的中斷請求信號,都會標記在 B 、 各中斷發(fā)出的中斷請求信號,都會標記在 C、 各中斷發(fā)出的中斷請求信號,都會標記在 D 、 各中斷發(fā)出的中斷請求信號,都會標記在 中。MCS 51 系統(tǒng)的 IE 寄存器中。MCS 51 系統(tǒng)的 TMOD 寄存器中。MCS 51 系統(tǒng)的 IP 寄存器中。MCS 51 系統(tǒng)的 TCON 與 SCON 寄存器40 、中斷查詢確認后, 在下列各種 8031 單片機運行情況中, 能立即進行響應的是: ( D ) A、 當前正在執(zhí)行高優(yōu)先級中斷處理B 、 當前正在執(zhí)行 RETI 指令C、當前指令是
15、DIV 指令,且正處于取指令的機器周期D、當前指令是 MOV A,R341 、 8031 單片機響應中斷后,產生長調用指令 LCALL ,執(zhí)行該指令的過程包括:首先把16位地址送(PC),使程(PC)的內容壓入堆棧,以進行斷點保護,然后把長調用指令的 序執(zhí)行轉向( 程序存儲器 ) 中的中斷地址區(qū)。42 、 編寫出外部中斷 1 為跳沿觸發(fā)的中斷初始化程序。答: SETB IT1SETB EX1SETB EA43 、 在 MCS 51 中,需要外加電路實現(xiàn)中斷撤除的是: ( D )A 、定時中斷B 、脈沖方式的外部中斷C、外部串行中斷D、電平方式的外部中斷44 、 下列說法正確的是: (ACD )
16、A、同一級別的中斷請求按時間的先后順序響應。B、同一時間同一級別的多中斷請求,將形成阻塞,系統(tǒng)無法響應。C、低優(yōu)先級中斷請求不能中斷高優(yōu)先級中斷請求,但是高優(yōu)先級中斷請求能中斷低優(yōu) 先級中斷請求。D 、 同級中斷不能嵌套。45 、 中斷服務子程序返回指令 RETI 和普通子程序返回指令 RET 有什么區(qū)別? 答: RETI 指令在返回的同時清除相應的優(yōu)先級觸發(fā)器,以允許下次中斷46 、 某系統(tǒng)有 3 個外部中斷源 1、 2、 3,當某一中斷源變?yōu)榈碗娖綍r,便要求CPU 進行處理,它們的優(yōu)先處理次序由高到低依次為3、 2、 1 ,中斷處理程序的入口地址分別為1000H ,1100H ,1200H
17、 。試編寫主程序及中斷服務程序(轉至相應的中斷處理程序的入 口即可)。答:若僅在/INTO引腳接3個外部中斷源.ORG 0000HLJMP MAINORG OOO3HLJMP INT_EXOORG OO3OHMAIN: CLR ITO ; 采用低電平有效中斷SETB EXO ;允許外部中斷 OSETB EA; 插入用戶程序WAIT: MOV PCON,#O1H ; 單片機進入休眠方式等待中斷NOPLJMP WAIT ;以下為外部中斷 O 服務子程序INT_EXO : JNB P1.O,NEXT1 ; 判斷是不是 1 號中斷LJMP INT_IR1 ; 跳轉到 1 號中斷處理程序 NEXT1:
18、JNB P1.1,NEXT2 ; 判斷是不是 2 號中斷LJMP INT_IR2 ; 跳轉到 2 號中斷處理程序 NEXT2: LJMP INT_IR3 ; 跳轉到 3 號中斷處理程序ORG 1OOOHINT_IR1:;插入相應中斷處理程序RETI ; 中斷返回ORG 11OOHINT_IR2: ; 插入相應中斷處理程序RETI ; 中斷返回ORG 12OOHINT_IR3: ; 插入相應中斷處理程序RETI ; 中斷返回47 、 如果采用晶振的頻率為 3MHz ,定時器 / 計數(shù)器工作方式 0 、1、2 下,其最大的定時 時間為多少? 解答:因為機器周期 , 所以定時器 / 計數(shù)器工作方式
19、0 下,其最大定時時 間為 ;同樣可以求得方式 1 下的最大定時時間為 262.144ms ;方式 2 下的最大定時時間為 1024ms 。48、 定時/ 計數(shù)器用作定時器時,其計數(shù)脈沖由誰提供?定時時間與哪些因素有關?答:定時/ 計數(shù)器作定時時, 其計數(shù)脈沖由系統(tǒng)振蕩器產生的內部時鐘信號 12 分頻后提供。 定時時間與時鐘頻率和定時初值有關。49、 定時/ 計數(shù)器用作定時器時,對外界計數(shù)頻率有何限制?答:由于確認 1 次負跳變要花 2 個機器周期, 即 24 個振蕩周期, 因此外部輸入的計數(shù)脈沖 的最高頻率為系統(tǒng)振蕩器頻率的 1/24 。50 、采用定時器 / 計數(shù)器 T0 對外部脈沖進行計
20、數(shù),每計數(shù) 100 個脈沖后, T0 轉為定時工 作方式。 定時 1ms 后,又轉為計數(shù)方式, 如此循環(huán)不止。 假定 MCS-51 單片機的晶體振蕩 器的頻率為 6MHz ,請使用方式 1 實現(xiàn),要求編寫出程序。解答: 定時器 / 計數(shù)器 T0 在計數(shù)和定時工作完成后,均采用中斷方式工作。除了第一次計 數(shù)工作方式設置在主程序完成外, 后面的定時或計數(shù)工作方式分別在中斷程序完成, 用一標 志位識別下一輪定時器 / 計數(shù)器 T0 的工作方式。編寫程序如下:ORG 0000HLJMP MAINORG 000BHLJMP IT0PMAIN: MOV TMOD,#06H;定時器 / 計數(shù)器 T0 為計數(shù)
21、方式 2MOV TL0,#156 ;計數(shù) 100 個脈沖的初值賦值MOV TH0,#156SETB GATE ;打開計數(shù)門SETB TR0 ;啟動 T0 ,開始計數(shù)SETB ET0 ;允許 T0 中斷SETB EA ;CPU 開中斷CLR F0 ;設置下一輪為定時方式的標志位WAIT: AJMP WAITIT0P: CLR EA ;關中斷JB F0,COUNT ;F0=1 ,轉計數(shù)方式設置MOV TMOD,#00H ;定時器 / 計數(shù)器 T0 為定時方式 0MOV TH0,#0FEH ;定時 1ms 初值賦值MOV TL0,#0CHSETB EARETICOUNT: MOV TMOD,#06H
22、MOV TL0,#156SETB EARETI51、 定時器 / 計數(shù)器的工作方式 2 有什么特點?適用于哪些應用場合? 答:定時器/ 計數(shù)器的工作方式 2 具有自動恢復初值的特點,適用于精確定時,比如波特率的產生。52 、 編寫程序,要求使用 T0 ,采用方式 2 定時,在 P1.0 輸出周期為 400 s ,占空比為 10:1 的矩形脈沖。解答: 根據(jù)題意,從 P1.0 輸出的矩形脈沖的高低電平的時間為 10:1 ,則高低電平的時間 分別為363.63 s和36.37 s°如果系統(tǒng)采用6MHz晶振的話,因此高低電平輸出取整, 則約為364 s和36 s。編寫程序如下:ORG 00
23、00HLJMP MAINORG 000BHLJMP IT0PMAIN: MOV TMOD,#02H;定時器 / 計數(shù)器 T0 為定時方式 2MoV TL0,#4AH ;定時364 s初值賦值SETB TR0 ;啟動 T0 ,開始計數(shù)SETB ET0 ;允許 T0 中斷SETB EA ; CPU 開中斷SETB P1.0WAIT: AJMP WAITIT0P: CLR EACLR P1.0 ;關中斷MoV R0,#9DLY: DJNZ R0,DLY ;延時 26sMOV TL0,#4AH ;定時364 s初值賦值SETB P1.0SETB EARETI53 、 一個定時器的定時時間有限,如何實現(xiàn)
24、兩個定時器的串行定時,來實現(xiàn)較長時間的定 時?答:方式一 ,在第一個定時器的中斷程序里關閉本定時器的中斷程序,設置和打開另一個定時器; 在另一個定時器的中斷程序中關閉本定時中斷, 設置和打開另一個定時器。 這種方式 的定時時間為兩個定時器定時時間的和。方式二 ,一個作為定時器,在定時中斷后產生一個外部計數(shù)脈沖(比如由P1.0 接 INT0 產生),另一個定時器工作在計數(shù)方式。這樣兩個定時器的定時時間為一個定時器的定時時間 乘以另一個定時器的計數(shù)值。54 、當定時器 T0 用于方式 3 時,應該如何控制定時器 T1 的啟動和關閉?答: 由 T1(P3.5) 口控制定時器 T1 的啟動和關閉。55
25、 、定時器 / 計數(shù)器測量某正單脈沖的寬度, 采用何種方式可得到最大量程?若時鐘頻率為 6MHz ,求允許測量的最大脈沖寬度是多少?答: 采用方式 1 定時工作方式。最大脈沖寬度為 131.072ms。56 、編寫一段程序,功能要求為:當 P1.0 引腳的電平正跳變時,對 P1.1 的輸入脈沖進行計數(shù);當P1.2引腳的電平負跳變時,停止計數(shù),并將計數(shù)值寫入Ro、R1(高位存R1 ,低位存 R0) 。解答: 將 P1.1 的輸入脈沖接入 INTo ,即使用 To 計數(shù)器完成對 P1.1 口的脈沖計數(shù)。編寫 程序如下:ORG ooooHLJMP MAINORG 000BHLJMP IT0PMAIN
26、: JNB P1.0,MAINMOV TMOD,#05H ;定時器 / 計數(shù)器 T0 為計數(shù)方式 1SETB TR0 ;啟動 T0 ,開始計數(shù)SETB ET0 ;允許 T0 中斷SETB EA ;CPU 開中斷WAIT: JB P1.2,WAITCLR EACLR TR0MOV R1,TH0MOV R0,TL0AJMP $IT0P: INC R2RETI57 、 THX 與 TLX(X=0,1) 是普通寄存器還是計數(shù)器?其內容可以隨時用指令更改嗎?更改 后的新值是立即刷新還是等當前計數(shù)器計滿后才能刷新?答: THX 與 TLX(X=0,1) 是由特殊功能寄存器構成的計數(shù)器,其內容可以隨時用指令
27、更改, 更改后的新值是立即刷新。但在讀THX 、TLX 的值時,應該先讀 THX 值,后讀 TLX ,再讀 THX 。若兩次讀得 THX 相同,則可確定讀得的內容正確。若前后兩次讀得的 THX 有變 化,再重復上述過程。58 、 判斷下列的說法是否正確?(1) 特殊功能寄存器(2) 特殊功能寄存器對)錯)SCON ,與定時器 / 計數(shù)器的控制無關。 TCON ,與定時器 / 計數(shù)器的控制無關。(3) 特殊功能寄存器IE ,與定時器 / 計數(shù)器的控制無關。錯)(4) 特殊功能寄存器TMOD ,與定時器 / 計數(shù)器的控制無關。錯)59 、 串行數(shù)據(jù)傳送的主要優(yōu)點和用途是什么?2 個)。 用途: 主
28、要用答:優(yōu)點: 串行數(shù)據(jù)傳送的主要優(yōu)點是硬件接口簡單,接口端口少( 于多個單片機系統(tǒng)之間的數(shù)據(jù)通信。60 、 簡述串行口接收和發(fā)送數(shù)據(jù)的過程。答: 以方式一為例。發(fā)送:數(shù)據(jù)位由TXT 端輸出,發(fā)送 1 幀信息為 10 為,當 CPU 執(zhí)行 1條數(shù)據(jù)寫發(fā)送緩沖器 SBUF 的指令,就啟動發(fā)送。發(fā)送開始時,內部發(fā)送控制信號 /SEND 變?yōu)橛行В?將起始位想 TXD 輸出, 此后,每經過 1 個 TX 時鐘周期, 便產生 1 個移位脈沖, 并由TXD輸出1個數(shù)據(jù)位。8位數(shù)據(jù)位全部完畢后,置 1中斷標志位Tl ,然后/SEND 信 號失效。接收:當檢測到起始位的負跳變時,則開始接收。接受時,定時控制
29、信號有2 種,一種是位檢測器采樣脈沖,它的頻率是 RX 時鐘的 16 倍。也就是在 1 位數(shù)據(jù)期間,有 16 個采樣脈沖,以波特率的 16 倍的速率采樣 RXD 引腳狀態(tài),當采樣到 RXD 端從 1 到 0 的 跳變時就啟動檢測器,接收的值是 3 次連續(xù)采樣,取其中 2 次相同的值,以確認是否是真 正的起始位的開始,這樣能較好地消除干擾引起的影響,以保證可靠無誤的開始接受數(shù)據(jù)。61 、 幀格式為 1 個起始位, 8 個數(shù)據(jù)位和 1 個停止位的異步串行通信方式是方式( 1 )。62 、 串行口有幾種工作方式?有幾種幀格式?各種工作方式的波特率如何確定?答: 串行口有 3 種工作方式:方式 0 、
30、方式 1 、方式 2 、方式 3 ;有 3 種幀格式,方式 2 和 3 具有相同的幀格式;方式 0 的發(fā)送和接收都以 fosc/12 為固定波特率,方式1的波特率=2SMOD/32×定時器T1的溢出率方式 2 的波特率 =2SMOD/64× fosc方式3的波特率=2SMOD/32×定時器T1的溢出率63 、 假定串行口串行發(fā)送的字符格式為 1 個起始位, 8 個數(shù)據(jù)位, 1 個奇校驗位, 1 個停 止位,請畫出傳送字符“ A”的幀格式。答: 起始位 01000000 校驗位 停止位64 、 判斷下列說法是否正確:(1 ) 串行口通信的第 9 數(shù)據(jù)位的功能可由用戶
31、定義。 (對)(2)發(fā)送數(shù)據(jù)的第 9 數(shù)據(jù)位的內容在 SCON 寄存器的 TB8 位預先準備好的。 (對)(3)串行通訊發(fā)送時,指令把 TB8 位的狀態(tài)送入發(fā)送 SBUF 。(錯)(4)串行通訊接收到的第 9 位數(shù)據(jù)送 SCON 寄存器的 RB8 中保存。(對)(5)串行口方式 1 的波特率是可變的,通過定時器 /計數(shù)器 T1 的溢出設定。 (對)65 、通過串行口發(fā)送或接收數(shù)據(jù)時,在程序中應使用:(選( 3) )(1 )MOVC 指令 (2)MOVX 指令 (3)MOV 指令 (4)XCHD 指令66 、為什么定時器 /計數(shù)器 T1 用做串行口波特率發(fā)生器時, 采用方式 2?若已知時鐘頻率、
32、 通訊波特率,如何計算其初值?解答: 因為定時器 / 計數(shù)器在方式 2 下,初值可以自動重裝,這樣在做串口波特率發(fā)生器設 置時,就避免了重裝參數(shù)的操作。已知時鐘頻率、通訊波特率,根據(jù)公式: ,計算出初值。67 、串行口工作方式 1 的波特率是:( 3 )1)固定的,為 。2)固定的,為 。3)可變的,通過定時器 /計數(shù)器 T1 的溢出率設定。4)固定的,為 。68 、在串行通訊中,收發(fā)雙方對波特率的設定應該是( 相等 )的。69 、若晶體振蕩器為 11.0592MHz ,串行口工作于方式 1,波特率為 4800b/s ,寫出用 T1 作為波特率發(fā)生器的方式控制字和計數(shù)初值。解答: 初值計算:查
33、閱 P148 表 7-2 可得, FAH控制字: ANL TMOD,#0F0HORL TMOD,#20HMOV TH1,#0FAHMOV TL1,#0FAHMOV SCON,#40H70 、簡述利用串行口進行多機通訊的原理。解答: 參考 P146 頁。71 、使用 8031 的串行口按工作方式 1 進行串行數(shù)據(jù)通訊,假定波特率為 2400b/s ,以中 斷方式傳送數(shù)據(jù),請編寫全雙工通訊程序。解答:自己解答72 、使用 8031 的串行口按工作方式 3 進行串行數(shù)據(jù)通訊,假定波特率為 1200b/s ,第 9 數(shù)據(jù)位作奇偶校驗位,以中斷方式傳送數(shù)據(jù),請編寫通訊程序。解答:自己解答73 、某 80
34、31 串行口,傳送數(shù)據(jù)的幀格式為 1 個起始位( 0), 7 個數(shù)據(jù)位, 1 個偶校驗位 和 1 個停止位( 1 )組成。當該串行口每分鐘傳送 1800 個字符時,試計算出波特率。 解答: 串口每秒鐘傳送的字符為: 1800/60=30 個字符 / 秒所以波特率為:30個字符/秒× 10位/個字符=300bs74、為什么 MCS-51 串行口的方式 0 幀格式沒有起始位( 0)和停止位( 1)? 解答: 串行口的方式 0 為同步移位寄存器輸入輸出方式,常用于外接移位寄存器,以擴展 并行 IO 口,一般不用于兩個 MCS-51 之間的串行通信。 該方式以 fosc12 的固定波特率 從
35、低為位到高位發(fā)送或接受數(shù)據(jù)。75 、 單片機存儲器的主要功能是 存儲(程序)和(數(shù)據(jù)) 。76 、試編寫一個程序 (例如將 05H 和 06H 拼為 56H ),設原始數(shù)據(jù)放在片外數(shù)據(jù)區(qū) 2001H 單元和 2002H 單元中,按順序拼裝后的單字節(jié)數(shù)放入 2002H 。解: 本題主要考察了對外部存儲器的讀、寫操作,同學們只要記住正確使用 MOVX 指令就 可以了。編程思路:首先讀取 2001H 的值,保存在寄存器 A 中,將寄存器 A 的高四位和 低四位互換,再屏蔽掉低四位然后將寄存器 A 的值保存到 30H 中,然后再讀取 2002H 的 值,保存在寄存器 A 中,屏蔽掉高四位,然后將寄存器
36、 A 的值與 30H 進行或運算,將運算 后的結果保存在 2002H 中。ORG 0000HMAIN : MOV DPTR ,#2001H ;設置數(shù)據(jù)指針的初值MOVX A , DPTR ;讀取 2001H 的值SWAP AANL A ,#0F0H ;屏蔽掉低四位MOV 30H , A ;保存 AINC DPTR ;指針指向下一個MOVX A , DPTR ;讀取 2002H 的值ANL A ,#0FH ;屏蔽掉高四位ORL A , 30H ;進行拼裝MOVX DPTR , A ;保存到 2002HEND77 、 假設外部數(shù)據(jù)存儲器 2000H 單元的內容為 80H ,執(zhí)行下列指令后:MOV
37、P2 , #20HMOV R0 , #00HMOVX A , R0累加器 A 中的內容為( 80H )。78 、 編寫程序,將外部數(shù)據(jù)存儲器中的4000H 40FFH 單元全部清零。解: 本題主要考察了對外部數(shù)據(jù)塊的寫操作;編程時只要注意循環(huán)次數(shù)和 MOVX 指令的使 用就可以了。ORG 0000HMAIN : MOV A , #0 ;送預置數(shù)給 AMOV R0 , #0FFH ;設置循環(huán)次數(shù)MOV DPTR , #4000H ;設置數(shù)據(jù)指針的初值LOOP : MOVX DPTR , A ;當前單元清零INC DPTR ;指向下一個單元DJNZ R0 , LOOP ;是否結束END79、在MC
38、S-51單片機系統(tǒng)中,外接程序存儲器和數(shù)據(jù)存儲器共16位地址線和8位數(shù)據(jù)線,為何不會發(fā)生沖突?解: 因為控制信號線的不同:外擴的 RAM 芯片既能讀出又能寫入,所以通常都有讀寫控制引腳,記為 OE 和 WE 。外擴 RAM 的讀、寫控制引腳分別與 MCS-51 的 RD 和 WR 引腳相連。外擴的 EPROM 在正常使用中只能讀出,不能寫入,故 EPROM 芯片沒有寫入控制引腳, 只有讀出引腳,記為 OE ,該引腳與 MCS-51 單片機的 PSEN 相連。80、區(qū)分MCS-51單片機片外程序存儲器和片外數(shù)據(jù)存儲器的最可靠的方法是:(3 , 4 )( 1 )看其位于地址范圍的低端還是高段(2)
39、看其離 MCS-51 芯片的遠近(3)看其芯片的型號是 ROM 還是 RAM( 4 )看其是與 RD 信號連接還是與 PSEN 信號連接81 、 在存儲器擴展中,無論是線選法還是譯碼法,最終都是為了 擴展芯片的(片選)端提 供信號。82 、 請寫出圖 8-18 中 4 片程序存儲器 27128 各自所占的地址空間。解:圖中采用了譯碼法。 4 片地址分別為 0000H-3FFFH、 4000H-7FFFH、 8000H-BFFFH 、C000H-FFFFH 。83 、 起止范圍為 0000H-3FFFH 的存儲器的容量是( 16) KB 。 解:本題屬于常識題,在第十一題時將有解答。84 、 在
40、 MCS-51 中, PC 和 DPTR 都用于提供地址,但 PC 是為了訪問(程序)存儲器提 供地址,而 DPTR 是為訪問(數(shù)據(jù))存儲器提供地址。85 、 11 根地址線可選( 2KB )個存儲單元, 16KB 存儲單元需要( 14 )根地址線。解: 通過總結所學知識,我們得到以下幾個信息: 2KB 的存儲器需要 11 根地址線,地址 為 0000H-07FFH;4KB 的存儲器需要 12 根地址線,地址為 0000H-0FFFH;8KB 的存儲器需要 13 根地址線, 地址為 0000H-1FFFH;16KB 的存儲器需要 14 根地址線,地址為 0000H-3FFFH;32KB 的存儲
41、器需要 15 根地址線,地址為 0000H-7FFFH;64KB 的存儲器需要 16 根地址線, 地址為 0000H-FFFFH (以上存儲器的首地址均默認為 0000H )。86 、 32KB RAM 存儲器的首地址若為 2000H ,則末地址為( 9FFF ) H。解: 由上題總結得出, 32KB RAM 存儲器的大小為 0000H-7FFFH ,所以只要在后面加上 2000H 即得到正確答案。87 、 I/O 接口和 I/O 端口有什么區(qū)別? I/O 接口的功能是什么?解: I/O 端口簡稱 I/O 口,常指 I/O 接口電路中具有端口地址的寄存器或緩沖器。 I/O 接 口是指單片機與外
42、設間的 I/O 接口芯片。I/O 接口功能:一 .實現(xiàn)和不同外設的速度匹配;二.輸出數(shù)據(jù)緩存;三 .輸入數(shù)據(jù)三態(tài)緩沖。88 、常用的 I/O 接口編址有哪兩種方式?它們各有什么特點? MCS-51 的 I/O 端口編址采 用的是哪種方式?解: 一 .獨立編址方式:獨立編址方式就是I/O 地址空間和存儲器地址空間分開編址。獨立編址的優(yōu)點是 I/O 地址空間和存儲器地址空間相互獨立,界限分明。但是,卻需要設置一 套專門的讀寫 I/O 的指令和控制信號。 二.統(tǒng)一編址方式: 這種編址方式是把 I/O 端口的寄 存器與數(shù)據(jù)存儲器單元同等對待,統(tǒng)一進行編址。統(tǒng)一編址的優(yōu)點是不需要專門的I/O 指令,直接
43、使用訪問數(shù)據(jù)存儲器的指令進行 I/O 操作,簡單、方便且功能強大。 MCS-51 單 片機使用的是 I/O 和外部數(shù)據(jù)存儲器 RAM 統(tǒng)一編址的方式。89 、 I/O 數(shù)據(jù)傳送有哪幾種傳送方式?分別在哪些場合下使用?解: 一 .同步傳送方式:同步傳送又稱為有條件傳送。當外設速度可與單片機速度相比擬時, 常常采用同步傳送方式,最典型的同步傳送就是單片機和外部數(shù)據(jù)存儲器之間的數(shù)據(jù)傳送。二 . 查詢傳送方式:查詢傳送方式又稱為有條件傳送,也稱異步傳送。單片機通過查詢得知外設準備好后, 再進行數(shù)據(jù)傳送。 異步傳送的優(yōu)點是通用性好, 硬件連線和查詢程序十分簡 單,但是效率不高。為了提高單片機的工作效率,
44、通常采用中斷方式。三. 中斷傳送方式:中斷傳送方式是利用 MCS-51 本身的中斷功能和 I/O 接口的中斷功能來實現(xiàn) I./O 數(shù)據(jù)的 傳送。 單片機只有在外設準備好后, 發(fā)出數(shù)據(jù)傳送請求, 才中斷主程序,而進入與外設進行 數(shù)據(jù)傳送的中斷服務程序, 進行數(shù)據(jù)的傳送。 中斷服務完成后又返回主程序繼續(xù)執(zhí)行。 因此, 采用中斷方式可以大大提高單片機的工作效率。90 、編寫程序,采用 8255A 的 C 口按位置位 / 復位控制字,將 PC7 置 0,PC4 置 1,(已 知 8255A 各端口的地址為 7FFCH-7FFFH )。解:本題主要考察對 8255A 的 C 口的操作。其方式控制字的高位
45、為 0 時,低四位對 C 口 進行置位。由題目我們得到了方式控制字的地址為 7FFFH 。ORG 0000HMAIN: MOV DPTR,#7FFFH ; 控制字寄存器地址送 DPTRMOV A,#0EH ; 將 PC7 置 0MOVX DPTR,AMOV A,#09H ; 將 PC4 置 1MOVX DPTR,AEND91 、 8255A 的方式控制字和 C 口按位置位 / 復位控制字都可以寫入 8255A 的同一控制寄 存器, 8255A 是如何區(qū)分這兩個控制字的?解: 8255A 通過它們的最高位來進行判斷,最高位為 1 時,這時 8255A 認為這是方式控 制字,否則認為是 C 口按位
46、置位 / 復位控制字92 、 8155H 的端口都有哪些?哪些引腳決定端口的地址?引腳TIMERIN 和 TIMEROUT的作用是什么?解: 8155H 的端口有以下幾種:命令 / 狀態(tài)寄存器、 A 口、 B 口、 C 口、計數(shù)器和 RAM 單 元。引腳 IO/M 、A2 、A1 、A0 決定端口地址。 TIMERIN 是計數(shù)器輸入線,輸入的脈沖上 跳沿用于對 8155H 片內的 14 位計數(shù)器減一。 TIMEROUT 為計數(shù)器輸入線。 當 14 位計數(shù) 器減為 0 時就可以在該引線上輸出脈沖或方波,輸出的信號的形狀與所選的計數(shù)器工作方 式有關。93 、 判斷下列說法是否正確,為什么?(1 )
47、由于 8155H 不具有地址鎖存功能, 因此在與 8031 的接口電路中必須加地址鎖存器。 (2)在 8155H 芯片中,決定端口和 RAM 單元編址的信號線是 AD7-AD0 和 WR 。 (3 )8255A 具有三態(tài)緩沖器,因此可以直接掛在系統(tǒng)的數(shù)據(jù)總線上。(4 )8255A 的 B 口可以設置成方式 2。解:(1 )8155H 具有地址鎖存功能;(2)引腳 IO/M 、A2 、A1、A0 決定端口地址和 RAM 單元編址;(3 )8255A 不具有三態(tài)緩沖器;(4 )8255A 的 B 口只可以設置成方式 0 和方式 1。94 、 現(xiàn)有一片 8031 ,擴展了一片 8255A ,若把 8
48、255A 的 B 口用做輸入, B 口的每一位 接一個開關, A 口用作輸出,每一位接一個發(fā)光二極管,請畫出電路原理圖,并編寫出 B 口某一位接高電平時, A 口相應位發(fā)光二極管被點亮的程序。解: 由于電路圖比較簡單,在這里就畫了,大家可以參考圖 9-10 ,A 口每一位接二極管的 正極, 二極管的負極接低。 B 口每一位接一開關, 開關直接接地。 這樣我們只需要將讀到的 B 口的值送給 A 口就可以滿足題目要求了。ORG 0000HMIAN : MOV A , #10000010B ; A 口出, B 口入MOV DPTR , #0FF7FH ;控制地址送 DPTRMoVX DPTR , A
49、 ;送方式控制字MOV DPTR , #0FF7DH ;B 口地址送 DPTRMOVX A , DPTR ;讀開關信息MOV DPTR , #0FF7CH ; A 口地址送 DPTRMOVX DPTR , A ;將信息反潰到二極管END95 、假設 8155H 的 TIMERIN 引腳輸入的頻率為 4MHz ?問 8155H 的最大定時時間是多 少?解: 8155H 記數(shù)器的初值范圍是: 3FFFH-2H 。當頻率為 4MHz ,初值為 3FFFH 時,最 大定時時間為: 16383/4E+6=0.00409575S96 、MCS-51 的并行接口的擴展有多種方式, 在什么情況下, 采用擴展
50、8155H 比較合適? 什么情況下,采用擴展 8255A 比較適合?解: 8255A 具有 3 個8 位的并行 I/O 口, 3 種工作方式,可通過編程改變其功能,因而使 用靈活方便,通用性強,可作為單片機與多種外圍設備連接時的中間接口電路。 8155H 芯 片內包含有 256B 的 RAM 存儲器(靜態(tài)) , 2 個可編程的八位并行口 PA 和 PB , 1 個可編 程的6位并行口 PC,以及1個14位減法定時器/計數(shù)器。所以它經常用于單片機的外圍 接口芯片。97 、假設 8155H 的 TIMERIN 引腳輸入的脈沖頻率為 1MHz ,請編寫出在 8155H 的 TIMEROUT 引腳上輸
51、出周期為 10ms 的方波的程序。解:將 1MHz 的脈沖改變?yōu)?10ms 的方波,這就讓我們想到了在數(shù)字電路里面學到的分頻 器。計算得出分頻前后頻率之比為 10000:1 ,這樣我們只要將定時器初值設置為 64H 就可 以了。(假設 I/O 口地址為 7F00H-7F05H)START : MOV DPTR , #7F04H ;指針指向定時器低 8 位MOV A , #64H ;送初值給 AMOVX DPTR , A ;初值送給低8位INC DPTR ;指向高 8 位MOV A ,#40H ;定時器方波輸出MOVX DPTE , AMOV DPTR ,#7F00H ;指向命令 /狀態(tài)口MOV A ,#0C2H ;設定控制字MOVX DPTE , A ;啟動定時器END98 、為什么要消除按鍵的機械抖動?消除按鍵的機械抖動的方法有哪幾種?原理是什么? 解:在按鍵的閉合和斷開過程中,由于開關的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度員工自愿離職后創(chuàng)業(yè)投資引導與支持協(xié)議
- 二零二五年度高空作業(yè)安全責任協(xié)議書(高空設備安裝與調試)
- 2025年度貸款合同簽訂流程與電子簽章技術應用指南
- 二零二五年度環(huán)保設備維護個人勞務用工合同
- 高考志愿填報與院校溝通2025年度合同
- 2025年度水上樂園綜合運營管理服務合同
- 中醫(yī)師承關系合同書(2025年度中醫(yī)理論教學)
- 二零二五年度物流倉儲配送一體化承包合同
- 2025年度綠色建筑認證與設計合同
- 多重耐藥菌的防控
- 部編版八年級道德與法治下冊2.1《堅持依憲治國》精美教案
- 智能倉儲物流系統(tǒng)開發(fā)合同
- 增加經營范圍怎么寫申請書范文
- 循環(huán)伏安法 課件
- 人教版數(shù)學四年級下冊核心素養(yǎng)目標全冊教學設計
- 興業(yè)銀行個人流水對賬單模板
- GB/T 44114-2024電化學儲能系統(tǒng)接入低壓配電網運行控制規(guī)范
- 冀教版五年級數(shù)學下冊全冊課件【完整版】
- 2023年12月16日基金從業(yè)《證券投資基金》真題卷(67題)
- 2024年連云港專業(yè)技術人員繼續(xù)教育《飲食、運動和健康的關系》92分(試卷)
- 人教版小學數(shù)學四年級下冊全冊同步練習(含答案)
評論
0/150
提交評論