89C51微控制器硬體結構和原理

2021-03-04 04:00:57 字數 3861 閱讀 9213

(2) 20h~2fh為可位定址區域,這16個位元組的每一位都有乙個位址,編址為00h~7fh。

當然,位定址區也可以用作位元組定址的一般資料緩衝區使用。

(3)30h~7fh為堆疊、資料緩衝區。

(4)80h~ffh高節的ram有21個特殊功能暫存器(sfr)。訪問sfr只允許使用直接定址方式。其中11個具有位定址能力,它們的位元組位址正好被8整除。

5. 簡述布林處理儲存器的空間分配,片內ram中包含哪些可位定址單元。

答:20h~2fh為可位定址區域,這16個位元組的每一位都有乙個位址,編址為00h~7fh;

還有80h~ffh高節的ram有11 個sfr具有位定址能力,它們的位元組位址正好被8整除,如po、p1、p2、p3、tcon、scon、ie、ip、psw、a、b。

6. 如何簡捷地判斷89c51正在工作?

答:用示波器看/psen端有脈衝輸出。

7. 89c51如何確定和改變當前工作暫存器組?

答:通過檢視psw的rs0和rs1位確定哪一組工作暫存器為當前工作暫存器組。通過使用者用軟體改變rs0和rs1值的組合,以切換當前選用的工作暫存器組。

8. 89c51 p0口用作通用i/o口輸入時,若通過ttl「oc」門輸入資料,應注意什麼?為什麼?

答:當p0口作輸入口使用時,應先向口鎖存器寫入全1,此時p0口的全部引腳浮空,可作為高阻抗輸入。

從p0口硬體圖可知,在讀入埠引腳資料時,由於輸出驅動fet(t2)並接在引腳上,如果fet(t2)導通,就會將輸入的高電平拉成低電平,從而產生誤讀。所以,在埠進行輸入操作時,應先向埠鎖存器寫入1。

9. 讀埠鎖存器和「讀引腳」有何不同?各使用哪種指令?

答:讀埠鎖存器,使用「讀-修改-寫」指令,如執行「anl p0,a」指令,它不直接讀引腳上的資料,而是cpu先讀p0口d鎖存器中的資料;當「讀鎖存器」訊號有效時,三態門緩衝器1開通,q端資料送入內部匯流排和累加器a中的資料進行邏輯與操作,結果送回p0埠鎖存器。這樣避免錯讀引腳上的電平訊號的可能性。

「讀引腳」使用「mov a,po」。

10. 89c51 p0~p3口結構有何不同?用作通用i/o口輸入資料時,應注意什麼?

答:89c51 p0~p3口結構相同之處:p0~p3都是準雙向i/o口,做輸入時,必須先向相應埠的鎖存器寫入「1」。

不同之處:p0口的輸出級與p1~p3口不相同,它無內部上拉電阻,不能提供拉電流輸出,而p1~p3口則帶內部上拉電阻,可以提供拉電流輸出。

當p0口作通用i/o口使用時,需外接上拉電阻才可輸出高電平;但做位址/資料匯流排時,不需要外接上拉電阻。p1~p3口作通用i/o口使用時,均不需要外接上拉電阻。

11. 89c51微控制器的ea訊號有何功能?在使用80c31時,ea訊號引腳應如何處理?

答:ea/vpp是雙功能引腳,功能如下:

(1) ea接高電平時,在低4kb程式位址空間(0000h~0fffh),cpu執行片內程式儲存器的指令,當程式位址超出低4kb空間(1000h~ffffh)時,cpu將自動執行片外程式儲存器的指令。

(2) ea接低電平時,cpu只能執行外部程式儲存器的指令。

80c31微控制器內部無rom,必須外接程式儲存器。因此,8031的ea引腳必須接低電平。

12. 89c51微控制器有哪些訊號需要晶元引腳以第2功能的方式提供?

答:rxd、txd、/into、/int1、t0、t1、/wr、/rd這些訊號引腳以第2功能的方式提供。

13. 內部ram低節單元劃分為哪3個主要部分?各部分主要功能是什麼?

答:89c51內部128b的資料ram區,包括有工作暫存器組區、可直接位定址區和資料緩衝區。各區域的特性如下:

(3) 00h~1fh為工作暫存器組區,共分4組,每組占用8個ram位元組單元,每個單元作為乙個工作暫存器,每組的8個單元分別定義為8個工作暫存器r0~r7。當前工作暫存器組的選擇是由程式狀態字psw的rs1、rs0兩位來確定。如果實際應用中並不需要使用工作暫存器或不需要使用4組工作暫存器,不使用的工作暫存器組的區域仍然可作為一般資料緩衝區使用,用直接定址或用ri的暫存器間接定址來訪問。

(4) 20h~2fh為可位定址區域,這16個位元組的每一位都有乙個位址,編址為00h~7fh。

當然,位定址區也可以用作位元組定址的一般資料緩衝區使用。

(3)30h~7fh為堆疊、資料緩衝區。

14. 使微控制器復位有幾種方法?復位後機器的初始狀態如何?

