- 1、本文档共86页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
第6章C51语言程序设计基础
Ø6.1C51语言基础
Ø6.2C51的函数和数组
Ø6.3C51的编程规范
Ø6.4C51的基本运用
教学提示:本章在汇编语言基础上讲解C51的特点,介
绍了C51的数据类型、常量、常用运算符、表达式、基本语
句及C51函数和数组。在此基础上,采用C51进行单片机简单
功能的应用,力求尽快实现从汇编语言到C51的过渡。
教学要求:在单片机上采用C语言开发已成为一种趋势。
通过本章的学习,读者可了解C51与普通C语言及汇编语言的
不同,并学会利用它进行单片机开发,这是进行后续章节学
习重要的一步。
6.1C51语言基础
在单片机的开发中,以前基本上是使用汇编语言,也有
使用BASIC语言进行开发的。从90年代中期以后,使用C语言
开发单片机已成为一种流行的趋势。它具有使用方便、编程
效率高及仿真调试容易等突出特点。
C语言是一种源于编写UNIX操作系统的语言,它是一种
结构化语言,能产生高效率的紧凑代码。C语言含有许多本
应由汇编语言实现的机器级函数,与汇编语言相比,C语言
又有如下优点:
·不需要了解51单片机的指令系统,仅仅要求对存储器结
构有初步了解;
·程序有规范的结构,可分为不同的函数,使得程序结构
化;
·语言简洁、紧凑,使用方便、灵活。
·运算符极其丰富;
·提供的库包含许多标准子程序,具有较强的数据处理能
力;
·编程和程序调试效率高;
·程序易于模块化,便于移植。
C51的版本很多,下面就以德国KeilSoftware公司专门为
8051单片机开发的KeilC51编译器为例,对MCS51单片机如何
使用C51进行编程做一个简单的介绍。
6.1.1C51程序创建过程
1.C51程序的创建过程
第一步:创建C51工程文件,如图6.1所示。
点击project→newproject→输入工程名myproject,如图6.2
所示。
保存文件→选择器件→Atmel,如图6.3所示。
AT89C51→确定,如图6.4所示。
图6.1创建C51工程文件
图6.2输入工程名
图6.3选择器件
图6.4点击确定
第二步:创建源(.c)文件。
点击File→newFile,如图6.5所示。
点击保存→输入源文件(.c)myproject.c,如图6.6所示。
点击Target1→SourceGroup1→点击右键
→AddFilestoGroup′SourceGroup1′→添加(.c),如图6.7所示。
第三步:对生成文件进行设置。
鼠标放于Target1右击→OptionsforTarget′Target1′,如图6.8
所示。
TargetOutput→CreateHEXFileHEXFormat:→确定,如图
6.9所示。
图6.5创建文件
图6.6输入源文件
图6.7添加
图6.8OptionsforTarget′Target1′
图6.9点击确定
2.C51编程时常用到的头文件
absacc.h:包含允许直接访问8051不同存储区的宏定义。
ctype.h:字符转换和分类程序。
math.h:数学程序。
stdlib.h:存储区分配程序。
assert.h:文件定义assert宏,可以用来建立程序的测试条
件。
reg52.h:52的特殊寄存器。
intrins.h:包含指示编译器产生嵌入式固有代码的程序的
原型。
6.1.2存储空间定义
在C51中,变量存储空间有以下两种定义方式:
(1)[数据类型][存储器类型]变量名
(2)[存储器类型][数据类型]变量名
C51内部只有128B的RAM,因而必须根据需要指定各种
变量的存放位置。C51定义的存储器类型与存储空间如表6.1
所示。
表6.1C51定义的存储器类型与存储空间
6.1.3C51数据类型
C语言数据类型包括:基本类型、构造类型、指针类型
和空类型。其中,基本类型包括位(bit)、
文档评论(0)