c51單片機復習題簡答題_第1頁
c51單片機復習題簡答題_第2頁
c51單片機復習題簡答題_第3頁
c51單片機復習題簡答題_第4頁
c51單片機復習題簡答題_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、一、問答題1簡述C51語言和匯編語言的比較使用C51語言進行嵌入式系統(tǒng)的開發(fā),有著匯編語言所不可比擬的優(yōu)勢: 編程調試靈活方便; 生成的代碼編譯效率高; 模塊化開發(fā); 可移植性好; 便于項目的維護;2簡述單片機的C語言的特點單片機的C語言的特點主要體現(xiàn)在以下幾個方面: 無需了解機器硬件及其指令系統(tǒng),只需初步了解MCS-51的存儲器結構; C51能方便的管理內部寄存器的分配、不同存儲器的尋址和數(shù)據類型等細節(jié)問題,但對硬件控制有限;而匯編語言可以完全控制硬件資源; C51在小應用程序中,產生的代碼量大,執(zhí)行速度慢;但在較大的程序中代碼效率高; C51程序由若干函數(shù)組成,具有良好的模塊化結構,便于改

2、進和擴充; = 5 * GB3 C51程序具有良好的可讀性和可維護性;而匯編語言在大應用程序開發(fā)中,開發(fā)難度增加,可讀性差; = 6 * GB3 C51有豐富的庫函數(shù),可大大減少用戶的編程量,顯著縮短編程與調試時間,大大提高軟件開發(fā)效率; 使用匯編語言編制的程序,當機型改變時,無法直接移植使用,而C語言程序是面向用戶的程序設計語言,能在不同機型的機器上運行,可移植性好。3哪些變量類型是51單片機直接支持的? 答:C51編譯器支持的數(shù)據類型有:位型(bit)、無符號字符型(unsigned char)、有符號字符型(signed char)、無符號整型(unsigned int)、有符號整型(s

3、igned int)、無符號長整型(unsigned long)、有符號長整型(signed long)、浮點型(float)和指針型等。C51編譯器支持的數(shù)據類型、長度和值域如表1-1所示。表1-1 C51的數(shù)據類型數(shù)據類型長度/bit長度/byte值域bit10,1unsigned char810255signed char81-128127unsigned int162065 535signed int162-32 76832 767unsigned long32404 294 967 295signed long324-2 147 483 6482 147483 647float324

4、1176E-38340E+38(6位數(shù)字)double6481176E-38340E+38(10位數(shù)字)一般指針243存儲空間 065 5354簡述C51的數(shù)據存儲類型答:我們都知道,8051單片機存儲區(qū)可分為內部數(shù)據存儲區(qū)、外部數(shù)據存儲區(qū)以及程序存儲區(qū)。8051單片機內部的數(shù)據存儲區(qū)是可讀寫的,8051派生系列最多可有256字節(jié)的內部數(shù)據存儲區(qū),其中低128字節(jié)可直接尋址,高128字節(jié)(從0 x80到0 xFF)只能間接尋址,從20H開始的16字節(jié)可位尋址。內部數(shù)據區(qū)可分為3個不同的存儲類型:data、idata和bdata。外部數(shù)據區(qū)也是可讀寫的,訪問外部數(shù)據區(qū)比訪問內部數(shù)據區(qū)慢,因為外部

5、數(shù)據區(qū)是通過數(shù)據指針加載地址來間接訪問的。C51提供兩種不同的存儲類型xdata和pdata訪問外部數(shù)據。程序存儲區(qū)是只能讀不能寫。程序存儲區(qū)可能在8051單片機內部或者在外部或者內外都有,這由8051單片機的硬件決定。C51提供了code存儲類型來訪問程序存儲區(qū)。每個變量可以明確地分配到指定的存儲空間,對內部數(shù)據存儲器的訪問比對外部數(shù)據存儲器的訪問快許多,因此應當將頻繁使用的變量放在內部存儲器中,而把較少使用的變量放在外部存儲器中。各存儲區(qū)的簡單描述如表1-2所示。表1-2 C51存儲類型與8051存儲空間的對應關系存儲區(qū)描述DATA片內RAM的低128字節(jié),可在一個周期內直接尋址BDATA

6、片內RAM的位尋址區(qū),16字節(jié)IDATA片內RAM的256字節(jié),必須采用間接尋址XDATA外部數(shù)據存儲區(qū),使用DPTR間接尋址PDATA外部存儲區(qū)的256個字節(jié),通過P0口的地址對其尋址。使用MOVX Ri,需要兩個指令周期CODE程序存儲區(qū),使用DPTR尋址。以上介紹的是C51的數(shù)據存儲類型,C51存儲類型及其大小和值域如表1-3所示。表1-3 C51存儲類型及其大小和值域存儲類型長度/bit長度/byte值域data810255idata810255pdata810255code162065 535xdata162065 5355簡述C51對51單片機特殊功能寄存器的定義方法答:MCS-5

