基于sst89e516微控制器的电子闹钟设计与仿真_第1页
基于sst89e516微控制器的电子闹钟设计与仿真_第2页
基于sst89e516微控制器的电子闹钟设计与仿真_第3页
基于sst89e516微控制器的电子闹钟设计与仿真_第4页
基于sst89e516微控制器的电子闹钟设计与仿真_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

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

文档简介

1、目录摘要IIIAbstractIV第一章绪论 .11.1课题背景 .11.2课题目的和意义 .11.3电子设计自动化 .11.4本文设计结构 .2第二章方案选择 .32.1电子时钟典型结构 .32.2单片机选型 .32.3显示方式 .32.4按键方式 .4第三章主要器件及简介 .53.1SST89E516RD 单片机.53.2EDA 仿真Proteus .53.3集成开发环境 Keil .63.4Keil 和 Proteus 联合仿真的搭建.7第四章系统总体设计 .94.1电子闹钟的工作原理 .94.2总体设计.94.3总体设计框图 .94.4各模块的功能104.4.1硬件模块104.4.2模

2、块10第五章详细设计125.1硬件部分的设计.25.1.3按键模块12蜂鸣器驱动电路12硬件总体设计13部分的设计.35.2.4中断定时器 T013中断定时器 T114数据显示函数15按键扫描16第六章系统调试与仿真176.1系统调试176.1.1计时调试17系统仿真结果196.2第七章设计总结21参考文献22附录一电子闹钟原理图23附录二源程序代码24致谢27基于 SST89E516 微控制器的电子闹钟设计与仿真摘要随着半导体制造技术的飞跃发展,微控制器(国内称之为单片机)的性能得到不断,而价格却不断下降。它的应用及其广泛,已渗入人类社

3、会生活的方方面面,小到电子玩具,大到航空航天设备都有其身影出现。基于微控制器的电子产品不仅具有智能化的特征,而且功能易于扩展。本设计就是以 SST89E516 微控制器为,实现一个具有计时、校时、闹钟等多种功能为一体的电子时钟。它使用 6 位 LED 数码管显示,能同时显示时、分、秒,具有显示清晰直观、走时准确、使用方便等优点,有着非常广泛的用途。由于该电子时钟采用微控制器作主要,因此其功能易于扩展和改变,通过的方式可在该时钟电路的基础上实现诸如多闹钟、多区域计时、跑表等多种实用功能,而这些是传统电子钟所不具备的。设计中通过借助集成开发环境Keil 和EDAProteus 对电子闹钟的软硬件进

4、行联合仿真调试,在减少设备、成本投入的同时,还大大缩短了开发的周期,使得从概念到产品成为可能,为产品的快速上市赢得先机。关键字:电子闹钟;SST89E516;仿真;EDADesign And Simulation Of Electronic Alarm Clock Based On SST89E516 MCUAbstractWiththeradevelopmentofsemiconductormanufacturingtechnology,micro-controller (MCU domestic calls) in increased performance, while priare d

5、eclining.Its application and its broad, have infiltrated every aspect of human sol life, smallelectronic toys, large aerospace has its presence there. Microcontroller-basedelectronic products not only has the characteristics and features easy to expand.elligentThis design is to SST89E516 microcontro

6、ller as the core, to achieve a time, school,alarm clock and other functions as one of the electronic clock. It uses 6-bit LED digitaldisplay, can display hours, minutes and seconds, wiclear anduitive display, accuratetime and ease of use, has a very wide range of uses. As the electronic clock the mi

7、crocontroller as the main component, so its function is easy to extend and change the way software is available on the clock on the basis of the circuit such as multi-alarm clock, multi-zone time, stopwatch, and other functional, but These are the traditional clock do nothave.The design ofegrated de

8、velopment environment by using Keil and Proteus EDAsoftware for electronic hardware and software co-simulation clock debugging, reducingequipment cost of inputs, while also grey reducing the development cycle, from concept toproduct makes itsible for product The warket opportunities.Keywords:Electro

