第2章单片机C语言编程案例.ppt

  1. 1、本文档共50页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第二章 单片机的C语言编程 2.1 C51概述 2.2 C51程序结构 2.3 C51的数据类型与运算符 2.4 C51的函数 2.5 C51的硬件编程 2.1 C51概述 51系列单片机支持三种高级语言,即PL/M,C和BASIC。 C语言是一种通用的程序设计语言,其代码率高,数据类型及运算符丰富,并具有良好的程序结构,适用于各种应用的程序设计,是目前使用较广的单片机编程语言。 MCS-51系列单片机采用的C语言 ,简称C51。 C51符合C语言的ANSI标准,并根据单片机的特性进行了扩展。 C51所产生的目标代码短、运行速度高、所需存储空间小。 2.2 C51的程序结构 同ANSI C一样,C51的程序由一个个函数组成,这里的函数和其他语言的“子程序”或“过程”具有相同的意义。 必须有一个主函数main(),程序的执行从main()函数开始,调用其他函数后返回主函数main(),最后在主函数中结束整个程序而不管函数的排列顺序如何。 功能函数可以是C51语言提供的库函数,也可以是用户自定义的函数。 C语言的语句规则: 1. 每个变量必须先说明后引用,变量名英文大小写是有差别的。 2. C语言程序一行可以书写多条语句,但每个语句必须以“;”结尾,一个语句也可以多行书写。 3. C语言的注释用/*……*/或//表示。 4. “{”花括号必须成对,位置随意,可在紧挨函数名后,也可另起一行,多个花括号可以同行书写,也可逐行书写,为层次分明,增加可读性,同一层的“{”花括号对齐,采用逐层缩进方式书写。 2.3 C51的数据类型与运算符 2.3.1 C51的存储类型 51系列单片机的内存区域被分为两大类。一类是程序存储区,即ROM;另一类是数据存储区,包括内部数据存储区和外部数据存储区。内部数据存储区中又包含了51单片机的特殊功能寄存器。 1 数据存储区 1) 内部数据存储区 ① data ② idata ③ bdata 2) 外部数据存储区 ① xdata ② pdata 2 程序存储器 ① code 2.3 C51的数据类型与运算符 2.3.2 C51的数据类型 无论哪种数据都是存放在存贮单元中的,每一个数据究竟要占用几个单元(即数据的长度)都要提供给编译系统,编译系统以此为根据预留存贮单元,这就是定义数据类型的意义。 C51支持ANSI C的所有标准数据类型,并在此基础上增设了位型及特殊功能寄存器类型。 2.3 C51的数据类型与运算符 2.3.2 C51的数据类型 2. 常量与变量 C51支持的数据有常量、变量、指针。 存储时‘先高后低’原则; 常量位置与定义说明有关,一般放在程序存储区code 。 1)常量 整型常量、实型常量、字符常量、字符串常量、符号常量。 符号常量在使用前必须先定义,格式为: #define 标识符 常量 //是C51的预处理指令 2)变量 定义变量的一般格式: [存储模式] 数据类型 [存储器类型] 变量名; 说明: 1) 在C语言中,为了能够实现直接对内存单元进行操作,引入了指针类型的数据。一个变量的地址就称为该变量的指针。 2) 如果有一个变量专门用来存放另一个变量的地址,则称之为指针变量。一个指针变量存放的内容是另一个变量在内存中的地址,每一个变量都有它自己的指针(地址)。 3) C语言中用“*”表示“指向”。 如:整型变量i的地址存放在指针变量ip中,则 i=0x50; *ip=0x50; 都是给同一个变量赋值。 4) 区分“”和“*”运算符。 指向不同存储区变量的通用指针 指针能适用于指向任何存贮空间,此时指针长度为3字节,第一字节表示存贮器类型编码,第二、三字节分别表示所指地址的高位和低位。 unsigned char *ptr; //通用指针ptr,指针存放在默认存储区 unsigned char * idata iptr ; //通用指针iptr,指针存放在idata存储区 指向固定存储区变量的指针 定义为data或idata,表示指针指向内部数据存贮器; 定义为pdata,表示指针指向外部数据存贮器,用@Ri间址。以上均为八位地址; 定义为类型code/xdata,表示指针指向外部程序存贮器或外部数据存贮器指针,本身(即被指 示地址)应为十六位长度

文档评论(0)

1112111 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档