7、1通過其特殊功能寄存器(SFR)實現(xiàn)對其內部主要資源的控制。MCS-51單片機有21個SFR,有的單片機還有更多的SFR,它們分布在片內RAM的高128字節(jié)中,其地址能夠被8整除的SFR一般可以進行位尋址。關于MCS-51單片機的特殊功能寄存器參看附錄A。對SFR只能用直接尋址方式訪問。C51允許通過使用關鍵字sfr、sbit或直接引用編譯器提供的頭文件來實現(xiàn)對SFR的訪問。 (1)使用關鍵字定義sfr為了能直接訪問特殊功能寄存器SFR,C51提供了一種自主形式的定義方法。這種定義方法與標準的C語言不兼容,只適用于對8051系列單片機進行C編程。這種定義的方法是引入關鍵字“sfr”,語法如下:

8、sfr 特殊功能寄存器名字 = 特殊功能寄存器地址;如:sfr SCON=0 x98;/*串口控制寄存器地址98H*/sfr TMOD=0X89;/*定時器/計數(shù)器方式控制寄存器地址89H*/ (2)通過頭文件訪問SFR 8051系列單片機的寄存器數(shù)量與類型是極不相同的,因此對單片機特殊功能寄存器的訪問可以通過對頭文件的訪問來進行。 為了用戶處理方便,C51編譯器把MCS-51單片機的常用的特殊功能寄存器和特殊位進行了定義,放在一個“reg51.h”或“reg52.h”的頭文件中。當用戶要使用時,只需要在使用之前用一條預處理命令“#include ”把這個頭文件包含到程序中,然后就可以使用特殊

9、功能寄存器名和特殊位名稱了。用戶可以通過文本編輯器對頭文件進行增減。 (3)SFR中位定義在8051單片機的應用問題中,經常需要單獨訪問SFR中的位,C51的擴充功能使之成為可能,使用關鍵字“sbit”可以訪問位尋址對象。特殊位(sbit)的定義,像SFR一樣不與標準C兼容。與SFR定義一樣,用關鍵字“sbit”定義某些特殊位,并接受任何符號名,“=”號后將絕對地址賦給變量名。這種地址分配有三種方法:第一種方法:sbit 位名=特殊功能寄存器名位置;當特殊功能寄存器的地址為字節(jié)(8位)時,可使用這種方法。特殊功能寄存器名必須是已定義的SFR的名字?!啊焙蟮摹拔恢谩闭Z句定義了基地址上的特殊位的位

10、置。該位置必須是07的數(shù)。如:第二種方法:sbit 位名=字節(jié)地址位置;這種方法是以一個整常數(shù)為基地址,該值必須在0 x800 xFF之間,并能被8整除,確定位置的方法同上。第三種方法:sbit 位名=位地址;這種方法將位的絕對地址賦給變量,地址必須在0 x800 xFF之間。6C51 的data、bdata、idata 有什么區(qū)別? 答:data、bdata、idata是表明數(shù)據的存儲類型,data是指片內RAM的低128字節(jié),可在一個周期內直接尋址;bdata是指片內RAM的位尋址區(qū),16字節(jié);idata是指片內RAM的256字節(jié),必須采用間接尋址。7C51中的中斷函數(shù)和一般的函數(shù)有什么不

11、同? 答:C51編譯器允許用C51創(chuàng)建中斷服務函數(shù),中斷函數(shù)是由中斷系統(tǒng)自動調用的。中斷函數(shù)的定義格式為:函數(shù)類型 函數(shù)名 interrupt n using n其中:interrupt和using為關鍵字;interrupt后面的n 為中斷源的編號,即中斷號;using后面的n所選擇的寄存器組,取值范圍為03。定義中斷函數(shù)時,using是一個選項,可以省略不用。如果不用using選項,則由編譯器選擇一個寄存器組作為絕對寄存器組。8051的中斷過程通過使用interrupt關鍵字和中斷號(031)來實現(xiàn),中斷號告訴編譯器中斷函數(shù)的入口地址。8按照給定的數(shù)據類型和存儲類型,寫出下列變量的說明形式

