⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 c语言下的单片机软件抗干扰实现的基本技巧之一---------对绝对地址的访问.txt

📁 个人收藏的14篇有关KEIL C51语言编程的使用要点。 目录: C51变量或数据类型 C51 怎样将1个子程序段定位在1个固定的地址位置 C51存储模式 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 + -