第2部分 简单c51程序介绍.ppt_第1页
第2部分 简单c51程序介绍.ppt_第2页
第2部分 简单c51程序介绍.ppt_第3页
第2部分 简单c51程序介绍.ppt_第4页
第2部分 简单c51程序介绍.ppt_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、简单C51程序介绍,由于C语言开发能力最强,应用最广泛,所以采用C语言进行8051单片机应用系统开发,已被公认为是最有效的手段之一。 MCS-51系列单片机的C语言程序设计,简称C51程序设计。,如何学习C语言编程?,编程似写作 先学“字词句”和“语法”,目标是“写作”。 学习数据类型、控制结构、语法规则等学语基 掌握程序分析、算法与编程写文章 仅仅读书是不够的 程序是编出来的,程序是调出来 在编程实践中消化知识。 没有天生的程序员 初学者:有点难。 没有学不会的,只有学不精的除非自己放弃。 出于蓝胜于蓝:超过你的老师完全可能。 循次渐近很重要 阅读/分析程序摹仿编程掌握常见程序模块简单程序复

2、杂编程 仅是起点,而非终点 从此编程与你相伴而行真正的程序员从此起步。,C语言概述,王美平,主要内容:,程序设计语言的发展,CPU指令系统,由0、1序列构成的指令码组成 如:10000000 加 10010000 减,用助记符号描述的指令系统 如 ADD A, B,面向机器的语言,程序设计是数据被加工的过程,客观世界可以分类,对象是类的实例 对象是数据和方法的封装 对象间通过发送和接受消息发生联系,程序设计关键是定义类,并由类派生对象,一、 C语言特点 语言简洁、紧凑、灵活 运算符和数据类型丰富 程序设计结构化、模块化 可以直接操纵硬件 生成目标代码质量高 可移植性好,32个关键字:(由系统定

3、义,不能重作其它定义) auto break case char const continue default do double else enum extern float for goto if int long register return short signed sizeof static struct switch typedef unsigned union void volatile while,9种控制语句: if( )else for( ) while( ) dowhile( ) continue break switch goto return,C语言程序设计 第一章

4、 C语言概述,34种运算符: 算术运算符:+ - * / % + - 关系运算符: = != 逻辑运算符:! ,输出: This is a c program.,例1.2 求两数之和。 /*-output sum of a add b-*/ #include main ( ) int a,b,sum; /*定义变量a,b及和sum*/ a=2; /*向a赋值*/ b=3; /*向b赋值*/ sum=a+b; /*求和*/ printf(“sum is %d .n”,sum); /*打印结果*/ ,结果:sum is 5.,例1.3,/* example1.3 calculate the sum

5、 of a and b*/ #include main() int a,b,sum; a=2; b=3; sum=add(a,b); printf(“sum= %dn”,sum); int add(int x,int y) int z; z=x+y; return(z); ,运行结果: sum=5,格式特点 习惯用小写字母,大小写敏感 不使用行号,无程序行概念 可使用空行和空格 常用锯齿形书写格式,main( ) . . . . . . . ,main( ) int i , j , sum; sum=0; for(i=1; i10;i+) for(j=1;j10;j+) sum+=i*j ;

6、printf(“%dn”,sum); ,优秀程序员的素质之一: 使用TAB缩进 对齐 有足够的注释 有合适的空行,结构特点 1、c程序是由函数构成的,每个程序必须有且仅有一个main函数。 2、一个函数由两部分组成 函数首部 函数类型 函数名 函数参数类型 函数参数名。 int max (int x, int y) 函数体: 内的部分 声明部分:声明 变量、函数 执行部分: 由语句构成,3、C程序总是从main函数开始执行。 4、C本身没有I/O语句, I/O用库函数。 5、C用“;”作为语句终止符。 6、C程序书写格式自由,无行号。 7、可用/* */或/为程序中的任何部分作注释。,三、C5

7、1程序的调试:,C程序开发步骤,f.exe,程序代码的录入, 生成源程序*.c,语法分析查错,翻译 生成目标程序*.obj,与其它目标程序或库 链接装配,生成可执行 程序*.exe,C51程序开发过程,keil软件的使用,启动Keil C51时的屏幕,Keil C51 软件是众多单片机应用开发的优秀软件之一,它集编辑,编译,仿真于一体,支持汇编 和C 语言的程序设计,界面友好,易学易用。下面介绍Keil C51软件的使用方法。 双击桌面上的 图标,屏幕如下图所示。几秒钟后出现编辑界面,进入Keil C51后的编辑界面,项目窗口,文件编辑窗口,输出窗口,简单程序的调试学习程序设计语言、学习某种程