12、(1)在data區(qū)定義字符變量val1答:char data vall;(2)在idata區(qū)定義整型變量val2 答:int idata val2;(3)在xdata區(qū)定義無符號字符型數(shù)組val34。答:unsigned xdata val34;(4)在xdata區(qū)定義一個指向char類型的指針px。答:char xdata *px;(5)定義可位尋址變量flag。答:bit flag;(6)定義特殊功能寄存器變量P3。答:Sfr P3=0 xB0;9什么是重入函數(shù)?重入函數(shù)一般什么情況下使用,使用時有哪些需要注意的地方?答: 多個函數(shù)可以同時使用的函數(shù),稱為重入函數(shù)。通常情況下,C51函數(shù)不

13、能被遞歸調用,也不能應用導致遞歸調用的結構。有此限制是由于函數(shù)參數(shù)和局部變量是存儲在固定的地址單元中。重入函數(shù)特性允許你聲明一個重入函數(shù)。即可以被遞歸調用的函數(shù)。重入函數(shù)可以被遞歸調用,也可以同時被兩個或更多的進程調用。重入函數(shù)在實時應用中及中斷服務程序代碼和非中斷程序代碼必須共用一個函數(shù)的場合中經常用到。10如何消除鍵盤的抖動? 答:由于按鍵是機械開關結構,所以當用手按下其中一個鍵時,往往會出現(xiàn)所按鍵在閉合位置和斷開位置之間發(fā)生跳幾下后才會穩(wěn)定到閉合狀態(tài)的情況。在釋放一個鍵時,也會出現(xiàn)類似的情況,這就是鍵的抖動,抖動的持續(xù)時間不一,但通常不會大于10ms。若抖動問題不解決,就會引起對閉合鍵的

14、多次讀入。對于鍵抖動最方便的解決方法就是當發(fā)現(xiàn)有鍵按下后,不是立即進行掃描,而是延時大約10ms后再進行。由于一個鍵按下的時間一般會持續(xù)上百毫秒,所以延遲10ms后再掃描處理并不遲。11在使用8051的定時器/計數(shù)器前,應對它進行初始化,其步驟是什么? 答: (1)確定T/C的工作方式編程TMOD寄存器; (2)計算T/C中的計數(shù)初值,并裝載到TH和TL; (3)T/C在中斷方式工作時,須開CPU中斷和源中斷編程IE寄存器; (4)啟動定時器/計數(shù)器編程TCON中TR1或TR0位。第1章 單片機硬件系統(tǒng)1. 什么是單片機、單片機系統(tǒng)、單片機應用系統(tǒng)?答:單片機:又名微控制器,是將微型計算機中的

15、中央處理器(CPU)、隨機存儲器(RAM)、只讀存儲器(ROM)及I/O口電路等主要部件,結合連接它們的總線集成在一塊芯片上,即它是一塊智能芯片。單片機系統(tǒng):單片機本身只是一塊芯片,它并不能集成計算機的全部電路,因此需要加上時鐘、復位電路等,才能構成單片機最小應用系統(tǒng);若最小系統(tǒng)資源不足時,還需擴展外圍電路和外圍芯片等,從而構成能滿足應用要求的單片機系統(tǒng)。單片機應用系統(tǒng):它是為實際的控制應用而設計的,該系統(tǒng)與控制對象結合在一起,是滿足嵌入式對象要求的全部電路系統(tǒng)。它在單片機的基礎上配置了前/后向通道接口電路、人機交互通道接口電路、串行通信接口等面向對象的接口電路。另單片機系統(tǒng)和單片機應用系統(tǒng)都

16、是軟硬件結合的系統(tǒng),缺一不可。2. 單片機有哪些特點?答:單片機的特點很多,主要是體積小品種多,價格便宜,可靠性高,使用靈活,還有(1)突出控制功能(2)ROM和RAM分開(3)單片機資源具有廣泛的通用性(4)易于擴展ROM、RAM、定時/計數(shù)器、中斷源等資源。3. 為什么說AT89C51單片機是MCS-51系列的兼容機?AT89C51單片機有何優(yōu)點?答: AT89系列單片機是將FLASH存儲器技術和MCS-51系列單片機的基本內核相結合的單片機,且管腳也與之兼容,可以直接代換,所以說AT89C51是MCS-51系列的兼容機。AT89C51單片機是AT89系列機的標準型單片機,它的優(yōu)點主要有:

17、內ROM是FLASH存儲器,已獲得廣泛應用的80C51兼容,采用靜態(tài)邏輯設計,操作頻率范圍寬,具有兩個軟件選擇的節(jié)電模式等。4. AT89C51單片機由哪些主要功能部件組成? 答:MCS-51系列89C51單片機由下列部分組成:1個8位CPU、128B的RAM、4K程序存儲器、18個特殊功能寄存器SFR、4個并行口、1個串行口、2個定時計數(shù)器和中斷系統(tǒng)等資源。補充: MCS-52系列單片機的內部資源有哪些?答:MCS-52系列單片機內部有:1個8位CPU、128B的RAM、8K程序存儲器、21個特殊功能寄存器SFR、4個并行口、1個串行口、3個定時計數(shù)器和中斷系統(tǒng)等資源。5. 簡述單片機應用研

