- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
P3口具有第二功能,当作为五个中断源使用时,则使用了P3.0-P3.5引脚(串行一组2个即RXD、TXD;外部中断一组2个即INT0、INT1;定时器一组2个即T0、T1)。 注意:重要的是上图中红色框的引用,另外在89C52 中增加了一个定时器,即有T2。 对五个中断源编写中断服务程序时要注意,与中断源对应的中断服务程序,只能在固定的入口地址开始执行,其他程序不要占用中断源的固定地址。 中断优先级寄存器IP,可定义中断源的优先级。多个中断源同时申请时按上图箭头方向确定优先级。 C51变量的存储区域 1、区别:全局变量如果声明为外部变量(extern),则此全局变量可被其他源文件使用,而静态全局变量不能声明为外部变量,只能被所在的源文件使用。 2、extern引导定义外部变量。一个程序可由多个源文件组成,extern的正确使用非常的重要,一定要引起足够重视。 3、在左边2个文件中,利用extern将文件1.c中的i、j、c复制到文件2.c中。如果全局变量是静态全局变量,则不行了。 文件1.c int i, j;char c; //定义全局变量 void func1(int k); main() { fun1(20);//调用函数 func2(); …… } func1(int k) //用户自定义函数 { j=k*100; } 文件2.c extern int i, j; extern char c; func2(20) { static float k; i=j*5/100; k=i/1.5; } 如在一个程序中有2个源文件 数据的不同格式称为数据类型;数据按一定的数据类型进行排列、组合、架构称为数据结构。C51的数据类型有基本类型、结构类型、指针类型和空类型。C51的基本类型与标准C语言相似,但也有不同的地方,具体如下; char 8位(与标准C一样。) int 16位(short int与int一样均为16位,与标准C不同。) Long int 32位(与标准C不同) float/double 32位(与标准C不同,均是32位。) sbit/bit 1位(标准C中没有,是特殊寄存器或片内RAM中的位。) sfr 8位(标准C中没有,是特殊寄存器的8位。) sfr16 16位(标准C中没有,是特殊寄存器的16位。) 注意: 1、要注意数据的表示范围,区分好有符号位和无符号位的长度; 2、数据类型可以自动转换也可以强制转换,这点与标准C一样; 3、衡量长度可以使用“位”、“字节”和“字”,上面使用的是“位”。 2、数据类型 关于标准C中没有的几个数据类型要掌握好。 (1)sbit:定义特殊寄存器中的位; bit 定义片内RAM中可寻址的位。 (2)sfr :8位,定义特殊寄存器8位地址; sfr16 :16位,定义特殊寄存器16位地址。 (3)特点:均指示的对象在片内用户RAM和SFR。 (4)注意:sfr16为16位地址,在片内RAM中只能是 DPTR,即DPL(低8位82H),DPH(高8位83H)。 3、存储类型 变量的存储类型即变量的存储区域,而存储类型是根据“memory type”翻译而来,在实际工作中就是按存储区域处理的。 前面学过,MSC-51有三个逻辑空间,在这三个空间中,根据变量的特性是如何分配存储区域的呢? 定义变量时,要指出变量的存储区域(前面学过有三个逻辑存储空间),如果不指出,51编译器则按默认的存储区域进行变量的存储。 51编译器有三种默认的存储区域即:SMALL、COMPACT、LARGE。正面将用图形将89C51的存储逻辑空间、变量的存储区域、51编译器的默认区域之间的关系表示出来。 在SMALL模式下,分配data到空间; 在COMPACT模式下,分配pdata到空间; 在LARGE模式下,分配xdata到空间。 下面请认真看示意图! 说明:只以本学期研究的MSC-51为对象,“52”系统的存 储区域不作具体讲解,留给同学们自学扩展知识。 SFR 片内RAM 位寻址区 工作寄存器区 80H-FFH 30H-7FH 20H-2FH 00H-1FH data区 片外 64K RAM 256B xdata区 FFFFH 0100H 00H-0FFH pdata区 片外64KROM比较简单,就是“code区”。 idata是“52”系列的,上面没标出。 SMALL模式下 COMPACT模式下 LARGE模式下 bdata区 4、变量名 (1)命名由字母、数字
您可能关注的文档
最近下载
- 《食品安全国家标准预包装食品标签通则(GB 7718-2025)》解读与培训.pptx VIP
- 2025年秋湘艺版小学音乐三年级上册期末测试卷及答案(三套).pdf VIP
- 国家开放大学 《中文学科论文写作》形考任务三.doc VIP
- 2025陕西金融资产管理股份有限公司员工招聘(26人)考前自测高频考点模拟试题附答案.docx VIP
- 最全外贸开发信英文模板.doc VIP
- GB/T 985.2-2008_埋弧焊的推荐坡口.pdf
- 2025陕西金融资产管理股份有限公司员工招聘(26人)笔试参考题库附答案.docx VIP
- SONY 索尼 电视机液晶电视BRAVIA 5 (XR50)K-98XR50参考指南.pdf
- 2026陕西金融资产管理股份有限公司员工招聘(26人)笔试参考题库(浓缩300题)及答案1套.docx VIP
- 贵州省贵阳市2023-2024学年九年级上学期期末语文试题[附答案].pdf VIP
原创力文档


文档评论(0)