- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2.非本征函数 库函数中非本征函数在调用时由ACALL或者LCALL指令调用, 常用的包含非本征函数的头文件有: ctype.h 字符函数 stdio.h 一般I/O函数 string.h 字符串函数 stdlib.h 标准函数 math.h 数学函数 absacc.h绝对地址访问宏定义 stdarg.h 变量参数表 setjmp.h 全程跳转 reg*.h SFR定义文件 4.7.5预处理命令 1.宏定义命令#define 宏定义命令用来指定标识符的值,一般定义格式为: #define 标识符 数字或字符序列 #define 标识符(形参) 数值或字符序列 例如: #define PI 3.1415926 宏定义后PI作为一个常量使用,预处理时将程序中的PI换成 数值3.1415926。 #define s(a,b) a*b area=s(2,3); 预处理时将area换成2*3。 sfr16 16位特殊功能寄存器变量 用sfr16定义16位的特殊功能寄存器的低端地址 定义格式为: sfr16 16位特殊功能寄存器名=绝对地址的低端地址 例如:sfr16 DPTR=0x82; C51绝对地址访问 1.使用宏定义访问绝对地址 定义格式如下: #include absacc.h #define 变量名 DBYTE [绝对地址] //在内部RAM中定义绝对地址字节变量 #define 变量名 DWORD [绝对地址] //在内部RAM中定义绝对地址字变量 #define 变量名 CBYTE [绝对地址] //在ROM中定义绝对地址字节变量 #define 变量名 CWORD [绝对地址] //在ROM中定义绝对地址字变量 #define 变量名 XBYTE [绝对地址] //在外部RAM中定义绝对地址字节变量 #define 变量名 XWORD [绝对地址] //在外部RAM中定义绝对地址字变量 #define 变量名 PBYTE [绝对地址] //在外部RAM中某一页中定义绝对地址字节变量 #define 变量名 PWORD [绝对地址] //在外部RAM中某一页中定义绝对地址字变量 例4-1 用define定义绝对地址变量 #include absacc.h #define PA8255 XBYTE[0X0000] #define PB8255 XBYTE[0X0001] #define PC8255 XBYTE[0X0002] #define COM8255 XBYTE [0x0003] COM8255=0x83; //把控制字写入8255控制寄存器 PA8255=0x0f; //把数据写入8255的PA口 unsigned char a1,a2; a1=PB8255; //把8255PB口的数据写入变量a1 a2=XBYTE[0x0002] //把外部RAM地址为0002H单元的数据送给变量a2 2.使用关键字_at_指定绝对地址 格式 :[存储器类型] 数据类型 变量名_at_ 地址常数; 例4-2 使用关键字_at_对绝对地址访问 #include reg52.h data unsigned char x1_at_0x30; //指定变量x1在内部RAM的30H单元 xdata unsigned char x2_at_0x3000; main ( ) { x1=0x0f; x2=0xf0; } 注意,使用_at_定义的变量必须为全局变量! 储存模式 SMALL模式:在SMALL模式下,缺省存储器类型时,默认变量 存放在idata区域,即片内数据存储器00H~0FFH单元。 COMPACT模式:在COMPACT模式下,缺省存储器类型时,默认变量 存放在pdata区域,即存放在片外RAM的低256B空间。 LARGE模式:在LARGE模式下,缺省存储器类型时,默认变量 存放在xdata区域,即存放于片外RAM的64KB空间。 在程序中变量的存储模式由#pragma预处理命令来实现,函数存储模式可通过在函数定义时后面带存储模式
您可能关注的文档
最近下载
- 福建省突发化学中毒卫生应急预案.doc VIP
- (最新)执业兽医师聘用协议合同书5篇.docx
- 盘扣式落地式卸料平台专项施工方案新版.docx VIP
- 2025年中国私募股权基金行业市场运行现状及投资战略研究报告.docx
- 护理礼仪与人际沟通.pptx VIP
- 二次函数复习课公开课二次函数复习课公开课.ppt VIP
- 电力工程项目建设用地指标(风电场)(建标〔2011〕209号).pdf VIP
- DB3301_T0329.1—2020_社会救助家庭家境调查规范第1部分:工作程序_杭州市 .docx VIP
- 建筑工程师工作总结范文.pptx
- 2025年中考语文二轮总复习:说明文阅读(附答案解析).doc
文档评论(0)