9、nic Alarm Clock,SST89E516,Simulation,EDA第一章绪论1.1课题背景随着生活水平的提高,人们越来越追求人性化的事物,传统的时钟已不能满足人们的需求。现代的时钟不仅需要模拟电路技术而且需要数字电路技术和单片机技术,增加时钟的功能。电子闹钟可利用编程尽量做到硬件电路简单稳定,减少电磁干扰和其他环境干扰,减少因元器件精度不够引起的误差。尽管如此电子钟还是可以改进和提高,比如选用更精密的元器件。但与机械式时钟相比已经具有更高的准确性和直观性,且无机械装置,具有更长的使用,因此得到了广泛的使用。1.2课题目的和意义现代的快节奏生活给人们的精神上带来了很大压力。如何排解

10、或缓解这些压力已经成为很多人关心。单片机电子闹钟是具有发展前景闹钟创新性的系统,它代表了时代的发展趋势。2011 年,无论从国内外行业发展趋势,还是从闹钟市场准入的要求来看,节能、环保、创新都已家电企业无法回避的大问题。在原材料价格不断上涨、下游商实力膨胀、价格战越来越激烈、行业利润日趋微薄的背景下,日前,中国的电子闹钟在节能化、环保化、创新型转变过程中,正进行新一轮闹钟赛跑。目前,国内专业 51 电子闹钟厂家的数量正在迅速增长。51 电子闹钟市场在未来的三五年内会高速增长,新技术、新产品也会不断出现并投入应用。电子闹钟在科学技术高度发展的今天,千家万户都少不了它,所以很多家庭个人都需要有一个

11、电子闹钟,为人们提供报时方便,但普通电子闹钟不够方便实用。本文给出了一种以 51电子闹钟设计方法,从而给人们带来更为方便的工作与生活。1.3电子设计自动化电子设计自动化(EDA:Electronic Design automation)是将计算机技术应用于电子设计过程中而形成的一门新技术,它已经被广泛应用于电子电路的设计和仿真,集成电路的版图设计、印刷电路板(PCB)的设计和可编程器件的编程等各项工作中。20 世纪 90 年代,国际上电子和计算机技术较先进的国家,一直在积极探索新的电子电路设计方法,并在设计方法、工具等方面进行了彻底的,取得了巨大成功。EDA 技术就是以计算机为工具,设计者在

12、EDA上,用硬件描述语言 VHDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标的适配编译、逻辑和编程等工作。EDA技术的出现,极大地提高了电路设计的效率和可操作性,减轻了设计者的劳动强度。利用 EDA 工具,电子设计师可以从概念、算法、协议等开始设计电子系统,大量工作可以通过计算机完成,并可以将电子产品从电路设计、性能分析到设计出 IC 版图或 PCB版图的整个过程的计算机上自动处理完成。现在对 EDA 的概念或范畴用得很宽。包括在机械、电子、通信、航空航天、化工、矿产、生物、医学、军事等各个领域,都有 EDA 的应用。目前 EDA

13、技术已在各大公司、企事业和科研教学部门广泛使用。例如在飞机制造过程中,从设计、性能测试及特性分析直到飞行模拟,都可能涉及到 EDA 技术1.4本文设计结构本文通过基于 SST89E516 微控制器的电子闹钟的设计与仿真。第一章:绪论(本章阐述了课题的背景,课题研究的目标和意义,电子设计自动化以及本文的设计结构。)第二章:方案的选择(本章简单介绍了电子时钟的典型结构以及本次设计中单片机选型,按键方式和显示方式)第三章:主要器件及简介(本章主要介绍本次设计器件 SST89E516RD 单片机,EDA 仿真搭建。)Proteus,集成开发环境 Keil 以及 Keil 和 Proteus 联合仿真的

