<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          MCU的結構

          作者: 時間:2011-08-03 來源:網絡 收藏

          A 中央處理器

          本文引用地址:http://www.ex-cimer.com/article/172583.htm

          中央處理器是由運算部件和控制部件組成。
          a。 運算部件包括:算術邏輯部件ALU,布爾處理器,累加器ACC,寄存器B,程序狀態(tài)字PSW等等,該部件實現(xiàn)的功能是:數(shù)據(jù)的算術,邏輯運算,位變量的處理和數(shù)據(jù)傳送。
          b。 控制部件包括:定時控制邏輯,指令寄存器,譯碼器以及信息傳送控制部件等等。

           

          B 存儲器

          存儲器包括:程序存儲器和數(shù)據(jù)存儲器。
          1。MCS51內部有4K的程序存儲器,如果在實際運用中內存不夠的話,可以在此基礎上擴展到64K大小,對于程序員來講,無論是內部的EPROM,還是擴展的程序存儲器是沒有什么區(qū)別的,在內部有一個十六位的程序記數(shù)器PC可以尋址片內及片外的EPROM。

          2。51有128字節(jié)的RAM,也可以外接RAM電路,是數(shù)據(jù)存儲器的容量達到64K字節(jié)如圖:

          tb.jpg (5815 bytes)
          在00H--1FH單元:共32字節(jié)的緩沖區(qū),分為四組,每組為8個工作寄存器R0--R7,由PSW.3和PSW.4決定使用哪個組。若在實際使用中,不需要四組工作寄存器的話,那么這個區(qū)域的多余的單元可以作為一般的數(shù)據(jù)緩沖器使用。

          在20H--2FH單元:共16字節(jié)的緩沖區(qū),其中每一個字節(jié)的每一位都有一個位地址,他們占據(jù)地址空間0--7FH
          ,一般在這個16*8位的單元里,用于存放各種程序標志,位控制變量。

          在30H--7FH單元:是數(shù)據(jù)緩沖區(qū),在中斷系統(tǒng)中,往往需要一個堆棧來保護CPU的現(xiàn)場,這個堆棧一般設在
          30--7FH單元里,并且棧指針SP指出棧頂?shù)奈恢谩5菑臀灰院螅⊿P)為07H,所以一般應對SP初始化。

          總結:內部RAM中,除了作為工作寄存器,位標志和堆棧區(qū)以外的單元,都可以數(shù)據(jù)緩沖區(qū)使用,存放輸入的
          數(shù)據(jù)或運算的結果。

          C。特殊功能寄存器(如圖)

          ts.jpg (19258 bytes)
          特殊功能寄存器包括:I/O鎖存器,串口數(shù)據(jù)緩沖器,定時/記數(shù)器,以及各種控制寄存器和狀態(tài)寄存器。
          以上圖中可以看到特殊功能寄存器是離散的分布在80--FFH中,其中凡是字節(jié)地址能被8整除的特殊功能寄存器都具有位地址,CPU可以對他們進行位操作。此處就不具體列出了,如用到的話,可以參看《單片機的應用與實驗》。

          D。I/O口

          MCS51有四個,雙向,8位,平行口P0--P3,復位后他們的初態(tài)全為“1”。P0口和P2口做為地址總線,P1口為輸入/輸出總線,P3口為特殊的雙功能口



          關鍵詞: 結構 MCU

          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();