- 1、本文档共92页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
微机控制系统与应用5(2013老师修改补充版)
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * bit :是指0x20-0x2f的可位寻址区 data: 固定指前面0x00-0x7f的128个RAM,可以用acc直接读写的,速度最快,生成的代码也最小。? idata:固定指前面0x00-0xff的256个RAM,其中前128和dATa的128完全相同,只是因为访问的方式不同。idata是用类似C中的指针方式访问的。 pdATa: 外部扩展RAM的低256个字节,地址出现在A0-A7的上时读写,用movx ACC,@Rx读写。/support/man/docs/c51/c51_le_pdata.htm * * * * * * * * small :默认变量在内部RAM中,即datacompact:默认变量在外部分页的256字节RAM中,即pdatalarge:默认变量在外部64KRAM中,即xdata 如果,char Xdata i这样显式地规定了变量的存放区,则以定义为准。不受存储模式影响。 * * * * * * * * * * * * * * * * 5.3 函数 函数的参数和函数的返回值: 形式参数:函数定义的时候,位于函数名后面圆括号中的变量名 实际参数:调用函数的时候,位于函数名后面圆括号中的表达式 返回值:通过函数调用使主调用函数获得的一个确定的值,通过 return函数获得。 实际参数的传递形式: 1.基本类型的实际参数传递 2.数组类型的实际参数传递 3.指针类型的实际参数传递 * 5.3 函数 5.3.3 函数的嵌套与递归调用: 函数的嵌套调用:在调用一个函数的过程中允许调用另一个函数。 函数的递归调用:在调用一个函数的过程中又出现直接或间接地调用函 数本身。 再入函数(reentrant): 可以在函数体内直接或间接地调用其自身的一种函数。 * 5.3 函数 5.3.4 中断服务函数与寄存器组定义 定义中断服务函数的一般形式为: 函数类型 函数名(形式参数表) [interrupt n] [using n] Interrupt:关键字 n:中断号,n的取值范围为0-31。编译器从8n+3处产生中断向量, 具体的中断号n和中断向量取决于不同的8051系列单片机芯片。 * 5.3 函数 关键字interrupt对中断函数目标代码的影响如下: 在进人中断函数时,特殊功能寄存器ACC、B、DPH、DPL、PSW将被保存入栈;如果不使用寄存组切换,则将中断函数中所用到的全部工作寄存器都入栈;函数返回之前,所有的寄存器内容出栈;中断函数由805l单片机指令RETI结束。 using:关键字。专门用来选取805l单片机中不同的工作寄存器组。 n:一个0-3的常整数,分别选中4个不同的工作寄存器组。 关键字using对函数目标代码的影响如下: 在函数的入口处将当前工作寄存器组(PSW)保护到堆栈中;使用指定的工作寄存器组;函数返回之前将被保护的工作寄存器组从堆栈中恢复。 * 5.2 C51程序设计的基本语法 变量的作用范围 全局变量: 指在程序开始处或各个功能函数的外面所定义的变量。在程 序开始处定义的全局变量在整个程序中有效,可供程序中所 有的函数共同使用;而在各功能函数外而定义的全局变量只 有从定义开始处往后的各个函数可以使用,定义处前面的函 数不能使用。 局部变量: 指在函数内部或以花括号{ }围起来的功能块内部所定义的变 量。局部变量只在定义它的函数或功能块以内有效,而该函 数或功能块以外则不能使用它。 变量的存在时间 静态存储变量:指该变量在程序运行期间其存储空间固定不变。 动态存储变量:指该变量的存储空间不确定,在程序运行期间根据需要动 态地为该变量分配存储空间。 5.3.5 变量: * 5.2 C51程序设计的基本语法 变量的存储种类:自动(auto)、外部(extern)、静态(static)和寄存器(register) 自动变量 (auto) 定义一个变量时,在变量名前面加上存储种类说明符“auto”,即将该变量定义为自动变量。按照缺省规则,在函数体内部或复合语 句内部定义的变量,如果省略存储种类说明,该变量即为自动变量。 * 5.2 C51程序设计的基本语法 外部变量 (extern) 使用存储种类说明符“extern”定义的
您可能关注的文档
- 全国计算机等级考试二级C语言1.ppt
- ch4-汇编语言程序设计2.ppt
- ch9_编程语言.ppt
- arm的bootloader的流程.ppt
- 汇编语言程序设计hb_ch4.ppt
- C++复习讲义第1章 基础知识.ppt
- 山东科技大学 c语言第2章_C语言概述.ppt
- 2012-C-1-程序设计概述.ppt
- 微机原理The_Microcomputer_Principle_Ch4.ppt
- 汇编语言CH1 概述.ppt
- 八年级下册Unit4重点知识先知-2024年八年级英语寒假提升学与练(人教版) 解析版.pdf
- 2023-2025北京初三一模物理汇编:质量和密度章节综合(京改版).pdf
- 2025年医护人员法律法规知识考试题库及答案(三).pdf
- 2024-2025学年人教版七年级英语下册期末测试卷.pdf
- 中古时期的世界-高中历史全册核心知识必背清单(中外历史纲要上下册).pdf
- 2025年P气瓶充装证考试题库及答案.pdf
- 反应热的计算 课后练习-人教版高中化学选择性必修1.pdf
- 注册资本制度调整的模式和方法.docx
- 国企三会一层决策程序与权责边界.docx
- 磷矿湿法加工过程中氟回收技术研究及其利用进展.docx
文档评论(0)