当前位置:文档之家› 时钟设计

时钟设计

课程设计说明书

课程名称:单片机原理及应用

设计题目:时钟设计

院系:电子信息与电气工程系

学生姓名:

学号:

专业班级:0

指导教师:

课程设计任务书

定时闹钟

摘要:数字钟的应用非常普遍,由单片机作为数字钟的核心控制器,通过它的时钟信号进行实现计时功能,将其时间数据经单片机输出,利用显示器显示出来。通过键盘可以进行校时、定时等功能。输出设备显示器可以用液晶显示技术和数码管来显示技术。简述了该系统中一些重要芯片的基本工作原理,着重论述了硬件线路各个模块的设计思想。进而使学生熟练掌握相关专业基础知识的综合应用,提高学生的实际动手和设计能力。

关键词:单片机;电子时钟系统;数码管; C语言

目录

1.设计背景 (1)

1.1论述可行性 (1)

1.2目的和意义 (1)

2.设计方案 (2)

2.1编写程序软件 (2)

2.2方案论证与比较 (2)

3.方案实施 (3)

3.1系统总体介绍 (3)

3.2硬件总体设计思路 (4)

4.结果与结论 (11)

4.1所设计系统的功能 (11)

4.2 总体结论 (12)

5.收获与致谢 (13)

6.参考文献 (13)

7.附件 (13)

7.1 元器件清单 (13)

7.2 硬件原理图 (14)

7.3 程序清单 (15)

1. 设计背景

1.1、论述可行性和国内外背景现状及相关技术

随着生活水平的提高,人们越来越追求人性化的事物,传统的时钟已不能满足人们的需求。现代的数字钟不仅需要数字电路技术而且需要模拟电路技术和单片机技术,增加数字钟的功能。利用软件编程尽量做到硬件电路简单稳定,减小电磁干扰和其他环境干扰,减小因元器件精度不够引起的误差,但是数字钟还是可以改进和提高如选用更精密的元器件。但与机械式时钟相比已经具有更高的准确性和直观性,且无机械装置,具有更长的使用寿命,因此得到了广泛的使用。

在此次设计中我们将用到集成电路。集成电路是信息产业和高新技术的核心,是推动国民经济和社会信息化的关键技术。集成电路的产业规模和技术水平已成为国家综合国力的一个重要标志。我国集成电路产业已经经过30多年的发展现已形成了近百家的产业规模,其中具备一定设计规模的单位有20多家,其中北京华大、大唐、深圳华威和无锡矽科四家设计公司的销售额超过了1亿元。多家外国著名公司也纷纷在中国建立起集成电路设计公司。

中国发展集成电路的主要目标为:达到大规模生产150mm和0.8微米的技术水平;200mm和0.5微米的制造技术的产业化;提高集成电路的设计能力以满足市场需求;跟踪0.3-0.4微米和先进封装技术的研发;开发200mm的硅片制造技术并在国内开始生产等。未来10年是我国微电子产业发展的关键时期。重点要推进超大规模集成电路和新技术的产业化。综观中国集成电路的设计概况,可以看到从20世纪80年代末开始,经过90年代初的创业期,现正进入它的发展期,21世纪将是中国设计业的成熟期。

1.2目的和意义

数字钟通过数字电路实现时,分,秒.数字显示的计时装置,广泛用于个人家庭,车站, 码头办公室等公共场所,成为人们日常生活中不可少的必需品,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表, 钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有

这些,都是以钟表数字化为基础的。因此,研究数字钟及扩大其应用,有着非常现

实的意义。

2. 设计方案

2.1编写程序软件

用Keil uVision2软件进行程序编译生成HEX文件,用protuse SIS 7 Professional 进行单片机硬件仿真。

2.2方案论证与比较

数字时钟是本设计的最主要的部分。根据需要,可利用两种方案实现。

方案一:1.计时用的“秒”脉冲信号可用实验板中提供的800Hz分频产生。800Hz 信号同时作为动态扫描显示电路的时钟信号。

2.时、分校时控制,当校时按钮按下时,可对时、分计数器CP端输入秒脉冲来加速计数速度来达到校时目的。