14、第四章:系统总体设计(本章主要介绍电路原理和设计)第五章:详细设计(本章是这次设计的部分。系统的介绍了该电子闹钟的工硬件设计和设计。)第六章:系统调试与仿真(本章主要介绍 Keil 与 Proteus 调试过程以及仿真结果。)第七章:设计总结(总结本次设计的心得)第二章方案选择2.1电子时钟典型结构典型的电子时钟由微处理器,显示 LD 和按键部分组成。其结构图如图 2.1。图 2.1 电子时钟结构图各部分功能如下:MCU:通过适当的编程,即可实现要众多普通数字集成电路或其他元器件才能实现的逻辑功能。且当对程序进行适当的修改后,电路逻辑功能即可增加或改变。显示 LD:清晰直观,准确的显示时间。按

15、键:能简单明了的进行时间校准,时间定时设置。2.2单片机选型通过对多种单片机型号性能的分析,最终认为 SST89E516 是最理想的电子闹钟开发。SST89E516RD 单片机可靠性高,价格低廉,软硬件全兼容 8051/52 系列单片机。原有资源均可使用。最高工作频率可达 40MHz,具K+8KB 的 FALSH ROM 存储器,可反复读写上万次,数据保存超过十年。在应用中基本无需再扩展程序器。此外数据 RAM 达 1K 字节,能满足大多数应用,比标准 51 机的 RAM 大 8 倍。与现行的 80C52 列单片机硬件 P好的选择。O-PIN 完全兼容,、开发工具也完全兼容,是最2.3显示方式

16、显示器是将一定的电子文件通过特定的传输设备显示到屏幕上再反射到人眼的一种显示工具。常用的显示器有 CRT 显示器,LCD 显示器,LED 显示器等。CRT 显示器:是一种使用阴极射线管(Cathode Ray Tube)的显示器它是目前应用最广泛的显示器之一,CRT显示器具有可视角度大、无坏点、色彩还原度高、色度均匀、可调节的多分辨率模式、响应时间极短等 LCD 显示器难以超过的优点。LCD 显示器:是 Liquid Crystal Display 的简称,LCD 显示器即液晶显示屏,优点是机身薄,占地小,辐射小,给人以一种健康产品的形象。LED 显示器:LED 显示屏就是 light emi

17、tting diode,发光二极管的英文缩写,简称LED。它是一种通过控制半导体发光二极管的显示方式,集微电子技术、计算机技术、信息处理于一体,以其色彩鲜艳、动态范围广、亮度高、长、工作稳定可靠等优点,成为最具优势的新一代显示。LED 显示器通过发光二极管的适当连接(包括串联和并联)和适当的光学结构,可发光显示器的发光段或发光点。由这些发光段或发光点可以组成数码管、符号管、米字管、矩阵管、电平显示器管等等。就闹钟而言,通常可采用液晶显示或数码管显示。由于一般的段式液晶屏,需要专门的驱动电路,而且液晶显示作为一种显示,可视性相对较差;对于具有驱动电路和微处理器接口的液晶显示模块(字符或点阵),一

18、般多采用并行接口,对微处理器的接口要求较高,占用资源多。数码管作为一种主动显示器件,具有亮度高、价格便宜等优点,而且市场上也有专门的时钟显示组合数码管。用数码管作为显示器。数码管的驱动电路简单,使用方便。2.4按键方式按照键盘与 CPU 的连接方式可分为独立式键盘和矩阵式键盘。独立式键盘是各个按键相互独立,每个按键占用一个 I/O 口线,每根 I/O 口线上的按键不会影响其他 I/O 口上按键工作状态。独立式键盘电路配置灵活,结构简单,但每个按键必须占用一根 I/O 口,在按键数量较多时,I/O 口线浪费较大,且电路结构复杂。矩阵式键盘适合按键较多时使用。由于本设计的电子钟需要 4 个按键,若

19、采用矩阵式键盘时会有按键浪费,故采用的是独立式键盘。第三章主要器件及简介3.1SST89E516RD 单片机SST89E516RD 单片机可靠性高,价格低廉,软硬件全兼容 8051/52 系列单片机, 原有资源均可使用。最高工作频率可达 40MHz,具K+8KB 的 FALSH ROM器,可反复读写上万次,数据保存超过十年。在应用中基本无需再扩展程序器。此外数据 RAM 达 1K 字节,能满足大多数应用,比标准 51 机的 RAM 大 8 倍。最重要的是该型单片机,支持在应用可编程(IAP),和在系统可编程(ISP),可实现升级,而不用编程器。SST 公司专门为该型单片机开发了 SoftIof

