- 1、本文档共55页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第二章 单片机的C语言编程 2.1 概述 2.2 C51程序结构 2.3 C51的数据类型与运算符 2.4 C51的函数 2.5 程序设计 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,表示指针指向外部程序存贮器或外部数据存贮器指针,本身(即被指 示地址)应为十六位长度。
您可能关注的文档
- 禽病的诊断方法与控制.ppt
- 离子键课件鲁科版选修32012.ppt
- 第2章 JAVA语言基础.ppt
- 第2章 VFP语言基础.ppt
- 第2章 用图表展示数据.ppt
- 第2章-共混改性基本原理4.ppt
- 第2章-计算机系统.ppt
- 材料科学技术.ppt
- 私人管家介绍.ppt
- 第2章1直流电动机调速方法.ppt
- 《GB/T 32151.42-2024温室气体排放核算与报告要求 第42部分:铜冶炼企业》.pdf
- GB/T 32151.42-2024温室气体排放核算与报告要求 第42部分:铜冶炼企业.pdf
- GB/T 38048.6-2024表面清洁器具 第6部分:家用和类似用途湿式硬地面清洁器具 性能测试方法.pdf
- 中国国家标准 GB/T 38048.6-2024表面清洁器具 第6部分:家用和类似用途湿式硬地面清洁器具 性能测试方法.pdf
- 《GB/T 38048.6-2024表面清洁器具 第6部分:家用和类似用途湿式硬地面清洁器具 性能测试方法》.pdf
- 《GB/T 18238.2-2024网络安全技术 杂凑函数 第2部分:采用分组密码的杂凑函数》.pdf
- GB/T 18238.2-2024网络安全技术 杂凑函数 第2部分:采用分组密码的杂凑函数.pdf
- 《GB/T 17215.686-2024电测量数据交换 DLMS/COSEM组件 第86部分:社区网络高速PLCISO/IEC 12139-1配置》.pdf
- GB/T 13542.4-2024电气绝缘用薄膜 第4部分:聚酯薄膜.pdf
- 《GB/T 13542.4-2024电气绝缘用薄膜 第4部分:聚酯薄膜》.pdf
最近下载
- 公共危机案例.pdf VIP
- 3.5跨学科实践:探索厨房中的物态变化问题 +章节梳理延伸 课件 人教版(2024)物理八年级上册.pptx VIP
- 初中物理作业设计优秀案例(3篇).pdf
- 2023年急性ST段抬高型心肌梗死诊断和治疗指南.docx
- 大气的受热过程说课稿2023-2024学年高中地理湘教版(2019)必修一.docx VIP
- 外研版2023必修第一册Unit 3 Family matters重点词汇短语练习含答案.pdf
- 国家开放大学《心理学》形考任务1-4参考答案.docx VIP
- 售后转正工作总结PPT.pptx
- ISO45001品质中心第三方审核记录.doc
- 3.5+跨学科实践:探究厨房中的物态变化问题++课件-2024-2025学年物理人教版八年级上册.pptx VIP
文档评论(0)