方案二:本方案完全用软件实现数字时钟。原理为:在单片机内部存储器设两个字节分别存放时钟的时、分信息。利用定时器与软件结合实现1分定时中断,每产生一次中断,存储器内相应的分值加1;若分值达到60,则将其清零,并将相应的时字节值加1;若时值达到24,则将时字节清零。该方案具有硬件电路简单的特点。但由于每次执行程序时,定时器都要重新赋初值,所以该时钟精度不高。而且,由于是软件实现,当单片机不上电,程序不执行时,时钟将不工作。

考虑到设计硬件简单原则,利用单片机实现的数字时钟具有编程灵活,便于功能的扩充等优点,故本设计采用方案。

数码管显示方案:

方案一:静态显示。所谓静态显示,就是当显示器显示某一字符时,相应的发光二极管恒定的导通或截止。该方式每一位都需要一个8 位输出口控制。静态显示时较小的电流能获得较高的亮度,且字符不闪烁。但当所显示的位数较多时,静态显示所需的I/O 口太多,造成了资源的浪费。

方案二:动态显示。所谓动态显示就是一位一位的轮流点亮各个位,对于显示器的每一位来说,每隔一段时间点亮一次。利用人的视觉暂留功能可以看到整个显示,但必须保证扫描速度足够快,字符才不闪烁。显示器的亮度既与导通电流有关,也于点亮时

间与间隔时间的比例有关。调整参数可以实现较高稳定度的显示。动态显示节省了I/O 口,降低了能耗。

3. 方案实施

3.1系统总体介绍

本次设计时钟电路,使用了AT89C51单片机芯片控制电路,单片机控制电路简单且省去了很多复杂的线路,使得电路简明易懂,使用键盘键上的按键来调整时钟的时、分,用一扬声器来进行定时提醒,同时使用C 语言程序来控制整个时钟显示,使得编程变得更容易,这样通过四个模块:键盘、芯片、扬声器、显示屏即可满足设计要求。

3.1.1硬件总体设计思路

本系统可模拟电子时钟,实现时钟,校时功能,主从CPU 数据处理、键盘控制与数据显示。主控系统能响应按键,并对其进行相应的处理,再把其对应的结果数据在数码管LED 上显示。

具体设计基本任务是:

1.用LED 数码管显示时间,且能显示时、分的24小时制的数字钟。

2.具有校时功能,具体方法:设置三个按钮,其中一个按钮分别对“时”、“分”进行选择校时,另两个按钮则实现对“时”、“分”进行加加减校时。

此设计原理框图如图3-1所示:

图3-1

设计原理框图

3.1.2各部分功能实现

(1

)、单片机发送的信号通过程序控制最终在数码管上显示出来。 (2)、单片机通过输出各种电脉冲信号来驱动控制各部分正常工作。

(3)、为使时钟走时与标准时间一致,校时电路是必不可少的,键盘用来校正数码管上显示的时间。

(4)、单片机通过控制闹铃电路来完成定时闹钟的功能。

3.2系统工作原理

设计的电路主要由四模块构成:单片机控制电路,显示电路、闹铃电路以及校正电路如图3-2

图3-2 总的电路图

本系统的设计电路如图2-2所示,上边按键进入分,时切换,下面的两键控制时分加一减一操作,下边开关切换数码管显示时钟,定时功能。右上角是四位数码管LED,用于显示。本设计采用C语言程序设计,使单片机控制数码管显示时、分,当分计数器计满60后向时计数器进位,小时计数器按“23翻0”规律计数。时、分的计数结果经过数据处理可直接送显示器显示。当计时发生误差的时候可以用校时电路进行校正。设计采用的是时、分显示,单片机对数据进行处理同时在数码管上显示。

3.2电路各功能图解分析

1.时钟运行图

仿真开始运行时,或按下仿真软件的开始按键时,时钟0000开始运行,其中K1键对时进行分时切换调整,K2或K3对分钟和时进行加减,K4键可以让钟表显示运行。

时钟运行图如图3-3所示:

图3-3 时钟运行图

2.闹铃设置图及运行图

当按下k5,开始定时,分别按k2调分加,k3调分减;再按K1切换小时, 按k2调时加,k3调时减设置闹铃时间,然后按下k4键恢复时钟运行状态(图3-4)当闹铃设置时间到时,蜂鸣器将发出60秒钟蜂鸣声(图3-5)。