20、tware InCircuit Emulator)。它是 SST 公司为方便 SST 用户使用、调试的仿真器SST 单片机所开发的开发工具。1SST89E516 微控制器实物图如图 3.1。图 3.1 SST89E516RD 实物3.2EDA 仿真ProteusProteus是一款在国内开始广泛流行的 EDA,该具有模拟电路仿真,数字电路仿真,单片机及电路组成的系统仿真,RS-232 动态仿真,12C 调试器、SPI调试器、键盘和 LCD 系统的仿真,以及各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。该目前支持的单片机类型有:68000 系列、8051 系列、AVR 系列、PIC12系列、

21、PIC16 系列、PIC18 系列、Z80 系列、HC11 系列、ARM 以及各种。该还支持大量的器和,总之,该是一款集单片机和 SPICE 分析于一身的仿真,功能极其强大。2Proteus 主要由两大部分组成:ISIS原理图设计、仿真系统。它主要用于电路原理图的设计以及互式仿真。ARES印刷电路板设计系统。它主要用于印刷电路板的设计,产生最终的 PCB 文件。Proteus 主要特点:具有模拟电路仿真、数字电路仿真、单片机及其电路组成的系统的仿真、RS232 动态仿真、I2C 调试器、SPI 调试器、键盘和 LCD 系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。支持主流

22、单片机系统的仿真。目前支持的单片机类型有:68000 系列、8051 系列、AVR 系列、PIC12 系列、PIC16 系列、PIC18 系列、Z80 系列、HC11 系列以及各种。提供调试功能。在硬件仿真系统中具有全速、单步、设置断点等调 试功能,同时可以观察各个变量、寄存器等的当前状态;同时支持第的编译和调试环境,如 Keil 等。具有强大的原理图绘制功能。3在本系统中,Proteus的用途首先是画出硬件原理图,其次是将加载进去,进行模拟仿真,在仿真的过程中对硬件进行完善,最后完成整个硬件与系统。3.3集成开发环境 KeilKeil C51 是德国 Keil Software 公司的 51

23、 系列兼容单片机 C 语言集成开发环境(IDE)。Keil C51提供丰富的库函数和功能强大的集成开发调试工具,全 Windows界面。目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型时更能体现高级语言的优势。4Keil C51 可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发可用IDE 本身或其它编辑器编辑 C 或汇编源文件。5然后分别由 C51 及 A51 编译器编译生成目标文件(.OBJ)。目标文件可由 LIB51 创建生成库文件,也可以与库文件一起经 L51 连接定位生成绝对目标文件(.ABS)。ABS 文件由 OH51 转换成标准的 Hex 文件,以供

24、调试器 dScope51 或 tScope51 使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如 EPROM 中。6在本课题中 Keil C51 主要是实现程序的编译及调试,以及实现仿真中程序的加载及其控制,在硬件仿真中实现将程序加载到单片机中,实现硬件工作的驱动。3.4Keil 和Proteus 联合仿真的搭建在学习、开发单片机系统时,常常需要硬件仿真设备,用于加快学习和开发的进度,但此类设备对单片机数量、种类和固定电路有所限制,并且价格较贵。而联合运用仿真Proteus 和单片机开发下虚拟建立了一个硬件仿真环境Keil 构建单片机虚拟,在没有硬件实物的

25、环境,大大扩充实验灵活性。7下面介绍一下 Keil 和 Proteus联合仿真的搭建步骤(Keil 作为调试界面,Proteus 作为硬件仿真调试界面):。首先是安装 Proteus 和 Keil安装 vdmagdi.exe 文件到 Keil 安装目录。启动 Keil 编辑、编译好程序。打开 Keil 中的目标选项操作框。如图 3.2 进行设置。图 3.2Keil 设置操作流程图启动 Proteus,绘制好原理图。设置“使用调试”选项。如图 3.3 所示。图 3.3调试设置在 Proteus 中清空单片机属性框中的程序文件。如图 3.4 所示。图 3.4Proteus 设置流程图同时运行 Ke

