下载此文档

第3章 KeilC语言及其程序设计.doc


文档分类:办公文档 | 页数:约25页 举报非法文档有奖
1/25
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/25 下载此文档
文档列表 文档介绍
第三章单片机的C51语言
C51语言概述【P60】
C51是在标准C的基础上,根据单片机存储器硬件结构及内部资源,扩展了相应的数据类型和变量,而C51在语法规定、程序结构与设计方法上,都与标准C基本相同。
Keil C语言的编译器及编译过程如图3-1所示。
图3-1 Keil C语言的编译器及编译过程
C语言是美国国家标准协会(ANSI)制定的编程语言标准,1987年ANSI公布87 ANSI C,即标准C语言。
Keil C51语言是在ANSI C的基础上针对51单片机的硬件特点进行的扩展,并向51单片机上移植,经过多年努力,C51语言已经成为公认的高效、简洁而又贴近51单片机硬件的实用高级编程语言。
目前大多数的51单片机用户都在使用C51语言来进行程序设计。
用C51进行单片机软件开发,有如下优点:
(1)可读性好。C51语言程序比汇编语言程序的可读性好,因而编程效率高,程序便于修改。【P53的汇编程序】
(2)模块化开发与资源共享。用C51开发出来的程序模块可以不经修改,直接被其他项目所用,这使得开发者能够很好地利用已有的大量的标准C程序资源与丰富的库函数,减少重复劳动。
(3)可移植性好。为某种型号单片机开发的C语言程序,只需将与硬件相关之处和编译连接的参数进行适当修改,就可以方便地移植到其他型号的单片机上。
例如,为51单片机编写的程序通过改写头文件以及少量的程序行,就可以方便地移植到PIC单片机上。
(4)代码效率高。当前较好的C51语言编译系统编译出来的代码效率只比直接使用汇编语言低10%~20%左右,如果使用优化编译选项,效果会更好。
C51的程序结构
C51程序的基本单位是函数。一个C51源程序至少包含一个主函数,也可以是一个主函数和若干其他函数。主函数是程序的入口。
下面通过一个可实现LED闪烁控制功能的源程序说明C51程序的基本结构。
程序如下:【P60】
#include <> // 51单片机头文件
void delay(); //延时函数声明
sbit p1_0=P1^0; //输出端口定义
main() //主函数
{
While(1) { //无限循环
p1_0=0; //=“0”,LED亮
delay(); //延时
p1_0=1; //=“1”,LED灭
delay(); //延时
}
}
void delay(void) { //延时函数
unsigned char i; //字符型变量i定义
for (i=200;i>0;i---); //循环延时
}
【在仿真时,可以不用连接电源,晶体振荡器,复位电路】
Keil C51的开发环境
Keil C51是德国Keil Software公司开发的用于51系列单片机的C51语言开发软件。Keil C51在兼容ANSI C的基础上,又增加很多与51单片机硬件相关的编译特性,使得开发51系列单片机程序更为方便和快捷,程序代码运行速度快,所需存储器空间小,完全可以和汇编语言相媲美。它支持众多的MCS-51架构的芯片,同时集编辑、编译、仿真等功能于一体,具有强大的软件调试功能,是众多的单片机应用开发软件中最优秀的软件之一。
Keil C51已被完全集成到一个功能强大的全新集成开发环境(IDE)µVision3中【版本在不断更新】,该环境集成了文件编辑处理、编译链接、项目(Project)管理、窗口、工具引用和仿真软件模拟器以及Monitor51硬件目标调试器等多种功能
,这些功能可在Keil µVision3环境中进行操作。
µVision3内部集成了源程序编辑器,并允许用户在编辑源文件时就可设置程序调试断点,便于在程序调试过程中快速检查和修改程序。此外,µVision3还支持软件模拟仿真(Simulator)和用户目标板调试(Monitor51)两种工作方式。在软件模拟仿真方式下不需任何51单片机及其外围硬件即可完成用户程序仿真调试。
在用户目标板调试方式下,利用硬件目标板中的监控程序可以直接调试目标硬件系统,使用户节省购买硬件仿真器的费用。
C51与标准C的主要区别
不同的嵌入式处理器的C编译系统与标准C的不同之处,主要是它们所针对的嵌入式处理器的硬件系统不同。Keil C51的基本语法与标准C相同,但对标准C进行了扩展。理解Keil C51对标准C的扩展部分是掌握Keil C51的关键。
C51与标准C的主要区别如下:
(1)头文件的差异。51系列单片机厂家有多个,它们的差异在于内部资源如定时器、中断、I/O等数量以及功能的不同,而对使用者来说,只需要将相应的功能寄存

第3章 KeilC语言及其程序设计 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数25
  • 收藏数0 收藏
  • 顶次数0
  • 上传人mh900965
  • 文件大小1.26 MB
  • 时间2018-03-30