- 1、本文档共62页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[所有分类]第4章 C51程序设计
第4章 C51程序设计 4.1 Keil C51编程语言 4.2 C51的数据类型、运算符、表达式 4.3 C51的程序流控制语句 4.4 编译预处理命令 4.5 C51的编程技巧 4.6 Keil C51库函数原型列表 4.7 C51编程实例 4.1 Keil C51编程语言 Keil C51是美国Keil Software公司开发的51系列单片机C语言软件开发系统,C51也是目前使用较广泛的单片机编程语言。 应用Keil C51编程具有以下优点: (1)由Keil C51管理内部寄存器和存储器的分配,编程时,无需考虑不同存储器的寻址和数据类型等细节问题; (2)程序由若干个函数组成,在结构性、可读性、可维护性上具有明显的优势; (3)Keil C51软件提供丰富的库函数可直接引用,从而大大减少用户编程的工作量;具有功能强大的集成开发调试工具,全Windows界面,在开发大型软件时更能体现高级语言的优势; (4)Keil C51编译后生成目标代码的效率很高,生成的汇编代码很紧凑,容易理解。 4.1.1 Keil C51的函数和程序结构 Keil C51的程序结构和一般的C语言差不多,为一个个函数的集合,其中至少应包含一个主函数main()。 不管主函数main()位于什么位置,单片机总是从main()开始执行。函数之间可以互相调用,但main()函数只能调用其他的功能函数,不能被其他函数调用。 功能函数可以是Keil C51编译器提供的库函数,也可以是用户自定义的函数。 1.函数的定义 不管是main()主函数还是其他一般函数,都由“函数定义”和“函数体”两个部分构成。函数定义包括返回值类型、函数名(形式参数声明列表)等。函数体由一对大括号“{}”组成。函数体的内容由两类语句组成:一类为声明语句,用来对函数中将要用到的局部变量进行定义;另一类为执行语句,用来完成一系列功能或算法处理。所有函数在定义时都是相对独立的,一个函数中不能再定义其他函数。 C语言中的函数定义有三种形式:无参数函数、有参数函数、空函数,如下所示: (1)无参数函数的定义形式为: 返回值类型 函数名() {函数体语句} (2)有参数函数的定义形式为: 返回值类型 函数名(类型 形式参数1, 类型 形式参数2……) {函数体语句} (3)空函数的定义形式为: 返回值类型 函数名() {} 函数返回值的类型应与函数定义的返回值类型相一致。C语言中规定:凡不加函数返回类型说明的函数,都按整型(int)来处理。 2.函数的调用 函数调用的一般形式: 函数名(实参列表) 如果调用的是无参数函数,则“实参列表”可以没有,但括号不能省略。如果实参列表包含多个实参,则各参数之间用逗号隔开,实参与形参按顺序一一对应,类型一致。 按函数调用在程序中出现的位置,可以有以下两种函数调用方式: (1)函数语句:函数调用作为一个语句出现,这时不要求函数返回值,只要求函数完成一定的操作,例如: delay(1000); //通过调用delay(1000)函数来完成一定时间的延时 (2)函数表达式:函数调用出现在一个表达式中,这时要求函数返回一个确定的值,以参加表达式的运算,例如: c=2*max(a,b); 3.对被调用函数的声明和函数原型 执行函数调用时,需具备以下条件: (1)首先被调用的函数必须是已经存在的函数(库函数或用户自己定义的函数)。 (2)如果调用的是库函数,一般应在文件开头用#include命令将调用有关库函数所用到的信息“包含”到本文件中来。 (3)如果调用的是自定义函数,而且该函数与调用它的函数在同一个文件中,一般还应该在主调用函数中对该函数作函数声明,即将有关信息通知编译系统。 函数声明(也称函数原型)的形式如下: 返回值类型 函数名(参数1类型,参数2类型……); 返回值类型 函数名(类型 参数名1,类型 参数名2……); 当被调用函数的定义出现在主调用函数之前,或者在所有函数定义之前,在函数的外部已做了函数声明,则主调用函数可以不加函数声明。 C语言的语句规则如下: (1)每个变量必须先说明后引用,变量名的大小写是有差别的。 (2)C语言程序一行可以书写多个语句,但每个语句必须以“;”结尾,一个语
文档评论(0)