26、il 和 Proteus结果。,在 Keil 中联机运行程序,在 Proteus 中观察运行第四章系统总体设计4.1电子闹钟的工作原理电子闹钟是一个将“时”,“分”,“秒”显示于人的视觉的计时装置。它的计时周期为 24 小时,显示满刻度为 23 时 59 分 59 秒,另外有校时功能和闹钟功能。一个基本的电子闹钟电路主要由译码显示器、“时”,“分”,“秒”,计数器、校时电路、闹钟电路和振荡器组成。干电路系统由秒信号发生器、“时”,“分”,“秒”计数器、译及显示器、校时电路、闹钟电路组成。秒信号产生器是整个系统的时基信号,它直接决定计时系统的精度,一般用石英晶体振荡器加分频器来实现。将标准秒信号

27、送入秒计数器,秒计数器采用 60 进制计数器,每累计 60 秒发出一个分脉冲信号,该信号将作为分计数器的时钟脉冲。分计数器也采用 60 进制计数器,每累计 60 分钟,发出一个时脉冲信号,该信号将被送到时计数器。时计数器采用 24 进制计时器,可实现对一天 24 小时的累计。译码显示电路将“时”,“分”,“秒”计数器的输出状态送到六段显示译译码,通过六位 LED 六段显示器显示出来。闹钟电路时根据计时系统的输出状态和所设定的时间是否一致,蜂鸣器发出响声。校时电路时用来对“时”,“分”,“秒”显示数字进行校对调整的。4.2总体设计基于微控制器的电子产品不仅具有智能化的特征,而且功能易于扩展。本设

28、计以SST89E516 微控制器为,使用 6 位 LED 数码管显示,能同时显示时、分、秒。实现一个具有计时、校时、闹钟等多种功能为一体的电子时钟。设计中通过借助集成开发环境 Keil 和 EDAProteus 对电子闹钟的软硬件进行联合仿真调试,在减少设备、成本投入的同时,大大缩短开发周期,使得从概念到产品成为可能,为产品的快速上市赢得先机。4.3总体设计框图本系统的主是:首先是按键经过按键处理后进入定时单元(即闹钟单元)。设定完定时单元进入计时单元,计时单元通过显示控制单元在显示器上显示出当前时间。其总体结构框图如图 4.1 所示。图 4.1 总体设计框图各模块的功能硬件模块系统硬件模块可

29、以根据系统的各个功能,把整个系统划分成若干个模块,分别对这些模块来进行设计,然后再通过单片机程序来实现对各个硬件模块功能的调度。按键模块按键模块设计的主要功能就是对时间进行校时,并且定时闹钟功能。显示器显示本次采用的是 LED 数码管,主要是准确显示时间。4.4.2模块部分主要采用程序结构的模块化设计,避免一些函数的不必要的重复书写,使程序变得简单易懂。程序在执行时,主程序必须要通过调用子函数完成相应的功能。主程序流程图如图 4.2。图 4.2 主程序流程图第五章详细设计硬件部分的设计按键模块作为一个按键从没有按下到按下以及是一个完整的过程,也就是说当按下一个按键时,总希望某个命令只执行一次。

30、而在按下的过程中不要有干扰进来,因为在按下的过程中,一旦有干扰过来可能造成误触发过程,因此在设计按键电路的时候应注意不要有干扰进来。一个功能完善的时钟,还要能对时间进行调整。这就需要设置按键。在本次设计中设置 3 个按键。一个 Set 键,用于时间调整选择;一个 Shift 键,用于时间调整位置选择;一个 Up 键,用于以递增方式修改时间。具体为,当第一次按下 Set 键时进入闹钟模式,再按一次 Set 键则进入时间调整模式。而 Shift 键用于对时间位置的选择依次为从左向右。Up 键,用于以递增方式修改时间。其按键设计电路图如图 5.1 所示。图 5.1 按键设计电路图5.1.2蜂鸣器驱动