8、序软件,最好的方法是直接操作实践。下面通过简单的编程、调试,引导大家学习Keil C51软件的基本使用方法和基本的调试技巧。,1)建立一个新工程单击Project菜单,在弹出的下拉菜单中选中NewProject选项,然后选择你要保存的路径,输入工程文件的名字,比如保存到C51目录里,工程文件的名字为C51如下图所示,然后点击保存.,这时会弹出一个对话框,要求你选择单片机的型号。 比如用的较多的Atmel 的89C51,双击Atmel,选择89C51之后,右边栏是对这个单片机的基本的说明,然后点击确定.,完成上一步骤后,屏幕如下图所示,默认的目标名,点开后包含一个文件组Source Group1

9、,接下来再为你的工程新建一个文件2)新建文件。在下图中,单击“File”菜单,再在下拉菜单中单击“New”选项,新建文件后屏幕如下图所示,在弹出的窗口里面写入你的C程序:,现在,请输入如下的C语言源程序: #include /包含文件#include void main(void) /主函数 SCON=0 x52;TMOD=0 x20;TH1=0 xf3;TR1=1; /此行及以上3行为PRINTF函数所必须printf(“Hello I am KEIL. n”); /打印程序执行的信息printf(“I will be your friend.n”);while(1);,程序输入完毕后,如下

10、图所示,单击菜单上的“File”,在下拉菜单中选中“Save As”选项单击,屏幕如下图所示:路径要选择与工程同一目录;在“文件名”栏右侧的编辑框中,键入欲使用的文件名,同时,必须键入正确的扩展名。注意,如果用语言编写程序,则扩展名为(.c);如果用汇编语言编写程序,则扩展名必须为(.asm)。然后,单击“保存”按钮。,3)加载文件。回到编辑界面后,单击“Target 1”前面的“”号,然后在“Source Group 1”上单击右键,弹出如下菜单,然后单击“Add File to Group Source Group 1” 屏幕如下图所示,右单击这里,选中Test.c,然后单击“Add”。这

11、时候,左边的文件夹“Source Group 1”前面就有了一个“+”号,点开后屏幕如下图所示。 注意到“Source Group 1”文件夹中多了一个子项“Text1.c”了吗?子项的多少与所增加的源程序的多少相同,4)编译文件。在上图中,单击“Project”菜单,再在下拉菜单中单击“Built Target”选项(或者使用快捷键F7)进行编译,编译成功后,屏幕如下所示,输出窗口,5)调试。再单击“Debug”菜单,在下拉菜单中单击“Start/Stop Debug Session”(或者使用快捷键Ctrl+F5)启动Debug开始调试,屏幕如下所示,6)调出输出窗口。单击“View”菜单

12、,在下拉菜单中单击“Serial window#1”(显示串行窗口1),屏幕如下所示:利用串行窗口可在用户程序调试过程中实现人机交互对话,对程序运行结果进行显示。若程序中调用了库函数scanf()和printf(),必须利用该窗口完成输入操作。,7)运行并显示结果。单击“Debug”菜单,在下拉菜单中单击“GO”(运行),屏幕如下所示:,至此,我们在Keil C51上做了一个完整工程的全过程。,但这只是纯软件的开发过程,如何使用程序下载器看一看程序运行的结果呢?8)单击“Project”菜单,再在下拉菜单中单击“Options for TargetTarget1”目标属性。 在下图中,单击“O

13、utput”中单击“Create HEX File” 选项,使程序编译后产生HEX代码,供下载器软件使用。把程序下载到AT89S51单片机中。,作业,1. 简述C语言的主要结构特点。 2. 请参照例题,编写一个C程序,输出以下信息: - your name - 3. 上机运行本课件中的3个例题,熟悉C51程序的调试过程。,#include /用keil软件调试时必须加 #include main() SCON=0 x52;TMOD=0 x20;TH1=0 xf3;TR1=1; /以上4行为输入、输出函数所必须 printf(“This is a c program.n”); while(1);

14、 /用keil软件调试时必须加 ,例1.1,#include /用keil软件调试时必须加 #include main() int a,b, sum; /*定义变量a,b及和sum*/ SCON=0 x52;TMOD=0 x20;TH1=0 xf3;TR1=1; /以上4行为输入、输出函数所必须,定义变量后加上 a=2; /*向a赋值*/ b=3; /*向b赋值*/ sum=a+b; /*求和*/ printf(“sum is %d .n”,sum); /*打印结果*/ while(1); /用keil软件调试时必须加 ,例1.2,#include /用keil软件调试时必须加 #include main() i

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论