18、發(fā)過程和研發(fā)工具(了解)。答:任務分析方案論證硬件設計軟件設計仿真調試實物制作與調試。研發(fā)工具:調試仿真軟件KEIL、在線仿真器、編程器或ISP下載器、PROTEUS仿真平臺、教學實驗板等。6. AT89C51單片機內部結構主要有哪些部件組成?它們的主要功能是什么?答:AT89C51單片機內部結構主要有:(1)中央處理器CPU,是單片機的核心,完成運算和控制功能;(2)內部數(shù)據存儲器(256字節(jié)),前面128個單元00H7FH存儲內部數(shù)據,后面128個單元80HFFH被專用寄存器占用,用來實現(xiàn)對片內各部件進行管理、控制、監(jiān)視;(3)程序計數(shù)器PC,是一個16位專用寄存器,其內容為下一條執(zhí)行指令

19、的地址;(4)Flash內部程序存儲器(4K),用于存儲程序、原始數(shù)據、表格等;(5)4個并行I/O口(8位),實現(xiàn)數(shù)據的并行輸入輸出;(6)串行通信口,實現(xiàn)單片機和其他數(shù)據設備之間的串行數(shù)據傳送;(7)2個定時器/計數(shù)器(16位),實現(xiàn)定時或計數(shù)功能;(8)中斷控制系統(tǒng),共5個中斷源,分高低兩個優(yōu)先級;(9)一個片內振蕩器和時鐘電路,為單片機產生時鐘脈沖序列;(10)總線,用于連接各個部件和單片機系統(tǒng)的擴展。7. 請將AT89C51的40個引腳按4類(電源、時鐘、控制和I/O引腳)分類。答:電源(2):Vss接地端,Vcc接DC正電源線;時鐘(2):XTAL1,XTAL2控制(4):RST復

20、位輸入,ALE/(/PROG)地址鎖存允許/編程脈沖,/PSEN外ROM讀選通信號,(/ES) / VPP內外ROM選擇/編程電源I/O引腳(32):P0P3并行8位I/O口8. AT89C51單片機引腳/EA、RST、ALE、/PSEN的功能是什么?答:/EA是片內外ROM選擇端,ROM的尋址范圍為64KB,而AT89C51內部只有4KB ROM,當不夠用時可在外擴展ROM。當/EA信號為低電平時,指訪問外部ROM;當/EA為高電平時,則先訪問內部ROM,當PC值超過4KB時自動轉向外部ROM中執(zhí)行。RST復位信號,當此引腳上的信號出現(xiàn)至少兩個機器周期的高電平將使單片機復位。ALE地址鎖存控

21、制信號,當系統(tǒng)擴展時,ALE用于控制把P0口輸出的低8位地址送入鎖存器存起來,以實現(xiàn)低位地址和數(shù)據的分時傳送。/PSEN外部ROM的讀選通信號,在訪問外部ROM時,每個機器周期兩次PSEN有效(低電平),但在此期間內,每當訪問外部數(shù)據存儲器時,這兩次有效的PSEN將不出現(xiàn)。8-(1)說明MCS-51單片機的外部引腳EA的作用?答:1、引腳EA為訪問內/外部程序存儲器控制信號。 引腳EA高電平時,對ROM的讀操作先從內部4KB開始,當?shù)刂贩秶?KB時自動切換到外部進行; 當引腳EA為低電平,對ROM 的讀操作限定在外部程序存儲器。9. (了解)什么是單片機的振蕩周期、狀態(tài)時鐘周期、機器周期和

22、指令周期?它們之間有什么關系?答: 單片機是按一定的時序進行工作的,而時序是通過XTAL1和XTAL2引腳跨接振蕩器與內部振蕩電路共同產生固定頻率的波形。我們把振蕩頻率的倒數(shù)稱振蕩周期。狀態(tài)時鐘周期是指單片機時鐘信號的周期,是振蕩周期的兩倍,又稱狀態(tài)周期。一個機器周期由6個狀態(tài)組成,即機器周期等于6個狀態(tài)時鐘周期或等于12個振蕩周期。指令周期是指單片機執(zhí)行一條指令所占用的時間,根據指令的不同,可包含有1、2、4等機器周期的倍數(shù)。10. 當AT89C51單片機外接晶振為4MHZ時,其振蕩周期、狀態(tài)時鐘周期、機器周期、指令周期的值各為多少?s,機器周期為3s,指令周期根據指令而不同可能是3s、6s

