單片機原理與應用趙德安習題答案_第1頁
單片機原理與應用趙德安習題答案_第2頁
單片機原理與應用趙德安習題答案_第3頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、第一章習題2. 根據(jù)程序存儲器的差異,單片機可以分為哪幾種類型?答:MCS-51系列單片機按片內不同程序存儲器的配置來分,可以分為以下3 種類型: 片內帶 Mask ROM掩膜 ROM型:8051、80C51、8052、80C52。此類芯 片是由半導體廠家在芯片生產過程中, 將用戶的應用程序代碼通過掩膜工藝制作 到ROM中。其應用程序只能委托半導體廠家“寫入,一旦寫入后不能修改。 此類單片機適合大批量使用。 片內帶 EPROM 型: 8751、 87C51、 8752。此類芯片帶有透明窗口,可通 過紫外線擦除存儲器中的程序代碼, 應用程序可通過專門的編程器寫入到單片機 中,需要更改時可擦除重新

2、寫入。此類單片機價格較貴,不宜于大批量使用。 片內無ROMROMLess型:8031、80C31、8032。此類芯片的片內沒有程 序存儲器, 使用時必須在外部并行擴展程序存儲器存儲芯片。 此類單片機由于必 須在外部并行擴展程序存儲器存儲芯片,造成系統(tǒng)電路復雜,目前較少使用。3. 單片機的主要特點是什么?它適宜構成通用微機系統(tǒng)還是專用微機系 統(tǒng)?為什么?答:單片機是一種集成電路芯片, 是采用超大規(guī)模集成電路技術把具有數(shù)據(jù) 處理能力的中央處理器 CPU、隨機存儲器RAM、只讀存儲器ROM、多種I/O 口 和中斷系統(tǒng)、定時器 /計時器等功能可能還包括顯示驅動電路、脈寬調制電路、 模擬多路轉換器、 A

3、/D 轉換器等電路 集成到一塊硅片上構成的一個小而完善的 計算機系統(tǒng)。其主要特點如下:1、價格廉價。 10元以內計算機。2、功能不大。只能專用在適用的領域。但在適用的領域中,性價比卻是最佳。3、可靠性高,抗干擾能力強。4、功耗比較低。對電源要求低。適用面廣。5、外圍擴展能力強??梢詰玫讲煌目刂葡到y(tǒng)中。 根據(jù)其特點可知,單片機功能不大,適宜構成專用微機系統(tǒng)。4. 研制微機應用系統(tǒng)時,應如何選擇單片機的型號?答:在單片機應用研究系統(tǒng)開發(fā)中, 單片機是整個設計的核心。 設計者需要 為單片機安排適宜的外部器件, 同時還需要設計整個控制軟件, 因此選擇適宜的 單片機型號很重要。 目前,市場上的單片機

4、種類繁多, 在進行正式的單片機應用 研究系統(tǒng)開發(fā)之前,需要根據(jù)不同單片機的特性,從中作出合理的選擇。 所以 在單片機選型時,主要需要注意以下幾點:1. 仔細調查市場,盡量選用主流的、貨源充足的單片機型號,這些器件使用 比較廣泛,有許多設計資料供學習或參考。2. 盡量選擇所需硬件集成在單片機內部的型號, 例如 ADC 、DAC 、I2C、SPI 和 USB 等。這樣便于整個控制系統(tǒng)的軟件管理,減少外部硬件的投入,縮小整 體電路板的面積,從而減少總體投資等。3. 對于手持設備,移動設備或者其他需要低功耗的設備,盡量選擇低電壓、 低功耗的單片機型號,這樣可以減少能量的消耗,延長設備的使用壽命。4.

5、在資金等條件允許的情況下,盡量選擇功能豐富,擴展能力強的單片機, 這樣便于以后的功能升級和擴展。5. 對于體積有限制的產品,盡量選擇貼片封裝的單片機型號,這樣可以減少 電路板面積,從而降低硬件本錢,同時也有助于電磁兼容設計。第二章1、分別寫出一個MCS-51中ROM、EPROM、無ROM型單片機的型號和 內部資源。其中哪個產品內部具有固化的軟件?該軟件能否被所有用戶所使 用?怎樣使用該種產品?答:片內帶 Mask ROM掩膜 ROM型:8051、80C51、8052、80C52。此 類芯片是由半導體廠家在芯片生產過程中, 將用戶的應用程序代碼通過掩膜工藝 制作到 ROM 中。其應用程序只能委托

6、半導體廠家“寫入 ,一旦寫入后不能修 改。片內帶 EPROM 型: 8751、 87C51、 8752。此類芯片帶有透明窗口,可通 過紫外線擦除存儲器中的程序代碼, 應用程序可通過專門的編程器寫入到單片機 中,需要更改時可擦除重新寫入。片內無ROM(ROMLess)型:8031、80C31、8032。此類芯片的片內沒有程序存儲器,使用時必須在外部并行擴展程序存儲器存儲芯片。MCS-51系列單片機分類表¥會&ramahi無hc'tM彗訐口袒汗口軍 ftK*H.|五孫LUi2SKA1STT-Sil4KRKB4垃I<MilXKJ!畑kUg1kit1皿i£其中

