单片机原理及应用:keil编程环境及软件编程.pptVIP

单片机原理及应用:keil编程环境及软件编程.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
单片机原理及应用:keil编程环境及软件编程

Keil编程环境及软件编程 1. keil uVision2 集成开发环境的使用 1.2 keil uVision2 集成开发环境的使用 2. C语言程序设计 2.1 程序设计方法 2.2 基本程序结构 函数声明 一个C语言程序可包含多个不同功能的函数,但一个C语言程序中只能有一个且必须有一个名为main()的主函数。主函数的位置可在其它功能函数的前面、之间或最后。当功能函数位于主函数的后面位置时,在主函数调用时,必须对各功能函数“先声明”,一般放在程序的前面。 全局变量的定义 全局变量是指在程序开始处或各个功能函数的外面所定义的变量,在程序开始处定义的变量在整个程序中有效,可供程序中所有的函数共同使用;在各功能函数外面定义的全局变量只对定义处开始往后的各个函数有效,只有从定义处往后的各个功能函数可以使用该变量。 C程序框架 编译预处理,是编译器在对C语言源程序进行正常编译之前,先对一些特殊的预处理命令作解释,产生一个新的源程序。编译预处理主要是为程序调试、程序移植提供便利。 在源程序中,为了区分预处理命令和一般的C语句的不同,所有预处理命令行都以符号“#”开头,并且结尾不用分号。预处理命令可以出现在程序任何位置,但习惯上尽可能地写在源程序的开头,其作用范围从其出现的位置到文件尾。 C语言提供的预处理命令主要有:宏定义、文件包含和条件编译。 1)文件包含 文件包含实际上就是一个源程序文件可以包含另外一个源程序文件的全部内容。文件包含不仅可以包含头文件,如#include REG51.H,还可以包含用户自己编写的源程序文件,如#include“MY_PROC.C”。 C51文件中首先必须包含有关51单片机特殊功能寄存器地址以及位地址定义的头文件,比如#include REG51.H。 文件包含预处理命令的一般格式 #include 文件名或# include 文件名 前一种形式的文件名用尖括弧括起来,系统将到包含C语言库函数的头文件所在的目录(通常是KEIL目录中的include子目录)中寻找文件;后一种形式的文件名用双引号括起来,系统先在当前目录下寻找,若找不到,再到其他路径中寻找。 文件包含使用注意 ① 一个#include命令只能指定一个被包含的文件。 ② 如果文件1包含了文件2,而文件2要用到文件3的内容,则在文件1中用两个#include命令分别包含文件2和文件3,并且文件3包含要写在文件2的包含之前,即在file1.c中定义: #include<file3.c> #include<file2.c> ③ 文件包含可以嵌套。 2)宏定义 宏定义分为带参数的宏定义和不带参数的宏定义。 ① 不带参数的宏定义 #define 标识符 字符串 #define PI 3.14 /*PI即为3.148/ 无参数的宏定义使用时,要注意以下几个问题: ☆ 宏名一般用大写字母,以便于与变量名的区别。当然,用小写字母也不为错。 ☆ 在编译预处理中宏名与字符串进行替换时,不作语法检查,只是简单的字符替换,只有在编译时才对已经展开宏名的源程序进行语法检查。 ☆ 宏名的有效范围是从定义位置到文件结束。如果需要终止宏定义的作用域,可以用#undef命令。例如: #undef PI //该语句之后的PI不再代表3.14,这样可以灵活控制宏定义的范围 ☆ 宏定义时可以引用己经定义的宏名。例如: #define X 2.0 #define PI 3.14 #define ALL PI*X ☆ 对程序中用双引号括起来的字符串内的字符,不进行宏的替换操作。 ② 带参数的宏定义 # define 标识符(参数表) 字符串 它的作用是在编译预处理时,将源程序中所有标识符替换成字符串,并且将字符串中的参数用实际使用的参数替换。例如: #define S(a, b) (a*b)/2 若程序中如果使用了S(3, 4),在编译预处

文档评论(0)

精华文库 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:7111022151000002

1亿VIP精品文档

相关文档