23、、12s等。11. MCS-51單片機擴展系統(tǒng)中,外部程序存儲器和數(shù)據存儲器共用16位地址線和8位數(shù)據線,擴展空間都為64KB,為什么兩個存儲空間不會發(fā)生沖突?答:MCS-51單片機是通過不同的信號來對片外數(shù)據存儲器和程序存儲器進行讀、寫的:片外數(shù)據存儲器的讀、寫:通過RD和WR信號和片選信號等來控制;程序存儲器的讀:通過PSEN信號控制。此外,通過用不同的命令(指令)來實現(xiàn)。12、什么是堆棧? 簡述單片機的堆棧處理過程。什么是堆棧指針寄存器SP?復位后SP值是多少?答: 堆棧是:按著“先進后出”的原則進行操作的一段片內數(shù)據存儲器區(qū)域。堆棧處理過程:數(shù)據存入棧時,SP指針先加1,再存入數(shù)據;數(shù)

24、據出棧時,先取數(shù)據,再把SP指針減1。堆棧指針SP就是指向堆棧區(qū)域的第一個存儲單元地址(也稱“棧頂”),向堆棧中每存一個數(shù),SP中的值就自動加1,每取一個數(shù)就自動減1,SP指針始終指向棧頂?shù)刂?。復位后,SP值SP=07H,這樣堆棧就要從08H開始,而08H屬于工作寄存器區(qū),若程序要用到這些寄存器組則要將SP設置大些,因此堆棧最好在內部的RAM(30H7FH)中開辟。13.(了解) AT89C51單片機的ROM空間中,這6個地址(0、03H、0BH、13H、1BH、23H)有什么特殊的意義和用途?用戶應怎樣合理安排?答:他們都是特殊的地址單元,其中0000H是單片機復位后,系統(tǒng)開始取指、執(zhí)行指令

25、的地址,即單片機復位后PC值為0000H;而03H、0BH、13H、1BH、23H是單片機5個中斷服務子程序的入口地址。相鄰中斷入口地址間隔8個單元。當程序使用中斷時,在入口地址處安放一條跳轉指令,而相應的中斷服務子程序從轉移地址開始安放,若中斷服務子程序小于等于8個單元可直接存在入口地址開始的8個單元內。若沒有用到中斷功能,這些單元就可以作為一般的程序存儲器用。14. 位地址3EH和字節(jié)地址3EH有何區(qū)別?位地址3EH具體在片內RAM中什么位?答:字節(jié)地址3EH是內RAM低128字節(jié)中的一個字節(jié)存儲單元。而位地址是針對可位尋址區(qū)域而言的,位尋址區(qū)占用了字節(jié)地址的20H2FH共16個字節(jié),字節(jié)

26、地址20H中的20H.020H.7位地址是00H08H,因此位地址3EH是字節(jié)地址27H中的第7位。15程序計數(shù)器寄存器PC的作用?復位后PC中值各為何? 答: 程序計數(shù)器PC時一個16位的計數(shù)器,其內容為將要執(zhí)行的指令的首地址,尋址范圍達64KB,PC具有自動加1功能,以實現(xiàn)程序的順序執(zhí)行。PC不可尋址,無法對它進行讀寫。復位后,PC=0000H,使單片機從0000H單元開始執(zhí)行。16. 畫圖說明AT89C51單片機的存儲空間結構。答: 程序存儲器ROM結構 內RAM存儲器結構補充:8051單片機內部的存儲器結構存儲器是計算機的重要硬件之一,單片機存儲器結構有兩種類型:一種是程序存儲器和數(shù)據

27、存儲器統(tǒng)一編址,屬于普林斯頓結構。另一種是程序存儲器和數(shù)據存儲器分開編址的哈佛結構。 MCS-51 采用的是哈佛結構。19、8051單片機的內部RAM的結構內部256B共分為:RAM(低128B)和特殊功能寄存器SFP區(qū)(高128B)(參考教材P15-)MCS-51 內部有 128 個字節(jié)的數(shù)據存儲器 RAM ,它們可以作為數(shù)據緩沖器、堆棧、工作寄存器和軟件標志等使用。內部 RAM 地址為 00H 7FH ,不同的地址區(qū)域內,規(guī)定的功能不完全相同。低128 字節(jié)地址空間的 RAM 中不同的地址區(qū)域功能分配為: 工作寄存器區(qū) (00H-1FH)單片機的內部工作寄存器以 RAM 形式組成,即工作寄

