- 1、本文档共173页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章 单片机C语言及程序设计 第4章 单片机C语言及程序设计 4.1 C51概述 4.2 C51数据类型及存储 4.3 C51变量的定义及数据存储区域 4.4 C51位变量的定义 4.5 C51特殊功能寄存器的定义 第4章 单片机C语言及程序设计 本章主要讨论C51变量的定义和函数的定义,以及Keil C软件的使用等。 本章内容的安排,认为学生已经学习过C语言,具有C语言的基本知识,因此,本章内容完全是结合单片机来讲解,也就是补充C语言在单片机方面的概念、数据定义和函数定义等。 通过本章学习,使学生能够比较顺利地编写C51程序。 4.1 C51概述 主要内容 4.1.1 C语言编程的优势 4.1.2 C51与ANSI C的区别 4.1.3 C51扩展的关键字 4.1 C51概述 学习单片机C语言的必要性 随着单片机性能的不断提高,C语言编译调试工具的不断完善,以及现在对单片机产品辅助功能的要求、对开发周期不断缩短的要求,使得越来越多的单片机编程人员转向使用C语言,因此有必要在单片机课程中讲授“单片机C语言”。 “C51”概念:为了与ANSI C区别,把“单片机C语言”称为“C51”,也称为“Keil C”。 4.1.1 C语言编程的优势 在编程方面,使用C51较汇编语言有诸多优势: 1)编程容易 2)容易实现复杂的数值计算 3)容易阅读与交流 4)容易调试与维护程序 5)容易实现模块化开发 6)程序可移植性好 4.1.2 C语言与ANSI 的区别 用汇编语言编写单片机程序时,必须要考虑其存储器的结构,尤其要考虑其片内数据存储器、特殊功能寄存器是否正确合理的使用,以及按照实际地址端口数据的处理。 用C51编写程序,虽然不像汇编语言那样需要具体地组织、分配存储器资源,但是C51对数据类型和变量的定义,必须要与单片机的存储结构相关联,否则编译器不能正确地映射定位。 4.1.2 C语言与ANSI 的区别 用C51编写单片机程序,与用ANSI C编写程序的不同之处是,需要根据单片机存储器结构及内部资源,定义相应的数据类型和变量。 其它的语法规定、程序结构及程序设计方法,都与ANSI C相同。所以本章主要介绍C51各种变量的定义、指针定义、函数定义和混合编程。 4.1.3 C51扩展的关键字 由于单片机在结构及编程上的特殊要求,C51有自己的特殊关键字,称之为C51扩展的关键字,下面给出常用的C51扩展的关键字。 _at_ bdata bit code data idata interrupt pdata reentrant sbit sfr sfr16 using volatile xdata 这些关键字在后面会陆续接触到,此处先不给出它们的含义。 4.2 C51数据类型及存储 主要内容 4.2.1 C51的数据类型 4.2.2 C51数据的存储 4.2.1 C51的数据类型 4.2.1 C51的数据类型 数据类型转换 1)自动转换 转换规则是向高精度数据类型转换、向有符号数据类型转换。如字符型变量与整型变量相加时,则位变量先转换字符型或整型数据,然后相加。 2)强制转换 像ANSI C一样,通过强制类型转换的方式进行转换。如: unsigned int b; float c; b=(int)c; 4.2.2 C51数据的存储 MCS-51单片机只有bit和unsigned char两种数据类型支持机器指令,而其它类型的数据都需要转换成bit或unsigned char型进行存储。 为了减少单片机的存储空间和提高运行速度,要尽可能地使用unsigned char型数据。 一、位变量的存储 bit和sbit型位变量,直接存于RAM的位寻址空间,包括低128位和特殊功能寄存器位。 4.2.2 C51数据的存储 二、字符变量的存储 字符变量(char):无论是unsigned char数据还是signed char数据,均为1个字节,能够被直接存储在RAM中,可以存储在0~0x7f区域,也可以存储在0x80~0xff区域,与变量的定义有关。 unsigned char数:可直接被MSC-51接受 signed char数据:用补码表示。需要额外的操作来测试、处理符号位,使用的是两种库函数,代码量大,运算速度降低。 4.2.2 C51数据的存储 三、整型变量的存储 整型变量(int):不管是unsigned int数据还是signed int数据,均为2个字节,其存储方法是高位字节保存在低地
您可能关注的文档
- 第三章化工基础数据-王志忠.ppt
- 科研训练课件_ch1.ppt
- 现场管理实务(PPT-36).ppt
- 基于hadoop的网络数据分析.pptx
- 先秦文学1.ppt
- 社交礼仪23290.ppt
- 粉体与液体涂装原理.ppt
- MATLAB编程与工程应用——第1章 矩阵.ppt
- 第九讲:Web Server软件与网络数据库.ppt
- 第一次审美与艺术鉴赏作业.ppt
- 2025年春新北师大版八年级物理下册全册课件.pptx
- 2025年春新北师大版八年级物理下册全册教学课件.pptx
- 2025年秋季新北师大版八年级上册物理全册教学课件.pptx
- 2025年秋季新人教版九年级上册化学全册课件.pptx
- 2025年新人教版八年级上册物理全册课件.pptx
- 2025年秋季新人教版九年级上册化学全册教学课件(新版教材).pptx
- 新人教版七年级上册英语全册课件(2025年新版教材).pptx
- 锂离子电池前驱体磷酸铁合成方法研究现状及展望.docx
- 2024年东盟石油和天然气更新报告(英文版)-东盟.docx
- DB3209_T 1207.2-2022 建设工程档案管理 第二部分:房屋建筑工程文件归档和档案移交范围.docx
最近下载
- 20210603_京东物流战略梳理与公司治理变革_战略梳理与变革原则沟通.pptx VIP
- 七年级上历史试卷分析.pdf
- 北师大版五年级上册数学计算题每日一练及答案(共15天).pdf VIP
- (2025春新版本)人教版七年级生物下册全册教案.docx
- 2024年山东商务职业学院单招职业技能测试题库及答案解析.docx VIP
- 《化工反应原理与设备》课件—05流化床反应器.ppt VIP
- 通用公司组织架构图模板.pptx
- 数学建模论文(副标题:摩天轮高度与时间的关系).doc
- 个税赡养老人平均分摊协议范文5篇.docx
- 2024年新改版教科版四年级下册科学全册精编教案教学设计(新课标版).docx
文档评论(0)