31、电路发音部分是通过三极管放大后驱动蜂鸣器工作,再通过产生等时时间驱动蜂鸣器发音。这样就可以省去硬件振荡电路,降低成本。蜂鸣器驱动电路如图 5.2。图 5.2 蜂鸣器驱动电路5.1.3硬件总体设计根据电子闹钟结构框图,对各个模块进行了设计和分析,最后完成了整个系统硬件电路原理图如图 5.3。图 5.3 电子闹钟电路原理图5.2部分的设计5.2.1中断定时器 T0T0 定时源 8 位自动重装,定时计数值 256,定时频率 3600Hz,要产生 1/360s 的动态显示定时要求,则对定时中断的计数值为 10。产生 2Hz 闪烁显示效果的中断计数值为 900。其中断服务流程图如图 5.4。图 5.4

32、T0 中断服务流程图5.2.2中断定时器 T1T1 定时源 8 位自动重装,定时计数值 256,由于单片机主频为:11.0592MHz,所以定时频率:11.0592MHz/(12*256)=3600Hz,定时时间间隔 1/3600s。对 T1 定时中断进行计数,当计数值从 0 计数到 3600 时,时间正好 1 秒;对秒进行计数,计数值从 0计数到 60,时间正好 1 分;对分进行计数,计数值从 0 计数到 60,时间正好 1 小时。当时间计数到 24 点,又自动回 0。8其中断服务流程图如图 5.5。图 5.5 T1 中断服务流程图5.2.3数据显示函数数据显示主要是通过调用函数和数码管显示

33、,其工作流程图如图 5.6。图 5.6 数据显示工作流程图5.2.4按键扫描此部分主要是判断是否有按键按下以及对应按键的操作,其相关流程图如图 5.7。图 5.7 按键扫描流程图第六章系统调试与仿真6.1系统调试在本次设计中,最主要的调试有三点:计时调试,显示调试和按键调试。6.1.1计时调试计时调试,首先在 keil 中加载主程序。然后在设置断点,全速运行程序,当程序运行到断点处时停止。秒定时为全速运行一次则秒加一。秒起始值为 0。全速运行后秒自动加 1。与预期结果一致。9调试成功。调试图如图 6.1 所示。图 6.1 计时调试过程6.1.2显示调试显示调试同计时调试也是采用断点调试。首先在

34、 Keil 中加载主程序。然后在设置断点,在监视框中加载程序如图 6.2 所示。图 6.2 显示调试过程然后全速运行程序。在 Protues 中观察运行的结果。在 Keil 监视框中可以看到CurrentSeg 为 0 x04 也就是说观察显示最后一位。而 DispBuff 最后一位显示应该为 6,同时在 Protues 观察结果如图 6.3 所示。图 6.3Proteus 中同步显示调试过程由于仿真存在延时滞后现象,故在观察中会看到前边一位也同时显示,但在实际中是不存在这种现象的。调试成功。6.1.3按键调试按键调试同样采用断点调试。首先设置断点如图 6.4 所示。图 6.4 按键调试过程图

35、全速运行,会发现当程序运行到设定的断点处时并不停止,这是因为并没有进行按键操作。当在 Proteus 中进行按键操作后发现程序到断点处停止。说明按键模块成功。调试成功。在电子闹钟的设计中当然不止这些调试,还有其它调试,但都采用同样的方法进行调试。在实际调试中也都调试成功,在此处仅选取最主要的三点调试进行讲解10。6.2系统仿真结果此电子闹钟设计是利用 KeiC51 与 Proteus 联合进行仿真,基本实现此次设计要求实现的功能。仿真运行结果如图 6.5 所示。图 6.5 系统仿真运行结果图另外,闹铃电路有音乐闹钟的扩展功能(可以将蜂鸣器换成扬声器再加一段音乐程序即可实现)。因为时间有限,扩展