图3-4 闹铃设置图

图3-5 闹铃运行图

该闹钟是用一片AT89c52单片机通过编程去驱动4个数码管实现的。通过5个开关控制,从上到下5个开关K1-K5按键的功能分别为:K1键是切换分时表;K2键是调节时间,每调一次加1;K3键调节时间,每调一次减1;K4键从其它状态切换至时钟状态;K5是切换至闹钟设置状态;控制键分别与P1.0-P1.4口连接.其中:

A、P2口控制数码管的显示如图所示P2口接数码管的a-g端,是控制输出编码,P3口接数码管的4-7端,是控制动态扫描输出.

B、P1口的0-3输出信号使二极管发光,二极管在设置的闹钟时间到了时候发光,若有乐曲可以去驱动蜂鸣器实现。

3、电源电路的设计:由低压变压器,桥堆2w10,LM7805和电容构成220V交流市电通过电源变压器变换成交流低压,再经过桥式整流桥堆2w10和滤波电容C1的整流和滤波,在固定式三端稳压器LM7805的VI和GND两端形成一个并不十分稳定的直流电压。此直流电压经过7805的稳压和C2的滤波便在稳压电源的输出端产生了精度高、稳定度好的直流输出电压。

电源电路如图2-6所示:

图3-6电源电路

3.2.1软件总体设计思路及主程序流程图

软件程序从开始执行,先通过初始化各个寄存器,经过扫描按键来决定是否设定参数来执行相应功能的程序,进而在数码管上显示。如图3-7:

图3-7 主程序流程图

3.2.2 定时器中断程序流程

时间的显示通过此中断程序来控制,并且通过与设定的时间进行比较来判断是否让闹铃工作。程序中包含时间的设定,如设定tcount来使秒等工作,进而来控制分和时。如下图图3-8。

图3-8 中断程序流程图

3.2.2按键程序流程

图3-9和图3-10分别为时钟和闹钟的调节,程序中通过扫描来判断按键是否按下进行时间和闹钟调节。

图3-9 时钟调节按键扫描流程图

图3-10 闹钟调节按键扫描流程图

4. 结果与结论

4.1所设计系统的功能

电子小闹钟系统具有正常走时,调时,定时功能。具体操作功能:(1)、接通电源后,蜂鸣器连续两次发出响声,同时工作指示灯LED闪动,表示程序执行,数码管显示“0000”;

(2)、接着设置当前时间。按K1键,LED1停止闪动,LED2亮,即进入分钟设置状

态;按K2调整,每按一次数值加1;按K3调整,每按一次数值减1;再按K1键,LED1停止闪动,LED3亮,即进入小时设置状态;按K2调整,每按一次数值加1;按K3调整,每按一次数值减1;设置完成后,按K4,LED1恢复闪烁,即设置完成,进入正常走时状态;

(3)、设置定时时间。按K5键,LED1闪动,LED4亮,即进入定时时间设置状态;LED1闪动,LED2和LED4亮,即进入分钟设置状态;按K2调整,每按一次数值加1;按K3调整,每按一次K3数值减1;按K1键,LED1闪动,LED3和LED4亮,即进入小时设置状态;按K2调整,每按一次数值加1;按K3调整,每按一次数值减1;设置完成后,按K4,LED1恢复闪烁,即设置完成,进入正常定时走时状态;

(4)、到定时时间时,蜂鸣器连续发出响声,同时四个指示灯LED闪动,表示定时时间到,数码管显示定时时间,且时钟能正常走时;在此期间,按K5,能再次设置定时时间,再按K4,能关闭闹铃正常走时。

经过两个周的忙碌,老师的帮助和在本组成员的共同努力下,基本上完成了这次课程设计的任务。在完成焊接后,我们对整个系统进行了调试,但是没有成功,经过本组成员对焊接电路板的检查,最后还是基本达到了课程设计任务书的要求。总的来说还是基本上完成了这次课程设计的任务,从中也学到了不少知识。

4.2结论