28、存器包含在內部數(shù)據存儲器中。地址為 00H 1FH 單元,內部 RAM 的低 32 字節(jié)分成 4 個工作寄存器區(qū),每一個區(qū)有 8 個工作寄存器,編號為 R0 R7 。 位尋址空間 (20H-2FH)CPU 不僅對內部 RAM的 20H 2FH 這 16 個單元有字節(jié)尋址功能,而且具有位尋址功能(可以單獨讀寫某一位)。給這 128 位賦以了位地址為 00H 7FH , CPU 能直接尋址這些位。 堆棧和數(shù)據緩沖區(qū) (30H-7FH )原則上MCS-51單片機的堆??梢栽O在內部RAM的任意區(qū)域內,但是一般設在30H7FH的范圍內。棧頂?shù)奈恢糜啥褩V羔?SP 指出。 特殊功能寄存器 SFR區(qū)(高12

29、8B,即 80H FFH)在高128B區(qū)中,在 80HFFH 的地址空間內離散地分布著18個特殊功能寄存器(SFR),并允許像訪問內部RAM一樣方便地訪問特殊功能寄存器。例如:四個口P0P3、 ACC、TMOD、TCON、SCON、SP、TH0、TL0等。(參考教材P17)(補充:8052 有 21 個特殊功能寄存器。)輸入/輸出(I/O)口及其簡單應用1. AT89C51四個I/O口使用時有哪些分工和特點?試作比較,并填寫下表。I/O口相同的結構不同的結構基本功能第二功能SFR字節(jié)地址位地址范圍驅動能力P0都有鎖存器、輸入緩沖器和輸出驅動器多路選擇開關輸入輸出數(shù)據線/低8位地址線80H808

30、7H強,8個LS TTL 輸入,8個引腳最大吸收電流26mAP1輸入輸出90H9097H4個LS TTL輸入,8個引腳最大吸收流15mAP2多路選擇開關輸入輸出高8位地址線A0HA0A7HP3選擇輸出功能輸入輸出第二功能B0HB0B7H2. AT89C51的4個I/O口作為輸入口時,為什么要先寫“1”?答:AT89C51讀操作時,為讀入正確的引腳信號,必須先保證場效應管截止。因為場效應管導通,引腳電平為0,顯然,從引腳輸入的任何外部信號都被場效應管強迫短路,嚴重時可能因有大電流流過場效應管,而將它燒壞。為保證場效應管截止,必須先向鎖存器寫“1”,使場效應管截止。 3.P0口作輸出口時,為什么要

31、外加上拉電阻?答: 因為當P0口作數(shù)據傳輸作用時,輸出驅動器是開漏電路,需要外加上拉電阻。4. 為什么外擴存儲器時,P0口要外接鎖存器,而P2口卻不接?答: 因為P0口8位是地址線與數(shù)據線分時復用的, 即P0口8位先輸出外部數(shù)據存儲器的低8位地址到鎖存器中鎖存,然后再輸出8位數(shù)據到數(shù)據總線上。P2口8位輸出的數(shù)據只作為地址總線的高8位,所以不需要連接鎖存器。5. 為什么當P2口作為擴展程序存儲器的高8位地址后,就不宜作I/O口用?答: P2口雖然有地址/數(shù)據的雙重作用,可是在同一時間只能在一個狀態(tài)下工作,如果有外部ROM,訪問的操作連續(xù)不斷,P2口作為高8位要不斷的傳送地址,因此不宜再作為數(shù)據

32、傳輸用,如果是外RAM,則根據對其讀寫的頻繁度來決定是否將P2口作為數(shù)據傳輸。6單片機P3口各引腳的第二功能有哪些?答:單片機P3口各引腳復用的第二功能有:)。 定時器/計數(shù)器與中斷系統(tǒng)1. 與定時器/計數(shù)器工作相關的寄存器是哪兩個?分別列表說明它們各控制位的含義和功能是什么? 答:與定時器/計數(shù)器工作相關的兩個特殊寄存器是TMOD和TCON,各有8位。(1)TMOD是工作方式寄存器,高四位和低四位分別用于控制T0和T1,作用相同,因此這里就介紹低四位,它們分別是:M0,M1這兩位用于工作方式選擇,對應于定時器狀態(tài)而言;C/(T)位是計數(shù)/定時方式選擇位;GATE是門控位,用于定時器啟動信號源