36、功能还未实现。第七章设计总结通过自己的不屑努力,我终于完成了毕业设计任务书上的任务要求。功能上基本达标:时钟的显示,调时功能、校时功能、闹铃功能。其精确度完全可以满足日常生活显示时间的需要。调时功能,方便快捷。校时功能保证了时钟的准确和可靠性。闹钟响铃还有扩展成音乐闹钟的余地。硬件设计符合要求,设计可以配合硬件实现要求的功能。通过这次设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务。这次的设计还让我学会了如何去培养的创新精神,从而不断地战胜自己,自己。更重要的是,我在这一设计过程中,学会了坚持不懈,不

37、轻言放弃。设计过程,常有一些不如意,但毕竟这是第一次做,难免会遇到各种各样。在设计的过程中发现了自己的之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。虽然这个设计做的不是很满意,但是在设计过程中所学到的东西是这次课程设计的最大收获和。由于学习 Proteus 和 KeilC51 时间不是很长,系统在设计过程中,难免存在之处。在程序结构上系统设计得还不够紧密,对一些问题,还不是很好的能解决。虽然毕业设计已接近尾声,但这个设计不会因为毕业设计的结束而停止,在今后的学习中,再就这些问题进行完善。技术在不断进步,机械式时钟已经慢慢被淘汰,取而代之的是具有高度准确性和直观性,具有更长的使用等优点

38、的电子时钟。电子闹钟更具有人性化,更能提高人们的生活质量,更受人们欢迎。最后,要做好一个课程设计,就必须做到:在设计程序之前,对所用单片机的结构有一个系统的了解,知道该单片机内有哪些资源;要有一个清晰的思路和一个完整的流程图;在设计程序时,不能妄想一次就将整个程序设计好,反复修改、不断改进是程序设计的必经;要养成注释程序的好,一个程序的完美与否不仅仅是实现功能,而应该让人一看就能明白你的思路,这样也为资料的保存和交流提供了方便;在设计课程过程中遇到问题是很正常的,但应该将每次遇到下来,并分析清楚,以免下次再碰到同样。参考文献1234SST单片机应用文库DB/OL.proteus Proteus

39、与电路设计 中文资料CP/DK.文库DB/OL.,沈,等.单片机实验与实践-2版.:航空航天大学,2006.5-10.56789凡等.51单片机C语言开发详解M.文库DB/OL.:电子工业,2008.95-121.C51Keil和proteus之间的通信设置文库DB/OL,.单片机课程设计指导M.:航空航天大学,2007.14-17.:高等教育,等.MCS-51系列单片机系统及其应用-2版M.明,2004.234-245.10单片机C语言编程与实例 中文资料CP/DK.附录一电子闹钟原理图附录二源程序代码源程序代码:定时器初始化void INIT_TMR(void)TMOD=0 x22;/设定

40、定时器工作方式字,定时器 0 和 1,8 位自动重装TH1=0;/装载计数值 256 到定时器 1TL1=0;TH0=0;/装载计数值 256 到定时器 0TL0=0;PT1=1;/为保障定时精度,设定定时器 1 高优先级中断ET1=1;/开定时器 1 中断ET0=1;/开定时器 0 中断EA=1;/开总中断TR1=1;/启动定时器 1TR0=1;/启动定时器 0定时器 1 中断程序:void TMR1_SRV(void)errupt3Timer1Counter+;/定时中断计数if (Timer1Counter=3600)/定时中断计数值到达 3600Timer1Counter=0;/清除定

41、时中断计数值if (!KeySetFlag)/设置时间时暂停计时NowTime.Second+;/秒计数值加 1if (NowTime.Second=60)NowTime.Minute+;NowTime.Second=0;/每 60 秒,分加一if (NowTime.Minute=60)NowTime.Hour+;NowTime.Minute=0;/每 60 分,时加一if (NowTime.Hour=24)NowTime.Hour=0;/24 小时后,自动回 0定时器 0 中断程序:void TMR0_SRV(void)errupt1Timer0Counter+;if (Timer0Counter=450)Timer0Counter=0;OutSelectSeg=SelectSeg;/以 4Hz 平率将调整时间选择为闪烁显示SendDispBuff();/以 8Hz 平率将当前

温馨提示

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

评论

0/150

提交评论