ImageVerifierCode 换一换
格式:PPT , 页数:160 ,大小:3.11MB ,
资源ID:2122748      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/2122748.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(第3章C语言编程基础.ppt)为本站会员(b****2)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

第3章C语言编程基础.ppt

1、单片机原理与接口技术电子教案单片机原理与接口技术电子教案第第 章章成都大学工业制造学院 程 跃3C51C51语言编程基础语言编程基础内容概要内容概要本章在读者已掌握标准本章在读者已掌握标准C C语言前提下语言前提下,初步介绍如如何使用何使用C51C51来编写来编写AT89C51AT89C51单片机的应用程序单片机的应用程序。C51C51是在标准是在标准C C的基础上,根据单片机存储器硬件的基础上,根据单片机存储器硬件结构及内部资源,扩展了相应的数据类型和变量,结构及内部资源,扩展了相应的数据类型和变量,而C51在语法规定、程序结构与设计方法上,都与标准在语法规定、程序结构与设计方法上,都与标准

2、C C相同。相同。本章重点介绍本章重点介绍C51C51对标准对标准C C所扩展的部分所扩展的部分,并通过一些例程例程来介绍C51的程序设计思想。2单片机入门主要掌握以下知识和应用单片机入门主要掌握以下知识和应用最小系统能够运行起来的必要条件。1.电源 2.晶振3.复位电路对单片机任意IO口的随意操作 1.输出控制电平高低2.输入检测电平高低。定时器:重点掌握最常用的方式2中断:外部中断、定时器中断、串口中断串口通信:单片机之间、单片机与计算机间3目前51系列单片机编程的C语言都采用Keil C51(简称C51),Keil C51是在标准是在标准C C语言基础上发展起来的。语言基础上发展起来的。

3、C语言是美国国家标准协会(ANSI)制定的编程语言标准,1987年ANSI公布87 ANSI C87 ANSI C,即标准C语言。Keil C51Keil C51语语言言是在是在ANSI CANSI C的基础上针对的基础上针对5151单片机的硬件特点进行的扩展,单片机的硬件特点进行的扩展,并向51单片机上移植,经过多年努力,C51语言已经成为公认的高效、简洁而又贴近51单片机硬件的实用高级编程语言。3.1 3.1 编程语言编程语言Keil C51Keil C51简介简介4 C 语言具有结构化和模块化特点,便于阅读和维护。C 语言可移植性好,很多微控制器都支持C 编译器。功能化的代码能够很方便的

4、从一个工程移植到另一个工程,从而减少了开发时间。提供的库函数包含许多标准子程序,具有较强的数据处理能力。使用使用C C语言的优点语言的优点5使用使用C C语言的优点语言的优点 C 语言编写的程序比汇编语言编写的程序更符合人们的思考习惯,寄存器分配,不同存储器的寻址及数据类型等细节交由编译器管理,开发者可以更专心的考虑算法,而不是考虑一些细节问题。这样可以减少编程出错的机率,从而提高开发效率,减少调试的时间。C 语言和微控制器是相对独立的,开发者不必知道处理器的具体内部结构和处理过程。当用新型的微控制器开发程序时,可以很快上手,减少学习时间和程序开发时间。6C51C51与标准与标准C C的主要区

5、别的主要区别(1 1)头文件的差异。)头文件的差异。51系列单片机厂家有多个,它们的差异在于内部资源如差异在于内部资源如定时器、中断、定时器、中断、I/OI/O等数量以及功能的不同等数量以及功能的不同,而对使用者来说,只需要将相应的功能寄存器的头文件加载在程序内,就可实现所具有的功能。因此,Keil C51Keil C51系列的头文件系列的头文件集中体现了各系列芯片的不同资源及功能。(2 2)数据类型的不同)数据类型的不同。51系列单片机包含位操作空间和丰富的位操作指令,因此Keil C51与ANSI C相比又扩展了4种类型,以便能够灵活地进行操作。电脑CPU是32位或64位,运算能力强,内存

6、大,大量使用float型与long int型变量,单片机一般为8位或16位,运算能力较弱,以char型为主,int型为辅7(3 3)数据存储类型的不同)数据存储类型的不同。C语言最初是为通用计算机设计的,在通用计算机中只有一个程序和数据统一寻址的内存空间,而而5151系列单片机系列单片机有片内、有片内、外程序存储器,还有片内、外数据存储器。外程序存储器,还有片内、外数据存储器。标准标准C C并没有提供这部分存储并没有提供这部分存储器的地址范围的定义。器的地址范围的定义。此外,对于AT89S51单片机中大量的特殊功能寄存器也没有定义。(4 4)标准)标准C C语言语言没有没有处理处理单片机中断单

7、片机中断的定义的定义。(5 5)Keil C51与标准C的库函数库函数有较大的不同。由于标准C的中的部分库函数部分库函数不适于嵌入式处理器系统不适于嵌入式处理器系统,因此被排除在Keil C51之外,如字符屏幕和图形函数。8(6)目标代码 电脑生成.exe格式,编译完成后直接在电脑上运行,单片机编译生成.bin代码文件,需要烧写到单片机中并结合外围电路执行。(7)仿真调试 单片机的C程序在电脑上进行编译,然后需通过仿真器连接后进行仿真调试,近年来随着电路仿真软件的不断完善,也可通过proteus等软件直接在电脑上进行仿真调试。9 但是从数据运算操作、程序控制语句以及函数的但是从数据运算操作、程