7、8051、80C51、8052、80C52等產品具有固化軟件,該軟件不能被所有用戶所使用,應用程序只能委托半導體廠家“寫入,3.什么是堆棧? 8032的堆棧區(qū)可以設在什么地方? 一般應設在什么區(qū)域 ?如 何實現(xiàn)?試舉例說明。答:堆棧是在片內RAM中專門開辟出來的一個區(qū)域,數(shù)據(jù)的存取是以 "后 進先出"的結構方式處理的。實質上,堆棧就是一個按照 "后進先出"原那么組織的 一段內存區(qū)域。8032的堆棧區(qū)原那么上可以設在內部 RAM中的00H-FFH的任意區(qū)域內,一 般應設在30H-7FH的范圍內。通過賦值的方式實現(xiàn),如:MOV SP, #60H。4.8031

8、的內部RAM中,哪些可以作為數(shù)據(jù)緩沖區(qū)?在8031內部RAM 中 工作存放器區(qū) 00H1FH和位尋址區(qū) 20H2FH 可 以作為數(shù)據(jù)緩沖區(qū)。6. MCS-51單片機構成系統(tǒng)時,程序存儲器的容量最大是多少?答:MCS-51單片機構成系統(tǒng)時,程序存儲器的容量最大是64KB。7. 當單片機系統(tǒng)的程序存儲器的容量為 8KB時,程序存儲器的開始地址為 多少?答:單片機內部無 ROM時,EA/=0時,只訪問外部 ROMROM為外部 ROM,開始地址為 0000H-仆FFH, 8KB=213=8192D=2000H,故,地址為 2000H-仁1FFFH。單片機內部有ROM,一般為4KB,地址范圍為0000H

9、-0FFFH,外部ROM的開 始地址為 1000H-1FFFH。 EA/=1 時9. 當單片機系統(tǒng)外部數(shù)據(jù)存儲器的容量為8KB時,數(shù)據(jù)存儲器的開始地址一定要是0000H嗎?答:不一定,只有是間隔 仆FFH個字節(jié),都可以.第三章1. 指出以下指令中劃線操作數(shù)的尋址方式和指令的操作功能MOV A, #78H ;立即尋址,將立即數(shù)送入累加器 AMOV A, 78H;直接尋址,將內部 RAM 78H單元內容送累加器 AMOV A, R6 ;存放器尋址,將R6內容送累加器AINC R0;存放器間接尋址,將指針 R0指向的內部RAM單元內容加1PUSH ACC;存放器尋址,將累加器 A的內容入棧RL A

10、;存放器尋址,將累加器A的內容左移1位CPL 30H;位尋址,將位變量30H的內容取反SJMP相對尋址,死循環(huán)指令MOVC A, A+PC ;基存放器加變址存放器間接尋址,程序存儲器 PC和累加器 A中內容相加, 送到累加器A2. 指出以下指令中哪些是非法的?DEC DPTR DEC DPLMOV A, R2 MOV A, R1MOV R1, R0 MOV A, R0MOV P1.1,30H MOV P1.1, C 或者 MOV C, 30HMOV #30H, A MOV A, #30HMOV OV, 30H MOV PSW.7, CMOV A, A+DPTR MOVC A, A+DPTRRR

11、C 30H RRC A所有的移位指令均是對累積器 A進行的。RL B RL AXRL C, 30H錯,因為位操作指令中,沒有位的異或運算3. 如何將1個立即數(shù)30H送入內部RAM 90H單元?如何將立即數(shù)送特殊功能存放器P1? MOV R0, #90HMOV R0, #30H 能不能直接 MOV 90H, #30H?不能,因為內部 RAM的高128字節(jié)只能用存放器間接尋址。 MOV P1, #30H4.執(zhí)行以下一段程序后,試分析有關單元內容MOV PSW, #0;PSW=00HMOV R0,#30H;(R0)=30HMOV 30H, #40H(30H)=40HMOV 40H, #50(40H)

12、=50HMOV A, R0(A)=40HADDC A, #0CEH(A)=40H+0CEH+0=0EHPSW=10000101B=85HINC R0(R0)=31H執(zhí)行結果:(R0)=31H, (30H)=40H, (40H)=50, (A)=0EH, (PSW)=85HPSW.7 PSW,6 PSW.5 PSW4 PSW3 PSW.2 IPSW1 PSW.OCyACF0RSIRSOOVP這里特別注意OV的值。在帶符號數(shù)的加減運算中,OV=1表示加減運算超出了 累積器A所能表示的有符號數(shù)范圍(-128-+127),即產生了溢出,因此運算結果 是錯誤的;反之,OV=0表示運算結果正確,即無溢出產

