欢迎来到第壹文秘! | 帮助中心 分享价值,成长自我!
第壹文秘
全部分类
  • 幼儿/小学教育>
  • 中学教育>
  • 高等教育>
  • 研究生考试>
  • 外语学习>
  • 资格/认证考试>
  • 论文>
  • IT计算机>
  • 法律/法学>
  • 建筑/环境>
  • 通信/电子>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 第壹文秘 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    《单片机技术及应用》教案——项目0 C程序基础知识.docx

    • 资源ID:1371251       资源大小:38KB        全文页数:10页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    账号登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    快捷下载时,如果您不填写信息,系统将为您自动创建临时账号,适用于临时下载。
    如果您填写信息,用户名和密码都是您填写的【邮箱或者手机号】(系统自动生成),方便查询和重复下载。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    《单片机技术及应用》教案——项目0 C程序基础知识.docx

    教学实施方案课题名称单片机技术及应用实训部审批任务名称项目C程序基础知识年月曰学时20学时授课时间授课班级授课教师一、教学目标Ca知识目标掌握C程序在51系列单片机中的应用自技能目标掌握YL-236装置完成任务的电路连接及编程方法人情感目标培养团队合作意识及逻辑意识二、重点难点i教学重点C程序基础知识曾教学难点掌握C程序在51系列单片机中的应用三、学习内容一、设计任务导入单片机与计算机是通过什么语言进行交流的呢?这些语言是怎么使用的?二、【知识链接一1C程序的基础知识LC程序的基本结构(1) C程序是由函数构成的。一个C源程序至少且仅包含一个main函数,也可以包含一个main函数和若干其他函数。函数体的内容由一对1括起来,必须成对出现。(2) main为“主函数”,一个C程序总是从main函数开始执行,而且不论main函数在整个程序中的位置如何。(3) C程序书写格式自由,一行内可以写几条语句,一条语句可以分写在多行上。(4) 每条语句和数据声明的最后必须有一个分号,分号是C语句的必要组成部分,不可缺少。既使程序中最后一条语句也应包含分号。2 .文件包含“文件包含”是指一个文件将另外一个文件的内容全部包含进来。其格式为:#include文件名称#include"文件名称两者区别在于""和。表示头文件在编译器(KeiIC51)的安装目录下,一般都是编译器自带的头文件;“”表示头文件在当前工程的目录下,一般都是自己写的头文件,编译器将首先查找当前目录,如果没找到,则在由菜单选择项所确定的目录中查找。任务2-1-1的程序中,文件a89x52.h在路径“C:KeilC51INCAtme,中,是编译器自带的头文件,它主要定义了ATMEL公司的52单片机内部相关资源名称,以方便使用。3 .KeilC51单片机集成开发环境KeilC51是目前使用最广泛的基于51单片机内核的开发平台之一,其编译器性能较好。4 .使用KeilC的关键字sbt来定义位变量第一种方法:Sbit位变量名二位地址值第二种方法:Sbit位变量名二字节名称序号第三种方法:Sbit位变量名二字节地址值序号例如:sbitOV=PSW20【知识链接二】程序流程图与程序的构成等1 .程序流程图程序流程图是用一些图框来表示各种操作,直观形象,易于理解。美国国家标准化协会ANSI(AmericanNationalStandardInStitUte)规定的一些常用的流程图符号如知识链接,如图2-1所示。知识链接图2-12 .程序的构成程序二数据结构+算法对数据的指述,在程序中指定数据的类型和数据的组织形式,即数据结构。对操作的描述,即操作步骤,也就是算法。3 .逻辑运算符“!”的作用为逻辑非运算符,其作用是将逻辑量或位变量的值取反,即原来为1的,变为0;原来为0的,变为1。【知识链接三】C51的数据结构一、常量与变量C语言的基本数据类型,按其取值是否可改变分为常量和变量两种。在程序执行过程中,其值不发生改变的量称为常量,取值可变的量称为变量。1 .数值常量数值常量也称为常数,例如12.-5.3-c,、“abc”等。其中12为整型常量,-5.3为浮点型常量,'d为字符型常量,“abc”为字符串常量。2 .符号常量在C语言中,可以用一个标识符(标识符的定义见下文)来表示一个常量,称之为符号常量。符号常量在使用之前必须先定义,其一般形式为:“define标识符常量”。其中,define也是一条预处理命令,称为宏定义命令,其功能是把该标识符定义为其后的常量值。一经定义,以后在程序中所有出现该标识符的地方均代之以该常量值。二、变量值可以改变的量称为变量。一个变量应该有一个名字,在内存中占据一定的存储单元,在该存储单元中存放变量的值。请注意:变量名与变量值的区别如知识链接图2-2所示。在C语言中,要求对所有用到的变量做强制定义,也就是“先aJ变量名定义,后使用”。夫=R在C语言中用来标识变量名、符号常量名、函数名、数组名、J变量值类型名等的有效字符序列称为标识符。简单地说,标识符就是一个名存储单元字。知识链接图2-2C语言规定标识符只能由字母、数字和下划线三种字符组成,且第一个字符必须为字母或下划线。要注意的是,C语言中大写字母与小写字母被认为是两个不同的字符,即Sum与sum是两个不同的标识符。1 .整型变量整型变量的基本类型符为i11t,在int之前可以根据需要分别加上修饰符。在KeilC中规定,基本整型数据在存储器中占用2个字节(即16bit)、长整型占用4个字节的存储空间。知识链接表2-1列出了各种整型数据的有关数据。知识链接表2-1整数类型的有关数据类型关键字位数数值范围基本类型signedint16-3276832767即-2“(215-l)unsignedint16065535即0(216-l)长整型signedlongint32-21474836482147483647即-2-(231-l)unsignedlongint3204294967295即0(232-l)2 .字符型变量字符型变量的基本类型符为Char,其表达的范围是T28+127;字符型变量只有一个修饰符unsigned,即无符号数,而加上了UnSigned后,其表达的范围变为0255。3 .浮点型变量在8位单片机中,尽量不要用浮点型数据,这里不做介绍。4 .KeilC51特有的变量类型(1)位型变量位型变量是使用一个二进制位来存放数据,其值只有“0”和“I”两种。位型变量的定义和其他数据类型一样,关键字为bit。例如:bita=0;/定义一个位变量,并赋初值为0(2) Sfr型变量80C51内部有一些特殊功能寄存器(sfr)o为定义、存取这些特殊功能寄存器,C51增加了sfr型数据,相应也增加了sfr、sfrl6和Sbit这3个关键字。例如:sfrP0=0x80;/定义8位特殊功能寄存器POsfrl6DPTR=0x82;定义16位特殊功能寄存器DPTR三、变量的存储类型在变量前加一个修饰符可以指定变量的存储器类型。data:片内RAM低128B,直接寻址访问,存储类型默认为data。bata;片内RAM中20H2FH,可以位寻址。idata;片内RAM中256B,间接寻址访问。xata:片外RAM中或片外I/O口扩展。COde;RoM中一般为固定数据表格,用MoVC指令查表访问。例如:unsignedcharbdataflag;sbitFO=flagO;sbitFl=flagl;【知识链接四】C语言函数的相关知识一个较大的单片机应用程序一般应分为若干个程序模块,每一个程序模块用来实现一个定的功能。所有的高级语言都有子程序这个概念,用子程序实现模块的功能。在C语言中子程序的作用是由函数来完成的。一个C程序可由一个主函数和若干个其他函数构成,由一个主函数调用其他函数,其他函数也可以互相调用。同一个函数可以被一个或多个函调用任意多次。任何函数都是平行的,即在定义函数时是分别进行、互相独立的。一个函数并不从属于另一个函数,即函数不能嵌套定义。函数可以互相调用,但main函数不能被其他函数调用。一、函数定义的一般形式函数定义的一般形式为:类型标识符函数名(形参数说明表列)说明部分语句)“类型标识符”指定函数返回值的类型,若无返回值,可用VOid定义无类型;若有返回值,则指定其数据类型。“形式参数”是该函数的输入源数据,也可为空。二、函数参数和函数的返回值L形式参数和实际参数在调用函数时,若主调函数和被调函数之间有数据传递关系,在定义函数时函数名后面括号中的变量名称为“形式参数”(下面简称形参);在主调函数中调用一个函数时,函数名后面括号中的参数(也可以是一个表达式)为“实际参数”(下面简称实参)。函数的形参和实参具有以下特点:(1)形参变量只有在被调用时才分配内存单元,在调用结束时,即刻释放所分配的内存单元。形参只在函数内部有效,函数调用结束返回主调函数后则不能再使用该形参变量。(2)实参可以是常量、变量、表达式、函数等,无论实参是何种类型的量,在进行函数调用时,它们都必须具有确定的值,以便把这些值传送给形参。因此应预先用赋值、输入等办法使实参获得确定值。(3)实参和形参在数量上、类型上、顺序上应严格一致,否则会发生“类型不匹配”的错误。(4)函数调用中发生的数据传送是单向的。即只能把实参的值传送给形参,而不能把形参的值反向地传送给实参。因此在函数调用过程中,形参的值发生改变,而实参中的值不会变化。2.函数的返回值有时希望通过函数调用能得到一个确定的值,这就是函数的返回值。例如,在键盘程序中,主函数调用键盘函数得到一个键值,然后根据不同的键值做相应的动作。例如:需要说明的是:(1)函数的返回值是由returm语句获得的,如果需要带回函数值,被调用函数中必须包含returm语句;如果不需要带回函数值,被调用函数中可以不要return语句。(2)return)语句后面的括号可以不要,它后面可以是一个表达式。(3)函数返回值的类型和函数定义中函数的类型标识符应保持一致。如果两者不一致,则以函数类型标识符为准,自动进行类型转换。(4)不返回函数值的函数,可以明确定义为“空类型”,类型说明符为“void”。为了使程序有良好的可读性并减少出错,凡不要求返回值的函数都应定义为空类型。三、局部变量和全局变量1 .局部变量在一个函数内部定义的变量是内部变量,它只在本函数范围内有效,也就是只有在本函数内才能使用它们,在此函数以外是不能使用这些变量的,这称为“局部变量”。局部变量的使用中要注意:(1)主函数中定义的变量也只在主函数中有效,不会因为在主函数中定义而在整个程序中有效。主函数也不能使用其他函数中定义的变量。(2)不同函数可以使用相同名字的变量,它们代表不同的对象,互不干扰。(3)形式参数也是局部变量。2 .全局变量在函数以外定义的变量称为外部变量,外部变量是全局变量(也称为全程变量)。全局变量可以为本文件其他函数所共用,它的有效范围是从定义变量的位置开始到本源文件结束。全局变量的使用中应注意:(1)设置全局变量的作用是增加函数间数据联系的渠道。由于同一文件中的所有函数都能引用全局变量的值,因此如果在一个函数中改变了全局变量的值,就能影响到其他函数,相当于各个函数间有直接的传递渠道。(2)建议不必要时不要使用全局变量。全局变量过多,会降低程序的清晰性。(3)如果在同一源文件中,全局变量和局部变量同名,在局部变量的作用范围内,全局变量被“屏蔽”,即它不起作用。【知识链接五】C语言的数组实际工作中,往往需要对一组数据进行操作。这一组数据之间有一定联系,如果采用定义变量的方法,需要定义多个变量,并且难以体现各个变量之间的关系。这时,需要用到数组。数组是有序数据的集合。数组中的每个元素都属于同一个数据类型。用一个统一的数组名和下标来唯一地确定数组中的元素。一、一维数组的定义和引用一维数组的定义方式为:类型说明符数组名常量表达式例如:chara10;(1)数组的类型实际上是指数组元素的取值类型。对于同一个数组,其所有元素的数据类型都是相同的。(2

    注意事项

    本文(《单片机技术及应用》教案——项目0 C程序基础知识.docx)为本站会员(p**)主动上传,第壹文秘仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知第壹文秘(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 1wenmi网站版权所有

    经营许可证编号:宁ICP备2022001189号-1

    本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。第壹文秘仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第壹文秘网,我们立即给予删除!

    收起
    展开