C语言是一种计算机程序设计语言,它既具有高级语言的特点,又具有汇编语言的特点。1978年后,C语言已先后被移植到大、中、小及微型机上,它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。它的应用范围广泛,具备很强的数据处理能力,不仅仅是在软件开发上,而且各类科研都需要用到C语言,适于编写系统软件、三文、二文图形和动画,具体应用例如单片机以及嵌入式系统开发。
随着微型计算机的日益普及,出现了许多C语言版本。由于没有统一的标准, 使得这些C语言之间出现了一些不一致的地方。为了改变这种情况,美国国家标准研究所(ANSI)为C语言制定了一套ANSI标准,成为现行的C语言标准。(注:国际标准化组织ISO也制定C语言的标准,被很多编译器所采用,如:GCC等。)
C语言是世界上最流行的、使用上最广泛的高级程序设计语言之一。在操作系统和系统使用程序以及需要对硬件进行操作的场合,用C语言明显优于其它高级语言,以前有许多大型应用软件都是用C语言编写的。(由于面向对象编程技术的出现,大型软件转由C++、JAVA、C#再配合C语言开发;C语言在面对大型的软件开发时,会显得有些吃力。)
C语言绘图能力强,具有可移植性,并具备很强的数据处理能力,因此适于编写系统软件,三文,二文图形和动画。它是数值计算的高级语言。
2.4.2 选择的工具
(1) 本课题中使用Proteus软件来进行程序的模拟运行,Proteus的概述:
Proteus软件是世界上著名的英国Lab Center Electronics公司出版的EDA工具软件(仿真软件)。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前比较好的仿真单片机及外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。
从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年又增加了Cortex和DSP系列处理器,并持续增加其他系列处理器模型。在编译方面,它也支持IAR、Keil和MATLAB等多种编译器。
(2) 本课题中还使用Keil软件使用C语言来编写程序,最终与Proteus联动达到模拟目的,Keil的概述:
Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可文护性上有明显的优势,因而易学易用。Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部分组合在一起。运行Keil软件需要WIN98、NT、WIN2000、WINXP等操作系统。如果你使用C语言编程,那么Keil几乎就是你的不二之选,即使不使用C语言而仅用汇编语言编程,其方便易用的集成环境、强大的软件仿真调试工具也会令你事半功倍。
2.5 系统功能分析
根据设计需求和任务,设计程序具有显示当前时间、设置日期、设置时间、输入事件日期和警报提醒这几个功能。详细的程序模块图见图2.1。
2.5.1 显示当前时间
顾名思义是显示当前日期时间的功能,在设计中也可以说是整个程序的主界面通过LCD界面来呈现。界面将会使用最常见的日历格式来查看,一个月的几十天的日期一一对应一个星期的七天一共七列,而最下面一行用来显示整体的当天日期和额外的时间。额外的时间设计精确到秒,是为了希望用户可以更准确地定位自己的时间概念,更享受这个程序带来的便利。能准确显示这个界面,以及可以准确每月日期与星期一一对应这两点,是整个程序成立的大前提。值得一提的是,虽说是显示当前时间,但因为此设计用到proteus来实现模拟,其中用到独立芯片,所以程序是独立存在的,当前时间也只能使用设定的值来显示。可以通过设置日期改变年月日来改变当前时间,同理设置时间。 基于ARM7和μCOS-Ⅱ的电子日历的开发(5):http://www.youerw.com/yanjiu/lunwen_17425.html