資料介紹
在51系列中data,idata,xdata,pdata的區(qū)別:
data: 固定指前面0x00-0x7f的128個RAM,可以用acc直接讀寫的,速度最快,生成的代碼也最小。
idata: 固定指前面0x00-0xff的256個RAM,其中前128和data的128完全相同,只是因為訪問的方式不同。idata是用類似C中的指針方式訪問的。匯編中的語句為:mox ACC,@Rx.(不重要的補充:c中idata做指針式的訪問效果很好)。
xdata: 外部擴(kuò)展RAM,一般指外部0x0000-0xffff空間,用DPTR訪問。
pdata: 外部擴(kuò)展RAM的低256個字節(jié),地址出現(xiàn)在A0-A7的上時讀寫,用movx ACC,@Rx讀寫。這個比較特殊,而且C51好象有對此BUG,建議少用。但也有他的優(yōu)點,具體用法屬于中級問題,這里不提。
RAM解決方案
1.右鍵單擊Target選擇“Options for Target‘Target1’”就會出來一個框,在memory model中選擇compact:variables in pdata 就可以了。
“Keil Cx51編譯器提供三條編譯模式控制命令:SMALL,COMPACT,LARGE,它們對變量存儲器空間的影響如下。
SMALL:所有變量都被定義在8051單片機(jī)的片內(nèi)RAM中,對這種變量的訪問速度最快。另外,堆棧也必須位于片內(nèi)RAM中,而堆棧的長度是很重要的,實際棧長取決與不同函數(shù)的嵌套深度。采用SMALL編譯模式與定義變量時指定data存儲器類型具有相同效果。
COMPACT:所有變量被定義在分頁尋址的片外XRAM中,每一頁片外XRAM的長度為256字節(jié)。這時對變量的訪問是通過寄存器間接尋址(MOVX @R0,MOVX @R1)進(jìn)行的,變量的低8位地址由R0和R1確定,變量的高8位地址由P2口確定。采用這種模式時,必須適當(dāng)改變配置文件STARTUP.A51中的參數(shù):PDATASTART和PDATALEN;同時還必須對uVision2的“Options選項/BL51 Locator 標(biāo)簽頁/Pdata框”中鍵入合適的地址參數(shù),以確保P2口能輸出所需要的高8位地址。采用COMPACT編譯模式與定義變量時指定 pdata存儲器類型具有相同效果。
LARGE:所有變量被定義在片外XRAM中(最大可達(dá)64KB),使用數(shù)據(jù)指針DPTR來間接訪問變量(MOVX @DPTR),這種編譯模式對數(shù)據(jù)訪問的效率最低,而且將增加程序的代碼長度。采用LARGE編譯模式與定義變量時指定xdata存儲器類型具有相同效果。
- 51單片機(jī)堆棧深入剖析
- 關(guān)于51單片機(jī)的地址空間溢出以及解決方法的個人看法(proteus無法仿真)
- 51單片機(jī)的驅(qū)動說明 7次下載
- 51單片機(jī)堆棧的溢出問題和堆棧大小的詳細(xì)說明
- 51單片機(jī)中位地址在內(nèi)存的位置及51單片機(jī)中片內(nèi)RAM的使用規(guī)范說明
- 51單片機(jī)經(jīng)常會出現(xiàn)的4點錯誤解決方法詳細(xì)說明
- 在Windows系統(tǒng)下使用STC ISP下載51單片機(jī)程序的方法詳細(xì)說明
- 進(jìn)行51單片機(jī)存儲器擴(kuò)展的詳細(xì)資料說明
- 51單片機(jī)無法燒錄程序應(yīng)該如何解決詳細(xì)方法說明
- 51單片機(jī)的物理存儲地址的詳細(xì)資料說明
- 如何使用51單片機(jī)擴(kuò)展64K的RAM詳細(xì)資料免費下載
- 51單片機(jī)的內(nèi)部RAM的詳細(xì)資料說明
- 51單片機(jī)用到strcmp比較字符串有的問題和解決方法說明
- 使用51單片機(jī)中斷標(biāo)志的一個小問題你了解嗎
- 綜合整理的51單片機(jī)C語言400實例和單片機(jī)仿真300例資料說明 653次下載
- 什么是51單片機(jī)最小系統(tǒng) 2802次閱讀
- 51單片機(jī)的基礎(chǔ)知識 1.1w次閱讀
- AT89S51單片機(jī)功能及特點 5788次閱讀
- 51單片機(jī)燒寫程序的方法 5658次閱讀
- 51單片機(jī)指令快速記憶方法總結(jié) 5013次閱讀
- 單片機(jī)的結(jié)構(gòu)和原理說明 5517次閱讀
- 51單片機(jī)的最小系統(tǒng)應(yīng)用說明 8207次閱讀
- 如何對51單片機(jī)RAM不同的區(qū)域進(jìn)行劃分 2431次閱讀
- 如何采用51單片機(jī)開發(fā)操作體系 760次閱讀
- 如何正確的劃分51單片機(jī)中的RAM 7870次閱讀
- 基于MCS-51單片機(jī)的三個存儲空間及劃分解析 1.4w次閱讀
- 新手學(xué)習(xí)單片機(jī)的首選:51單片機(jī) 8836次閱讀
- 單片機(jī)8x8矩陣鍵盤原理說明 2.6w次閱讀
- MCS-51單片機(jī)存儲空間的介紹以及劃分 2.7w次閱讀
- 解析80C51單片機(jī)中的cpu、存儲器配置以及并行輸入/輸出口 2.7w次閱讀
下載排行
本周
- 1TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 2開關(guān)電源基礎(chǔ)知識
- 5.73 MB | 6次下載 | 免費
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設(shè)計
- 0.60 MB | 3次下載 | 免費
- 5基于FPGA的光纖通信系統(tǒng)的設(shè)計與實現(xiàn)
- 0.61 MB | 2次下載 | 免費
- 651單片機(jī)窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費
- 751單片機(jī)大棚環(huán)境控制器仿真程序
- 1.10 MB | 2次下載 | 免費
- 8基于51單片機(jī)的RGB調(diào)色燈程序仿真
- 0.86 MB | 2次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33564次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關(guān)電源設(shè)計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅(qū)動電路設(shè)計》 溫德爾著
- 0.00 MB | 6653次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537796次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191185次下載 | 免費
- 7十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論