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

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > pic單片機(jī)教程之?dāng)?shù)據(jù)存儲(chǔ)器的直接間接尋址方式

          pic單片機(jī)教程之?dāng)?shù)據(jù)存儲(chǔ)器的直接間接尋址方式

          作者: 時(shí)間:2016-09-12 來(lái)源:網(wǎng)絡(luò) 收藏

          構(gòu)成

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

          由特殊功能寄存器(SFR)和通用寄存器(GPR)組成。SFR控制器件的操作,而GPR則是數(shù)據(jù)存儲(chǔ)和改寫(xiě)的通用區(qū)域。

          SFR和GPR數(shù)據(jù)存儲(chǔ)區(qū)分成不同的存儲(chǔ)區(qū)。GPR區(qū)分成不同的存儲(chǔ)區(qū),以實(shí)現(xiàn)對(duì)超過(guò)96字節(jié)的通用RAM的尋址。SFR是用來(lái)控制外設(shè)和內(nèi)核功能的寄存器。STATUS寄存器的存儲(chǔ)區(qū)選擇控制位(STATUS7:5>)用于選擇存儲(chǔ)區(qū)。圖6-5是的構(gòu)成映射,這個(gè)映射與器件型號(hào)有關(guān)。

          從一個(gè)寄存器向另一個(gè)寄存器傳送數(shù)據(jù)時(shí),必須通過(guò)W寄存器。這意味著所有寄存器之間的數(shù)據(jù)傳送,都需要兩個(gè)指令周期。

          整個(gè)數(shù)據(jù)存儲(chǔ)器可以采用直接尋址或間接尋址來(lái)存取。直接尋址可能需要使用RP1、RP0位,間接尋址需要用到指針寄存器(FSR)。間接尋址數(shù)據(jù)存儲(chǔ)器的存儲(chǔ)區(qū)0/存儲(chǔ)區(qū)1或存儲(chǔ)區(qū)2/存儲(chǔ)區(qū)3時(shí),要使用狀態(tài)寄存器的間接寄存器指針(IRP)位。

          通用寄存器(GPR)

          某些中檔單片機(jī)的GPR區(qū)分成不同的存儲(chǔ)區(qū),上電復(fù)位并不能初始化GPR,其它的復(fù)位也不能改變GPR的值。

          寄存器既可以直接尋址,也可以使用指針寄存器FSR間接尋址。某些器件具有各數(shù)據(jù)存儲(chǔ)區(qū)共享的公用數(shù)據(jù)存儲(chǔ)區(qū),對(duì)公用數(shù)據(jù)存儲(chǔ)區(qū)的讀寫(xiě)不必考慮當(dāng)前所在存儲(chǔ)區(qū),可使用同一個(gè)地址單元(值),我們稱(chēng)這個(gè)區(qū)域?yàn)楣肦AM。

          特殊功能寄存器(SFR)

          特殊功能寄存器由CPU和外設(shè)使用,用于控制器件的操作,這類(lèi)寄存器實(shí)現(xiàn)為靜態(tài)RAM形式。特殊功能寄存器可分為兩類(lèi),一類(lèi)與內(nèi)核功能有關(guān),另一類(lèi)與外設(shè)功能有關(guān)。本章將講述與內(nèi)核功能有關(guān)的特殊功能寄存器,另一類(lèi)與外設(shè)功能操作有關(guān)的特殊功能寄存器將在相應(yīng)的外設(shè)功能模塊章節(jié)中講述。

          所有中檔單片機(jī)的SFR寄存器區(qū)也分成不同的存儲(chǔ)區(qū)。在這些存儲(chǔ)區(qū)間切換時(shí),需要設(shè)置狀態(tài)(STATUS )寄存器的RP0、RP1位來(lái)選擇所需存儲(chǔ)區(qū)。某些SFR寄存器會(huì)被上電復(fù)位和其它復(fù)位初始化,而有些一些SFR寄存器在復(fù)位時(shí)不會(huì)被初始化。

          *注: 可能有通用寄存器映射到特殊功能寄存器區(qū)。

          寄存器既可以直接尋址,也可以通過(guò)指針寄存器間接尋址。

          存儲(chǔ)區(qū)劃分

          數(shù)據(jù)存儲(chǔ)器分為4個(gè)存儲(chǔ)區(qū),每個(gè)存儲(chǔ)區(qū)包括特殊功能寄存器和通用寄存器。使用直接尋址時(shí),為在這些存儲(chǔ)區(qū)之間切換,需要設(shè)置狀態(tài)寄存器的RP0、RP1位以選擇需要的存儲(chǔ)區(qū)。狀態(tài)寄存器的IRP位用于間接尋址。

          1.jpg

          每個(gè)存儲(chǔ)區(qū)最多可有128字節(jié)(7FH)。特殊功能寄存器安排在存儲(chǔ)區(qū)的低地址單元;通用寄存器安排在高地址單元。所有數(shù)據(jù)存儲(chǔ)器都是用靜態(tài)RAM。所有存儲(chǔ)區(qū)都包括特殊功能寄存器。為了減少程序代碼和提高存取速度,存儲(chǔ)區(qū)0中某些使用率高的特殊功能寄存器映射在其它存儲(chǔ)區(qū)中。

          隨著產(chǎn)品的發(fā)展,其數(shù)據(jù)存儲(chǔ)器的設(shè)計(jì)布局有一些變化。對(duì)于所有新器件來(lái)說(shuō),標(biāo)準(zhǔn)的數(shù)據(jù)存儲(chǔ)器構(gòu)成如圖6-5所示。在這個(gè)存儲(chǔ)器映射中,所有存儲(chǔ)區(qū)的最后16字節(jié)都映射到存儲(chǔ)區(qū)0中,這可以降低用于現(xiàn)場(chǎng)切換的軟件開(kāi)銷(xiāo)。用粗體表示的寄存器存在于每種單片機(jī)中,其它寄存器的有無(wú)與外設(shè)模塊有關(guān)。圖中沒(méi)有示出所有的外設(shè)寄存器,因?yàn)獒槍?duì)不同的器件,在某些文件地址處的寄存器定義與這里所顯示的不同。除了使用本手冊(cè)所提供的所有圖、表和說(shuō)明外,也應(yīng)參閱特定器件的數(shù)據(jù)手冊(cè)來(lái)核實(shí)細(xì)節(jié)。

          2.jpg

          3.jpg



          評(píng)論


          相關(guān)推薦

          技術(shù)專(zhuān)區(qū)

          關(guān)閉
          看屁屁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); })();