8、序控制语句以及函数的使用上来说,使用上来说,Keil C51Keil C51与标准与标准C C几乎没有什么明显的几乎没有什么明显的差别。差别。如果程序设计者具备了有关标准C的编程基础,只要注意Keil C51与标准C的不同之处,并熟悉AT89S51单片机的硬件结构,就能够较快地掌握Keil C51的编程。10(1 1)编译器)编译器:由源代码文件生成目标文件由源代码文件生成目标文件(2 2)开发套件)开发套件:包含了编译器、链接器等开发工具的组合包包含了编译器、链接器等开发工具的组合包(3 3)IDEIDE(Integrated Development Environment Integrat

9、ed Development Environment 集成开发环境)集成开发环境)集成开发环境)集成开发环境)将项目管理、源代码编辑和程序编译、链接、调试等各种工具组合在一将项目管理、源代码编辑和程序编译、链接、调试等各种工具组合在一个功能强大的环境中,具有良好人机界面。个功能强大的环境中,具有良好人机界面。8051单片机所使用的单片机所使用的C语言编译器简称为语言编译器简称为 Cx51例如包含例如包含Cx51、Ax51、BL51、LIB51、OH51、RTX51等等KEIL C51 Keil Keil Vision3 IDEVision3 IDE3.2 Keil C513.2 Keil C5

10、1的开发工具的开发工具11Keil Keil Vision3 IDEVision3 IDECx51.exeKeil C51Keil C51开发套件开发套件 v7.50 v7.5012C C语言结构特点语言结构特点一个C程序由一个或多个函数组成,其中必须有一个用main命名的主函数。每个函数由头部和函数体两部分组成。每个C语句以“;”结尾。C程序的书写格式比较自由。可以在程序的任何位置用/*.*/对C程序中的任何部分作注释。可以在行末用/追加注释。13C51的程序结构#include#include void delay()void delay();void void main main()()

11、delay();delay();P0=0 x33 P0=0 x33;例:文件例:文件例:文件例:文件led.cled.c内的代码如下:内的代码如下:内的代码如下:内的代码如下:头文件头文件头文件头文件(一个或若干个)(一个或若干个)主函数主函数主函数主函数n 程序的入口程序的入口 函数名固定,且与书写的位置无关函数名固定,且与书写的位置无关n 有且仅有一个有且仅有一个 函数声明或定义函数声明或定义函数声明或定义函数声明或定义n 库函数或用户自定义的函数库函数或用户自定义的函数n 可以有若干个可以有若干个C51程序大体上是若干函数的集合14单片机控制单片机控制LEDLED(电路图)(电路图)15

12、我的第一个程序(单片机控制我的第一个程序(单片机控制LEDLED点亮)点亮)#include sbit LED=P10;void main()/主程序 LED=0;/点亮LED while(1);16单片机控制单片机控制LEDLED闪烁(程序)闪烁(程序)#include#define uchar unsigned char#define uint unsigned intsbit LED=P10;void delay(uint x)/延时程序 uchar i;while(x-)for(i=0;i 120;i+);void main()/主程序 while(1)LED=LED;/LED灯闪烁

13、delay(400);17KEILKEIL与与PROTEUSPROTEUS快速入门快速入门 Keil C51Keil C51是是美美国国Keil SoftwareKeil Software公司出品的公司出品的5151系列兼容单系列兼容单片机片机C C语言软件开发系统,与汇编相比,语言软件开发系统,与汇编相比,C C语言在功能上、结语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用用过汇编语言后再使用C C来开发,体会更加深刻。来开发,体会更加深刻。Keil C51软件提供丰富的库函数和功能强大的集成开发调

14、试工具,全Windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。18 1、建立一个新工程 单击Project菜单,在弹出的下拉菜单中选中New Project选项,如图3所示。图3 新建工程文件KEIL C51KEIL C51快速入门快速入门19 2、然后选择你要保存的路径,输入工程文件的名字,如图4所示,然后点击保存。图4 新建工程文件的保存路径KEIL C51KEIL C51快速入门快速入门20 3、这时会弹出一个对话框,要求你选择单片机的型号

15、,你可以根据你使用的单片机来选择,keil c51几乎支持所有的51内核的单片机,如图所示,选择89C51之后,右边栏是对这个单片机的基本的说明,然后点击确定。图5 选择单片机的型号KEIL C51KEIL C51快速入门快速入门214、完成上一步骤后,屏幕如图6所示。图6 完成新建工程文件KEIL C51KEIL C51快速入门快速入门22 下面可以编写程序。5、在图2-7中,单击“File”菜单,再在下拉菜单中单击“New”选项。新建文件后屏幕如图8所示。图7 新建文档图8 完成 新建文档KEIL C51KEIL C51快速入门快速入门23 此时光标在编辑窗口里闪烁,这时可以键入应用程序了

16、,建议首先保存该空白的文件,单击菜单上的“File”,在下拉菜单中选中“Save As”选项单击,屏幕如下图所示,在“文件名”栏右侧的编辑框中,键入欲使用的文件名,用C语言编写扩展名为(.c)如果用汇编语言编写扩展名必须为(.asm)。然后,单击“保存”按钮。如图8所示。图8 保存新建文档KEIL C51KEIL C51快速入门快速入门24 6、回到编辑界面后,单击“Target 1”前面的“”号,然后在“Source Group 1”上单击右键,弹出菜单9。图9 打开添加文档界面KEIL C51KEIL C51快速入门快速入门25 然后单击“Add File to Group Source Group 1”,屏幕如图10所示。图10 添加文档KEIL C51KEIL C51快速入门快速入门26选中main.c,然后单击“Add”屏幕如下图所示。注意到“Source Group 1”文件夹中多了一个子项“main.c”子项的多少与所增加的源程序的多少相同。7、现在便可输入程序了,输入完毕进行调试便可运行。图10 完成添加文档KEIL C51KEIL C51快速入门快速入门27Prote

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1