《单片机与嵌入式系统基础与实训》第三章教程讲解.pptVIP

《单片机与嵌入式系统基础与实训》第三章教程讲解.ppt

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第三章 Keil C51语言入门 ● 3.1 为什么要用C语言? 用C编写的程序,有很好的结构性和模块化,更易阅读和维护,而且由于模块化,所以有很好的可重用性,功能化的代码能够很方便的从一个工程移植到另一个工程,从而减少了开发时间。 用C编写程序比汇编更符合人们的思考习惯,开发者可以更专心的考虑算法而不是考虑一些细节问题。这样就减少了开发和调试的时间。 使用C语言,寄存器的分配以及各种变量和数据的寻址都由编译器完成,程序员无需知道处理器的具体内部结构,编写的程序比汇编程序有更好的可移植性;另外,不必熟悉处理器的运算过程,这意味着对新的处理器也能很快上手,这样也减少了开发时间。 ● 3.2 Keil C51程序的基本结构 美国KEIL公司对ANSI C做了扩展,以适应单片机硬件结构的C语言,称为C51。 1.C51程序跟ANSI C一样,函数是其基本单位。一个C51源程序至少包括一个函数,但有且只有一个主函数main()。 2.C51 程序也主要由4部分组成: (1)指定头文件(2)声明区(3)主程序(4)函数定义 3.2.1 指定头文件 “头文件”或称为包含文件(*.h),是一种预先定义好的基本数据。在C51程序中,必要的头文件是定义8051内部各个寄存器的,简称“reg51.h”,其中,“reg”是寄存器的英文缩写,“51”指的是51单片机。 * * 注意:在时间要求很苛刻的部分程序,使用汇编成了唯一的方法,这时候通常可以采用C语言和汇编混合编程的方法。 指定头文件的方式: 1.在#include之后,以“”包含头文件的文件名,如下所示。若采用这种方式,编译程序将从Keil μVision2的头文件的文件夹查找所指定查找所指定的头文件。如果Keil μVision2安装在C盘根目录下,则编译程序将从C:\Keil\C51\INC路径中查找它。 格式如下: #include头文件的文件名 2.在#include之后,以“ ”包含头文件的文件名,如下所示。则这种方式中,编译程序将从源程序所在文件夹里查找所选择的头文件。 格式如下: #include头文件的文件名 对读者而言,这两种方式都可以使用。 3.2.2 声明区 声明区也跟ANSI C一样,在选择头文件之后,可声明程序之中所使用的常数、变量、函数等,其作用域将扩展到整个程序,包括主程序与所有函数。 3.2.3 主程序 C51主程序也总是从main 函数开始执行的,而不管物理位置上这个main()放在什么地方。其通过直接书写语句和调用其它函数来实现有关功能,Keil C51有可供直接调用的100 多个库函数而无需自行编写相关代码。 3.2.4 函数定义及程序的注释 Keil C51函数定义跟ANSI C相同。 程序注释可以采用/*…..*/的形式,在“/*”开始后,一直到“*/”为止的中间的任何内容都被认为是注释。 也可采用C++风格的注释,就是用“//”引导的后面的语句是注释。 ● 3.3 C51 与ANSI C的比较 虽然C51编译器兼容ANSI C,但为支持80C51系列MCU,加入了一些扩展的内容。C51编译器的扩展内容主要包括以下方面: 1、关键字 2、数据类型 3、存储类型与存储模式 4、指针 5、中断服务程序 6、重入函数 ● 3.3.1 C51关键字 Keil μVision2开发环境中,系统的关键字默认以蓝色显示。C51除了兼容ANSI C的32个关键字外,还扩展了相关的关键字。如表3-1示。 表3-1 Keil C51扩展的关键字 3.3.2 C51数据类型 C51支持的数据类型有:1.基本数据类型 2.构造类型 3.指针类型与空类型。 图3-5 C51数据类型 C51编译器中int和short相同,float和double相同,不列出说明了。具体如表3-2所示。 表3-2 Keil C51基本数据类型和指针类型 1 .特殊功能寄存器(SFR) 为了能直访问分散在80C51微控制器片内RAM区80H~0FFH地址范围内的21个特殊功能寄存器(SFR), C51编译器提供了一种与ANSI C语言不兼容,只适用于对80C51系列微控制器进行C编程的关键字“sfr”的定义方法: sfr 特殊功能寄存器名 = 该

文档评论(0)

南非的朋友 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档