- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C51特点及程序结构 C51的函数 1. 内部函数 C51内部函数只有9个,包含在头文件intrins.h中。 2. 输入输出函数 输入输出函数用于处理包括文件、控制台等各种输入输出设备,各种函数以“流”的方式实现,包含在在头文件stdio.h中。 C51特点及程序结构 C51的函数 3. 实用工具函数 实用工具函数中汇集了常用的工具类函数,如数制转换函数,随机序列产生函数等,包含在在头文件stdlib.h中 。 4. 数学函数 数学函数包含了常规的数学计算函数,在头文件 math.h 中。 C51特点及程序结构 C51的函数 5. 字符函数 用于对单个字符进行处理,包含在头文件 ctype.h中。 6. 字符串处理函数 字符串处理函数用于对字符串进行合并、比较等操作,包含在在头文件string.h中。 C51特点及程序结构 C51的函数 7. 中断服务函数 定义中断服务函数的一般形式为: 函数类型 函数名()[interrupt n] [using r] interrupt 为关键字,其后n是中断号,n的取值范围为0~31。具体的中断号n和中断向量取决于不同的8051系列单片机芯片。 using 为关键字,后面的r是一个0~3的常整数,分别选择4个不同的工作寄存器组。 C51特点及程序结构 C51的函数 编写8051单片机中断函数时应遵循以下规则: 中断函数不能进行参数传递,会导致编译出错。 中断函数没有返回值,建议在定义中断函数时将其定义为void类型,以明确说明无返回值。 在任何情况下都不能直接调用中断函数,否则会产生编译错误。 如果中断函数中用到浮点运算,必须保存浮点寄存器的状态。 如果在中断函数中调用了其它函数,则被调用函数所使用的寄存器组必须与中断函数相同。 C51编译器从绝对地址8n+3处产生一个中断向量,其中n为中断号。该向量包含一个到中断函数入口地址的绝对跳转。 *C51程序设计基础 基本结构 C51语言属于结构化设计语言,程序由若干模块组成,每个模块包含若干基本结构(顺序、分支、循环),每个基本结构中包含若干语句。 C51程序设计基础 基本结构 1. 分支(选择)结构 if(表达式){语句;} if(表达式){语句1;} else{语句2;} if(表达式1){语句1;} else if(表达式2){语句2;}…… else if(表达式n-1){语句n-1;} else{语句n;} C51程序设计基础 基本结构 1. 分支(选择)结构 switch (表达式) { case 常量表达式1:{语句1;} break;case 常量表达式2:{语句2;} break;……case 常量表达式n-1:{语句n-1;} break;default: {语句n;} } C51程序设计基础 基本结构 2. 循环结构 (1) while语句 C51使用while语句实现当型循环,格式如下: while (表达式) //条件 {语句;} //循环体 C51程序设计基础 基本结构 2. 循环结构 (2) do-while语句 C51使用do-while语句实现直到型循环,格式如下: do {语句;} //循环体 while (表达式); //条件 在单片机应用系统设计中,采用单片机C 语言与汇编语言混合编程的方法,既可提高程序开发的效率,又可以很方便的操作单片机硬件;既能保证整个程序的可读性,又能保证对硬件访问的精确性。C51语言和汇编语言的混合编程通常是程序的框架或主体部分用C51编写,对那些使用频率高、要求执行效率高、延时精确的部分用汇编语言编写,这样既保证了整个程序的可读性,又保证了单片机应用系统的性能。 在单片机C 语言与汇编语言混合编程中,应注意相应的使用方法和参数传递。 4.1 C51特点及程序结构 4.2 C51的数据类型及运算符 4.3 C51程序设计基础 教学目的和要求 掌握C51程序设计基础,能够利用C51编写基本MCS-51单片机应用系统程序 *C51特点及程序结构 C51特点 语言简洁,使用方便灵活:关键字少 可移植性好:不依赖于机器硬件 方便操作计算机硬件:可访问机器物理地址和进行位操作 生成的目标代码质量高:仅比用汇编语言编写的低10~20% 不能自动检查数组的边界 各种运算符的优先级别多:15个 C51特点及程序结构 C51程序结构 #include reg51.h //预处理命令 long fun1(); //函数说明 main(){
原创力文档


文档评论(0)