33、的選擇。(2)TCON是控制寄存器,其中低四位用于外部中斷信號控制,高四位用于定時器/計數(shù)器控制,其中: TR1定時器/計數(shù)器1啟動標志; TR0定時器/計數(shù)器0啟動標志。2簡述8051的定時/計數(shù)器T0和定時/計數(shù)器T1的工作方式分別有哪幾種?答:定時/計數(shù)器T0的工作方式有:工作方式各方式功能說明方式013位定時/計數(shù)器方式116位定時/計數(shù)器方式28位自動重置定時/計數(shù)器方式3兩個8位的定時/計數(shù)器定時/計數(shù)器T1的工作方式工作方式方式說明013位定時/計數(shù)器116位定時/計數(shù)器28位自動重置定時/計數(shù)器重要知識點:晶振頻率fosc時鐘周期(也稱為振蕩周期)=1/fosc1狀態(tài)周期=2拍

34、=2*時鐘周期1機器周期=6拍=6*狀態(tài)周期=12*時鐘周期補充說明: 定時器/計數(shù)器的最大定時容量、定時容量、初值之間的關系如何?答:定時器/計數(shù)器的最大定時容量是指從0開始到最終溢出的容量,在方式0和方式2下最大定時容量分別為2138192和28256,而定時容量是根據當前初值到最終溢出的容量;而初值就是指當前定時器/計數(shù)器在定時/計數(shù)開始之前賦予的數(shù)值,定時容量就是最大容量和初值的差。3、晶振fosc=6MHz,T0工作在模式1,最大定時的時長是多少? 答:最大定時=(M-T0初值)時鐘周期12 =(216-0)1/612 = 131072s 補充:晶振fosc=12MHz,T0工作在模

35、式0、模式1和模式2,最大定時的時長分別是多少? 答:在模式0:最大定時=(M-T0初值)時鐘周期12 =(213-0)1/1212 =8192s 在模式1:最大定時=(M-T0初值)時鐘周期12 =(216-0)1/1212 =65536s在模式2:最大定時=(M-T0初值)時鐘周期12=(28-0)1/1212=256s4、已知一臺MCS51單片機系統(tǒng)使用fosc =12MHZ(或6MHZ)的外部晶體振蕩器,計算:1)該單片機系統(tǒng)的狀態(tài)周期、時鐘周期與機器周期各為多少?答:1)狀態(tài)周期=2/foscs 時鐘周期=1/ fosc=1/12s機器周期=12/fosc=1s (2s)2)當單片機

36、的工作在方式2時,T0的最大定時時間為多少?2)TMAX =28機器周期=2561us=256s (256*2s=512us)(3)定時200s ,則定時器0(T0)裝入的初值是多少?T0初值=28-200s/1s =56=38H(28-200s/2s=156=9CH)5、MCS-51采用6MHz的晶振,定時0.5ms,如用定時器方式1時的初值應為多少(16進制數(shù))?答:因為:定時時間=(216-初值)*機器周期所以:T0 初值=216-500S/2s =65536-250 = 65286 =FF06H 補充:(1)若定時1ms,如用定時器方式1時的初值應為多少?答:T0 初值=216-100

37、0S/2s =65536-500 = 65036 = FE0CH(2)若定時10ms,如用定時器方式1時的初值應為多少?答:T0 初值=216-10000S/2s =65536-5000 = 60536 = EC78H(3)若定時100ms,如用定時器方式1時的初值應為多少?答:T0 初值=216-100000S/2s =65536-50000 = 15536 = 3CB0H思考:(1) 若采用方式0或方式2時,上述結果是多少?(2)若采用12MHz的晶振,上述結果又是多少?6. 什么叫中斷?設置中斷有什么優(yōu)點?答:單片機執(zhí)行程序的過程中,為響應內部和外部的隨機發(fā)生的事件,CPU暫時終止執(zhí)行當

38、前程序,轉去處理突發(fā)事件,處理完畢后,再返回來繼續(xù)執(zhí)行原來終止了的程序,這一過程稱為中斷。設置中斷使單片機能夠及時的響應并處理運行過程中內部和外部的突發(fā)事件,解決單片機快速CPU與慢速外設間的矛盾,提高單片機工作效率及其可靠性。7. 寫出AT89C51單片機5個中斷源的入口地址、中斷請求標志名稱、位地址和所在的特殊功能寄存器。中斷源入口地址中斷請求標志名稱中斷請求標志位地址所在特殊寄存器INT00003HIE089HTCONT0000BHTF08DHTCONINT10013HIE18BHTCONT1001BHTF18FHTCON串行口0023HTI、RI99H、98HSCON8. 中斷處理過程