13、生。 OV=CY和CY1 的異或。其中CY1為第六位向第七位是否有進位或借位, 有,為CY仁1,沒有,CY1=0 0執(zhí)行加法ADD時,當位6向位7進位,而位7不向C進位時,OV=1?;蛘呶?6不向位7進位,而位7向C進位時,同樣OV=1。5. 試編寫一段程序,內部 RAM 40H、41H單元內容傳送到外部 RAM 2000H、 2001H 單元中。MOV DPTR, #2000HMOV R0,#40HMOV A, R0MOVX DPTR, AINC R0INC DPTRMOV A, R0MOVX DPTR, A6試編寫一段程序,根據(jù)累加器 A的內容,到程序存儲器1000H起始的表格中 取一雙字

14、節(jié)數(shù),送內部 RAM 50H 、 51H 單元。MOV DPTR, #1000HPUSH ACCMOVC A, A+DPTRMOV 50H, APOP ACCINC DPTRMOVC A, A+DPTRMOV 51H, A7.試編寫一段程序,進行兩個16位數(shù)的相減運算:6483H-56E2H。結果高8位 存在內部RAM 40H ,低 8 位存 41H。CLR CMOV A, #83HSUBB A, #0E2HMOV 41H, AMOV A, #64HSUBB A, #56HMOV 40H, A8試編寫一段程序,將30H、31H單元中存放的BCD數(shù),壓縮成一個字節(jié)原 30H 單元內容為高位,并放

15、入 30H 單元。MOV A, 30HSWAP AORL A, 31H9. 試編寫一段程序,將 30H32H 單元中的壓縮 BCD 拆成 6個單字節(jié) BCD 數(shù), 并放入33H38H 單元。MOV SP, #60HMOV A, 30HMOV R0, #33HACALL H2ASCMOV A, 31HACALL H2ASCMOV A, 32HACALL H2ASCSJMP $H2ASC: MOV B, AANL A, #0FHMOV R0, AINC R0MOV A, BSWAP AANL A, #0FHMOV R0, AINC R0RET10. 設晶振頻率為 6MHz ,試編寫一個延時 1ms

16、 的子程序,并利用該子程序, 編 寫一段主程序,在P1.0引腳上輸出高電平寬2ms、低電平寬1ms的方波信號。MOV SP, #60HLOOP:SETB P1.0ACALL DELAYACALL DELAYCLR P1.0ACALL DELAYSJMP LOOPDELAY:MOV R0,#248; 1TDJNZ R0,$;2TNOP;1TRET2T延時計算: 1T+248*2T+1T+2T=500T=1ms第四章5.晶振為12MHz ,用 T0產生 1ms 的定時,可以選擇哪幾種方式?分別寫出定時器的方式字和計數(shù)初值。如需要 1s 的定時,應如何實現(xiàn)?答:由于定時器工作在方式2和方式3下時的最

17、大定時時間只有0.256ms,因此 要想獲得1ms的定時時間,定時器必須工作在方式 0或方式1。機器周期為T計數(shù)=12X 1/12X 10-6s=1 s假設采用方式0,定時器的方式字TMOD為:00H,根據(jù)公式可得定時器的計 數(shù)初值為:TC= MT/ T 計數(shù)=213 1*103/1=7192=1C18H即:TH0應裝# 0E0H; TL0應裝#18H 高三位為0假設采用方式1,定時器的方式字TMOD為:01H,根據(jù)公式可得定時器的計 數(shù)初值為:TC= M T/ T 計數(shù)=216 1*103/1=64536=FC18H即:THO 應裝# OFCH; TLO 應裝 #18H如需要1s的定時,可以

18、采用循環(huán)定時,增加循環(huán)次數(shù)。AtV第五章1假設晶振為6MHz,試編寫一個2ms延時子程序。DELAY: MOV RO,#498; 1TDJNZ RO,$; 2TNOP;1TRET2T 延時計算: 1T+498*2T+1T+2T=1OOOT=2ms6. 試設計一個 n 字節(jié)的無符號卜進制數(shù)加法子程序, 其功能為將R0和R1指出的內部 RAM 中兩個 n 字節(jié)壓縮BCD 碼無符號十進制數(shù)相加,結果存放于被加數(shù)單元中。子程序入口時, RO,R1 分別指向被加數(shù)和加數(shù)的低位字節(jié),字節(jié)數(shù) n存于R2,出口時R0指向和的最高位字節(jié),CY為進位位。LEN EQU 3OORG OOOOHAJMP MAINORG OO3OHMAIN : MOV SP. #6OHMOV R2, #LENACALL ADD_NBYTESJMP $ADD_NBYTE : CLR CLOOP: MOV A, ROADDC A, R1DA AMOV RO, AINC ROINC R1DJNZ R2, LOOPRETEND11試設計一個子程序,其功能為將R0

溫馨提示

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

評論

0/150

提交評論