技术在不断进步,机械式时钟已经被淘汰,取而代之的是具有高度准确性和直观性且无机械装置,具有更长的使用寿命等优点的数字时钟。数字时钟更具人性化,更能提高人们的生活质量,更受人们欢迎。做为新时代的我们,更应该提高自身能力,适应新时代的发展。知识来自实践,多去生活中探询所需要的。对于上述所提到的研究课题,我们应尽量考虑到人的因素,增强时钟的实用性和操作性,为使用者提供切实的方便,营造一种舒适的生活氛围。所以,在设计的时候,应该从多方面、多角度去考虑问题,而且应该进一步提高时钟的质量。

经过两周的不断努力,又在老师和同学的帮助下,基本完成了这次课程设计的任务要求。但是在整个过程中我认识到了自己有以下不足:第一,对单片机的基本知识掌握的不好,特别是对硬件电路的设计;如驱动数码管电路和三极放大、开关电路;第二,对Keil软件和Proteus软件太了解,在对程序调试和软硬件结合仿真时费了不少时间;第三,片机课程设计重点就在于软件算法的设计,需要有很巧妙的程序算法,虽然以前

写过几次程序,但我觉的写好一个程序并不是一件简单的事,比如写一个程序看其功能很少认为编写程序简单,但到编的时候才发现一些细微的知识或低级错误经常犯做不到最后常常失败,所以有些东西只有学精弄懂并且要细心才行,只学习理论有些东西是很难理解的,更谈不上掌握。

由于知识水平的局限,设计中可能会存在着一些不足,我真诚的希望老师给与指导。

5. 收获与致谢

首先,感谢学校三年来对我的培养。本课题的前期准备以及整个研究过程是在段老师和丁老师的耐心指导下完成的,他们严谨的治学态度、扎实的理论基础、全身心投入工作的精神以及对学生尽心尽力的态度给了我极大的帮助与鼓励,使我受益匪浅,并将积极影响我今后的学习和工作。在此谨对丁老师和段老师表示崇高的敬意和衷心的感谢!

这次课程设计之后,使我明白了,做任何事情都要认真仔细有个计划,不然的话,你会花更多的时间才会做好。和同学之间的合作交流也很重要,毕竟一个人的智慧是有限,集思广益,此言得之。课程设计有利于提高我们的动手能力,能把我们所学的书本知识运用到实际生活中去。同时也丰富了我们的业余生活,提高我们对知识的理解能力。

还要衷心感谢其他所有对本课题设计和论文撰写有过帮助的老师和同学。

6. 参考文献

[1] 张毅刚,彭喜元,董继成.单片机原理及应用.高等教育出版社,2003.12

[2] 童诗白,华成英.模拟电子技术基础.高等教育出版社。2006.05

[3] 张大明,刘振鹏.单片微机控制应用技术实操指导书.机械工业出版社,2007.04

[4] 阎石, 数字电子技术基础(第五版)高等教育出版社 2005.03

[5] 邱关源,罗先觉.电路 (第五版) [M].北京:高等教育出版社,2006.03

[6] https://www.doczj.com/doc/e618123682.html,/

7. 附件

7.1元件清单

7.2硬件原理图

如图7-1所示。

图7-1 原理图

7.3、C语言源程序

模块化程序设计。

(1)延时程序设计:void delay(uint z)

{ uint x,y;

for(x=z;x>0;x--)

for(y=110;y>0;y--);//延时Z个MS }

(2)初始化程序设计:void init()

{ count=hge=hshi=fge=fshi=s1num=hhshi=ffge=ffshi=hhge=0;

we1=we2=we3=we4=aa=1;

TMOD=0x01;

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

EA=1;

ET0=1;

TR0=1; }//初始化程序

(3)显示程序设计:void display2(uchar z) { hge=z%10;

hshi=z/10;//显示小时 }

void display4(uchar z)

{ hhge=z%10;

hhshi=z/10;//显示小时 }

void display1(uchar z)

{ fge=z%10;

fshi=z/10;//显示分钟 }

void display3(uchar z)

{ ffge=z%10;

ffshi=z/10;//显示分钟 }

void display5(uint a,uint b,uint c,uint d) { we1=1;//第四个

P2=table[a];

delay(3);

we1=0;

we3=1;//第二个

P2=table[b];

delay(3);

we3=0;

we2=1;//第三个

P2=table[c];

delay(3);

we2=0;

we4=1;//第一个

相关主题
文本预览
相关文档 最新文档