39、包括哪4個步驟?簡述中斷處理過程。答:中斷過程可以分為四步,分別是中斷請求、中斷響應、中斷服務和中斷返回。當中斷源要CPU為其服務時,先發(fā)出一個中斷請求信號,CPU不斷查詢中斷請求標志,一旦查詢到某個中斷請求標志置位,則根據中斷響應條件去響應請求,從而轉去執(zhí)行中斷服務程序。但轉去中斷程序時,要求先保護現(xiàn)場,將相關的在服務子程序可能改變的存儲單元內容壓入堆棧保護,然后再去執(zhí)行中斷服務程序主體,最后中斷返回,再返回前將原先的堆棧內容出棧,即恢復現(xiàn)場。9.中斷響應需要哪些條件? 答:條件:(1)已經開總中斷(EA=1)和相應中斷源的中斷;(2)未執(zhí)行同級或更高級的中斷;(3)當前執(zhí)行指令的指令周期已

40、經結束;(4)正在執(zhí)行的不是中斷返回指令和訪問IE、IP的指令,否則要再執(zhí)行一條指令后才能響應。10. AT89C51單片機中斷優(yōu)先級有幾級? 答:AT89C51單片機中斷優(yōu)先級共有兩級,優(yōu)先級分為高優(yōu)先級和低優(yōu)先級。當幾個中斷源同時請求時,CPU先服務高優(yōu)先級的中斷,可由程序編程決定。11AT89C51單片機響應中斷的優(yōu)先順序應依什么原則?寫出同級中斷源的中斷響應優(yōu)先級別(從高至低 )。答:單片機響應中斷的優(yōu)先順序應依什么原則是:按著二級優(yōu)先級從高到低,相同優(yōu)先級的中斷再按默認的優(yōu)先級次序從高到低的響應原則。同級中斷源的中斷響應次序(從高至低 )如下表:最高次高第三第四最低外部中斷0定時計數(shù)

41、器中斷0外部中斷1定時計數(shù)器中斷1串行口中斷12MCS-51系列單片機具有幾個中斷源?分別是什么?各自的中斷標志位是什么 ?其中,CPU響應外部中斷后,如何清除中斷請求標志位? 答: MCS-51系列單片機共有5個中斷源,分別為:外部中斷0定時計數(shù)器中斷0外部中斷1定時計數(shù)器中斷1串行口中斷中斷標志為分別為:外部中斷0定時計數(shù)器中斷0外部中斷1定時計數(shù)器中斷1串行口中斷IE0TF0IE1TF1TI和RI在CPU響應外部中斷(INT0/INT1)后,在邊沿觸發(fā)方式下,IE0、IE1可由硬件自動清除;在電平觸發(fā)方式下,IE0、IE1由軟件清除。補充:串行口中斷的標志位TI和RI則由軟件清0.定時器

42、/計數(shù)器的標志位TF0和TF1由自動硬件清0.13MCS-51單片機有幾個中斷源?各中斷請求如何提出的?中斷程序的入口地址是多少?(教材-P117)答:8051單片機一共有5個中斷源。外部中斷兩個INT0和INT,當其為低電平時向CPU提出中斷請求,有兩種觸發(fā)方式:電平觸發(fā)和邊沿觸發(fā)。兩個定時/計數(shù)器T0和T1,當計數(shù)滿或定時時間到了可向CPU提出中斷請求,由軟件設置開啟和關閉這兩個中斷。串行口的發(fā)送/接收時數(shù)據完成后,(置位TI/RI),向CPU提出中斷請求。各中斷程序的入口地址是見教材P135MCS-51系列單片機共有5個中斷源及入口地址表:外部中斷0定時計數(shù)器中斷0外部中斷1定時計數(shù)器中

43、斷1串行口中斷0003H000BH0013H001BH0023H15. 已知FOSC6MHZ,使P1.7輸出高電平寬40us,低電平寬360us的連續(xù)矩形脈沖,使用T0定時的初值分別是多少?答:利用T0分別定時器40us和360 us來控制P1.7引腳,初值計算過程:根據晶振得一個機器周期為2us,輸出高電平寬40us時,其初值(T0)28-40/2ECH(40us) 輸出低電平寬360us時,其初值(T0)28-360/24CH(360us) 6. 已知FOSC6MHZ,試編寫程序,利用T0工作在方式2,使P1.0和P1.1分別輸出周期為1ms和400us的方波。此時的時間初值是多少?答:采用200us定時,初值計算過程:根據晶振得一個機器周期為2us,初值(T0)28-200/29CH A/D和D/A轉換接口1簡述ADC0809轉換的基本過程 。答:1輸入3位地址(A,B,C),并使ALE=1,將地址存入地址鎖存器中,經地址譯碼器譯碼從8路模擬通道中選通一路模擬量送到比較器。2送START一高脈沖,START的上升沿使逐次逼

溫馨提示

  • 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

提交評論