答:微控制器的復位有上電自動復位和按鈕手動復位兩種。使用時應注意,上電復位的最短時間應保證為振盪週期建立時間加上兩個機器週期的時間;當微控制器執行程式出錯或進入死迴圈時,可用按鈕復位來重新啟動。

復位後,把pc初始化為0000h,使微控制器從0000h單元開始執行程式。在sfr中,除p0~p3的復位值為ffh、堆疊指標sp為07h、sbuf內為不定值外,其餘的暫存器全部清零。

15. 開機復位後,cpu使用的是哪組工作暫存器?它們的位址是什麼?cpu如何確定和改變當前工作暫存器組?

答:微控制器開機復位後,cpu使用的是0組暫存器,0組r0~r7的位址是00h~07h。通過使用者用軟體改變rs0和rs1值的組合,以切換當前選用的工作暫存器組。

16. 程式狀態暫存器psw的作用是什麼?常用標誌有哪些位?作用是什麼?

答: 程式狀態字暫存器psw:是乙個8位暫存器,用來存放當前指令執行後操作結果的某些特徵,以便為下一條指令的執行提供依據。

定義格式如下。其中,cy:進借位標誌;ac:

輔助進借位標誌; f0:軟體標誌;ov:溢位標誌;f1:

使用者標誌位;p:奇偶校驗標誌; rs1、rs0:工作暫存器組選擇(如表所示)。

表工作暫存器組選擇控制表

17. 位位址7ch與位元組位址7ch如何區別?位位址7ch具體在片內ram中的什麼位置?

答:位元組位址是片內ram的單元位址,而位位址是片內ram單元的某一位。

7ch位元組位址ram的7ch單元,而7ch位位址是ram 2fh單元中的d4位。

18. 89c51微控制器的時鐘週期與振盪週期之間有什麼關係?什麼叫機器週期和指令週期?

答:時鐘週期為最基本的時間單位。振盪週期是晶振的振盪週期,是最小的餓時序單位。乙個時鐘週期為振盪週期的2倍。

機器週期則是完成某乙個規定操作所需的時間。

指令週期是指執行一條指令所佔的全部時間。通常乙個指令週期含1~4個機器週期。

19. 乙個機器週期的時序如何劃分?

答:乙個機器週期為6個時鐘週期,共12個振盪週期,依次可表示為s1p1、s1p2、…、s6p1、s6p2。

2 0. 什麼叫堆疊?堆疊指標sp的作用是什麼?89c51微控制器堆疊的容量不能超過多少位元組?

答:堆疊是在片內ram中專門開闢出來的乙個區域,資料的訪問是以"後進先出"的結構方式處理的。實質上,堆疊就是乙個按照"後進先出"原則組織的一段記憶體區域。

堆疊指標sp的作用,是用來指示儲存內容的儲存位址,可指向89c51片內的00h~7fhram的任何單元。

89c51微控制器堆疊的容量不能超過128個位元組。

21. 89c51有幾種低功耗方式?如何實現?

答:89c51有兩種低功耗方式,分別是待機(休閒)方式和掉電方式。

置pcon中的d0位即idl為「1」,微控制器即進入待機(休閒)方式;置d1為即pd為「1」,則進入掉電方式。

22. pc與dptr各有哪些特點?有何異同?

答: pc是16位程式計數器(program counter),它不屬於特殊功能暫存器範疇,程式設計師不以像訪問特殊功能暫存器那樣來訪問pc。pc是專門用於在cpu取指令期間定址程式儲存器。

pc總是儲存著下一條要執行的指令的16位位址。通常程式是順序執行的,在一般情況下,當取出乙個指令(更確切地說為乙個指令位元組)位元組後,pc自動加1。如果在執行轉移指令、子程式呼叫/返回指令或中斷時,要把轉向的位址賦給pc。

dptr是16位資料指標暫存器,它由兩個8位特殊功能暫存器dpl(資料指標低8位)和dph(資料指標高8位)組成,dptr用於儲存16位位址,作間址暫存器用,可定址外部資料儲存器,也可定址程式儲存器。

AT89C51微控制器的基本結構和工作原理

at89c51微控制器的主要工作特性 內含4kb的flash儲存器,擦寫次數1000次 內含28位元組的ram 具有32根可程式設計i o線 具有2個16位可程式設計定時器 具有6個中斷源 5個中斷向量 2級優先權的中斷結構 具有1個全雙工的可程式設計序列通訊介面 具有乙個資料指標dptr 兩種低功...

AT89C51微控制器的基本結構

at89c51微控制器的主要工作特性 內含4kb的flash儲存器,擦寫次數1000次 內含28位元組的ram 具有32根可程式設計i o線 具有2個16位可程式設計定時器 具有6個中斷源 5個中斷向量 2級優先權的中斷結構 具有1個全雙工的可程式設計序列通訊介面 具有乙個資料指標dptr 兩種低功...

89S51微控制器介紹

很多初學51微控制器的會有這樣的問題 at89s51是什麼?書上和網路教程上可都是8051,89c51等!沒聽說過有89s51,到底什麼是89s51呢?這裡,初學者要澄清微控制器實際使用方面的乙個產品概念,mcs 51微控制器是美國inte公司於1980年推出的產品,典型產品有8031 內部沒有程式...