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

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 討論有關(guān)單片機(jī)內(nèi)存的問題

          討論有關(guān)單片機(jī)內(nèi)存的問題

          作者: 時(shí)間:2016-11-10 來源:網(wǎng)絡(luò) 收藏

          由于單片機(jī)內(nèi)存比較小,在以前的型號(hào)如AT89c51內(nèi)存只有128byte,按照目前的電子市場(chǎng)飛速的發(fā)展,這么點(diǎn)點(diǎn)的內(nèi)存只夠做一個(gè)簡(jiǎn)單的電子系統(tǒng),若是大一點(diǎn)的就遠(yuǎn)遠(yuǎn)不夠用了,這樣要么就要外擴(kuò)一個(gè)靜態(tài)RAM,要么就要選擇一個(gè)內(nèi)存比較大一點(diǎn)的單片機(jī),比如:AT89S52 [256byte] SST89E564 [1K]等等。這樣在使用KEIL軟件的時(shí)候是如何適用超過128byte字節(jié)的RAM呢?很多人都有這樣的疑問【當(dāng)初我搞的也不是很明白】。

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

          在網(wǎng)上也看到了很多人都有這樣的想法:

          ① 超過變量128后必須使用compact模式編譯

          實(shí)際的情況是只要內(nèi)存占用量不超過256.0【前提是:?jiǎn)纹瑱C(jī)的內(nèi)存必須要大于128byte,對(duì)于at89c51來說想達(dá)到256也達(dá)不到啊,本身就不夠用】 就可以用 small 模式編譯。要是單片機(jī)提供的內(nèi)存更大的話,那也可以在small模式編譯的。
          ② 128以上的某些地址為特殊寄存器使用,不能給程序用

          這樣的想法也是不對(duì)的,單片機(jī)與 PC 機(jī)不同,51 單片機(jī)不使用線性編址,特殊寄存器與 RAM 使用重復(fù)的地址。但訪問時(shí)采用不同的指令,所以并不會(huì)占用 RAM 空間。

          下面我用匯編和C語(yǔ)言進(jìn)行解釋一下上面紅色字的意思:【很多人都能說出這樣的道理,但是很少有人舉出實(shí)際的例子供大家參考和分析,下面我會(huì)在匯編和C語(yǔ)言做出實(shí)際的語(yǔ)句,來和大家一起分析一下】

          首先先給P0口賦值0x55;

          P0DATA080H

          MOV A , #55H;

          MOVP0 ,A; ;因?yàn)閜0口特殊功能寄存器的地址是0x80

          若是往0x80地址存儲(chǔ)數(shù)據(jù)0xAA。則需要執(zhí)行以下語(yǔ)句

          MOV RO ,#80H

          MOV @R0 , #0AAH

          參照上面的語(yǔ)句就能知道同樣都是0x80地址卻有著不一樣的效果.

          下面在寫一下C語(yǔ)言的語(yǔ)句

          sfr P0 = 0x80;

          unsigned char idatai_at_0x80;

          voidmain(void)

          {

          //P0口賦值0x55;

          P0 = 0x55;

          //0x80地址存儲(chǔ)數(shù)據(jù)0xAA

          i = 0xAA;

          }

          根據(jù)上面總結(jié)出來的,看完所有的代碼我想對(duì)大家應(yīng)該有所幫助吧?仔細(xì)看看我上面的代碼或我的說明,我想這個(gè)時(shí)候你應(yīng)該對(duì)單片機(jī)的內(nèi)存有個(gè)進(jìn)一步的了解了。對(duì)你以后開發(fā)單片機(jī)應(yīng)該會(huì)有所幫助的。如果你對(duì)此有所疑問,或者我的說法有錯(cuò)誤,請(qǐng)您給我留言,我們共同交流,由于時(shí)間的關(guān)系,以前整理的資料好多都丟了,今天在此作了一個(gè)簡(jiǎn)單的整理并發(fā)上來,希望對(duì)看我的blog的人用……看過的人希望您能留下寶貴的意見或留言,謝謝?。?!



          關(guān)鍵詞: 單片機(jī)內(nèi)

          評(píng)論


          技術(shù)專區(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); })();