?? c語言下的單片機軟件抗干擾實現的基本技巧之一---------對絕對地址的訪問.txt
字號:
絕對地址訪問
C51提供了三種訪問絕對地址的方法:
1. 絕對宏:
在程序中,用“#include<absacc.h>”即可使用其中定義的宏來訪問絕對地址,包括CBYTE、XBYTE、PWORD、DBYTE、CWORD、XWORD、PBYTE、DWORD
具體使用可看一看absacc.h便知,例如:
rval=CBYTE[0x0002];指向程序存貯器的0002h地址
rval=XWORD [0x0002];指向外RAM的0002h地址
2. _at_關鍵字
直接在數據定義后加上_at_ const即可,但是注意:
(1)絕對變量不能被初使化;
(2)bit型函數及變量不能用_at_指定。
例如:
idata struct link list _at_ 0x40;指定list結構從40h開始。
xdata char text[25b] _at_0xE000;指定text數組從0E000H開始
提示:如果外部絕對變量是I/O端口等可自行變化數據,需要使用volatile關鍵字進行描述,請參考absacc.h。
3. 連接定位控制
此法是利用連接控制指令code xdata pdata \data bdata對“段”地址進行,如要指定某具體變量地址,則很有局限性,不作詳細討論。
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -