交通与汽车工程学院单片机课程设计方案.doc
文本预览下载声明
交通与汽车工程学院单片机
课程设计方案
1.1 问题的提出
随着人类科技文明的发展,人们对于时钟的要求在不断地提高。时钟已不仅仅被看成一种用来显示时间的工具,在很多实际应用中它还需要能够实现更多其它的功能。高精度、多功能、小体积、低功耗,是现代时钟发展的趋势。在这种趋势下,时钟的数字化、多功能化已经成为现代时钟生产研究的主导设计方向。本文正是基于这种设计方向,以单片机为控制核心,设计制作一个多功能的数字时钟。
? 本设计基于单片机技术原理,以单片机芯片AT89C51作为核心控制器,通过硬件电路的制作以及软件程序的编制,设计制作出一个多功能数字时钟系统。该时钟系统主要由时钟模块、数码管显示模块、键盘控制模块以及信号提示模块组成。系统具有简单清晰的操作界面,可随时进行时间调整。同时,该时钟系统还具有功耗小、成本低的特点,具有很强的实用性。由于系统所用元器件较少,单片机所被占用的I/O口不多,因此系统具有一定的可扩展性。
1.2任务与分析
本次设计的系统的控制中心是89C51单片机。首先,在Protel软件环境中进行硬件电路图的设计。然后在8051软件环境中进行系统的软件编程,并进行程序源文件的编译和调试,最后生成.hex文件。此.hex文件是硬件电路运行实现的源代码来源。把.hex文件加载到AT89C51单片机芯片,然后在Proteus软件环境中运行硬件电路,时钟的日期就可以正常显示了。
本设计的系统主要由AT89C51为中央处理芯片,用于数据处理,初值设定DS1302是本例的核心模块,由他提供时钟信息并由LED显示,用汇编语言进行编程4大模块:
1、AT89C51模块:用于数据处理,和外围的时钟芯片通信,并控制时钟传输过程,采集时间信息并予以处理。
2、DS1302模块:实时显示可以通过软件编程来实现,但这种方法需要编制的程序复杂,代码多,且单片机软件开销大,时间信息也不容易长期保存。而采用时钟芯片DS1302可以避免这些问题,它可以长期保存此信息,因此本例中我们使用此芯片来实现此系统。
3、数码管显示模块:显示模块采用普通的共阳LED数码管,此模块用于实时的显示时间信息。
4、程序:包括单片机控制时钟芯片的接口程序(实现单片机和时钟芯片之间的数据传输过程)和数码管显示程序。
2 系统方案设计
2.1 系统设计方案
通过查阅相关资料,设计初期共有3个方案供我选择,分别是:(1)采用89C2051单片机组成的系统;(2)采用89C51单片机,815589C51单片机,DS130289C2051单片机组成的系统
此系统的硬件部分主要是由89C2051单片机,74LS48芯片,ULN2003芯片所组成。该系统硬件结构简单,但是单片机的I/O接口太少,不足以实现多种功能,软件设计部分,程序冗长而复杂,易产生混淆。
(2)采用89C51单片机,815589C51单片机,8155LED显示器,4*4键盘来组成系统的硬件。该系统采用的是单片机内部的定时/计数器进行中断定时,配合软件延时实现时,分,秒的计时。但这样的话,程序复杂化,时间信息也不容易长期保存。
(3)采用89C51单片,DS1302实时时钟芯片组成的系统
此方案在硬件部分采用了89C51单片机,DS13O2时钟芯片,74LS47芯片,LEDDS1302。在功能上进行了扩充,并且使得硬件连线显得较为简单,在软件部分,程序显得层次分明。
最后确定设计采用第3方案,即 系统是由89C51单片机,74LS164芯片, DS1302时钟芯片,LED显示器组成。
2.2 系统总体框图
图1 系统总体框图
当程序启动后,程序进入初始化阶段。单片机将从DS1302时钟芯片中读出年,月,日,时,分,秒,。并且经过显示缓存后送入LED显示器进行显示。当需要调整日期和时间时,按下“调日历”键,进入调整年、月、日。首先“年”的两位数码管闪烁显示,表示在调整“年”状态,按“加一”键调整到期望的年,再按“调日历”键确认“年”,同时进入调整“月”状态。同理,月和日的调整方法也是一样。调整时间也是同样的道理。闹钟的设置则是当按下闹钟键后,时分秒的显示不变,并且小时部分闪烁,按“加一”键调整到期望的闹钟时间后,再按“闹钟”键确认小时,同时进入调整分钟的状态。调整好后再按下“闹钟”键确认,返回正常显示,当到达设定时间时,蜂鸣器响。
3 系统硬件电路设计
3.1 89C51单片机
? AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS 8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪烁可编程可
显示全部