基于51单片机的电子时钟的设计_第1页
基于51单片机的电子时钟的设计_第2页
基于51单片机的电子时钟的设计_第3页
基于51单片机的电子时钟的设计_第4页
基于51单片机的电子时钟的设计_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

1、成都理工大学工程技术学院课程设计 电子钟的设计与仿真目 录0前言11总体方案设计12 硬件电路设计23 软件设计44 调试分析及说明55 结论7参考文献7课设体会8附录1 电路原理9附录2 程序清单10 电子钟的设计与仿真 赵伟 成都理工大学工程技术学院电气工程及其自动化3班摘要:传统的数字电子时钟采用了较多的分立元器件,不仅占用了很大的空间而且利用率也比很低,随着系统设计复杂度的不断提高,用传统时钟系统设计方法很难满足设计需求。单片机是集CPU、RAM、ROM、定时器/计数器和多种接口于一体的微控制器。它体积小、成本低、功能强,广泛应用于智能产品和工业自动化上。而51系列的单片机是各单片机中

2、最为典型和最有代表性的一种。,本次设计提出了系统总体设计方案,并设计了各部分硬件模块和软件流程,在用C语言设计了具体软件程序后,将各个模块完全编译通过过后,结果证明了该设计系统的可行性。该设计给出了以AT89C2051为核心,利用单片机的运算和控制功能,并采用系统化LED显示模块实时显示数字的设计方案,适当地解决了实际生产和日常生活中对计时高精确度的要求,因此该设计在现代社会中具有广泛的应用性。关键字:AT89C2051,C语言程序,电子钟。0 前言利用51单片机开发电子时钟,实现时间显示、调整和闹铃功能。具体要求如下:(1) 按以上要求制定设计方案,并绘制出系统工作框图;(2) 按要求设计部

3、分外围电路,并与单片机仿真器、单片机实验箱、电源等正确可靠的连接,给出电路原理图;(3) 用仿真器及单片机实验箱进行程序设计与调试;(4) 利用键盘输入调整秒、分和小时时刻,数码管显示时间;(5) 实现闹钟功能,在设定的时间给出声音提示。1 总体方案设计 该电子时钟由89C51,BUTTON,1602 LCD液晶屏等构成,采用晶振电路作为驱动电路,利用单片机内部定时计数器0通过软件扩展产生的一秒定时,达到时分秒的计时,六十秒为一分钟,六十分钟为一小时,满二十四小时为一天。闹钟和时钟的时分秒的调节是由一个按键控制,而另外一个按键控制时钟和闹钟的时间的调节。 图1 系统结构框图该电子时钟由STC8

4、9C51,BUTTON,1602 LCD液晶屏等构成,采用晶振电路作为驱动电路,晶振电路的晶振频率为12MHZ,使用的定时器/计数器工作方式0,通过软件扩展产生的一秒定时,达到时分秒的计时,60秒为一分钟,60分钟为一小时,24小时为一天,又重00:00:00开始计时。没有按键按键按下时,时钟正常运行,当按下调节时钟按键K1,就会关闭时钟,当按下闹钟按键K3时时钟就会进入设置时间界面,但是时钟不会停止工作,按K2键,就可以对时钟和闹钟要设置的时间进行调整。2硬件电路设计(1) 时钟电路设计单片机利用外部12MHZ晶振构成振荡电路作为时钟源,时钟电路的原理如下图。图2 时钟电路图(2) 独立按键

5、输入电路 按键处理设置为:当有没键按下时,时钟正常运行;当按一次K1,时钟停止走动,按K2对秒进行调整;当K1按2次时,按K2 对分进行调整;当K1按下3次时,按K2 对小时进行调整,当按下4次K1时,校时完毕,时钟按设定的时间进行正常走时。当按1次K3进入闹钟设置界面,时钟继续进行走时,按K2对秒进行设置;当按2次K3,按K2对分进行设置;当按3次K3,按K2对秒进行设置;当按下4次K3时,闹钟设置完毕进入时钟显示界面。电路图如下图 图3 独立按键电路(3) 单片机系统AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Eras

6、able Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。外形及引脚排列如下图图4 单片机系统图(4) 液晶显示LCD1602采用标准的16脚接口,第1脚:VSS为电源地;第2脚:VDD接5V电源正极;第3脚:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高;第4脚:RS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器;第5脚:RW为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写操作;第6脚:E(或EN)端为使能(enable)端。第714脚:D0D7为8位双向数据端;第1516脚:空脚或背灯电源。电路如下

7、图 图5 LCD液晶显示图3软件设计本系统的软件系统主要可分为主程序、定时计数中断程序、时间调整程序、延时程序四大模块。系统的流程图如下图 设计思路:本系统主要可分为主程序、定时计数中断程序、时间调整程序、延时程序和LCD液晶驱动程序。定时中断程序是利用单片机内部定时器0实现1秒的定时,然后利用软件延时实现分小时,时间调整程序是利用单片机的内部存贮器,把调整好的时间写到显示时间的存贮单元,然后启动定时器开始计时并显示,延时程序是利用软件实现延时达到去抖的目的。液晶启动程序是为了把单片机的数据送到显示器的同时让显示器的第6脚使能断的电平实现由1到0的跳变,使显示器执行显示的命令。主程序就是利用这

8、些子程序中断程序实现显示、定时、闹钟等功能。 4调试分析及说明(1) 时钟正常运行调试仿真图图6 正常运行仿真图 (2) 闹钟调试仿真图 图7 对闹钟时间进行设置图8 设置好的闹钟时间图9 闹钟响铃(3) 时间调整仿真图10 对时分秒的调整5 结论本次电子时钟的设计基本完成:当没有键按下时,时钟正长运行;当按一次K1,时钟停止走动,按K2对秒进行调整;当K1按2次时,按K2 对分进行调整;当K1按下3次时,按K2 对分进行调整,当按下4次K1时,校时完毕,时钟按设定的时间进行正常走时。当按1次K3进入闹钟设置界面,时钟继续进行走时,按K2对秒进行设置;当按2次K3,按K2对分进行设置;当按3次

9、K3,按K2对秒进行设置;当按下4次K3时,闹钟设置完毕进入时钟显示界面。 参考文献1、单片机原理及应用李建忠 编 西安电子科技大学出版社。2、单片微型计算机原理与接口技术 高峰 编 电子工业出版社。3、单片机应用新技术教程邹逢兴 编 高等教育出版社。4、16位微型计算机原理接口及其应用 朱宇光 编 电子工业出版社。5、微型计算机原理与接口技术 吴秀清 编 中国科学技术出版社。6、微型计算机接口技术 邓亚平 编 清华大学出版社。7、单片机原理及及应用 王迎旭 编 机械工业出版社。课设体会两周的课程设计到目前为止可以说是告一段落了,我也顺利的完成了自己的课题简易电子时钟的设计,由于自己一心准备考

10、研在这次课程设计上除了那些必要的时间其余也么有花太多的时间,本想改进的第三个跑表功能由于在程序上出了点问题就没花时间去做了,所以这次设计还不算很完美刚开始被拿到这个课题的,感觉挺迷茫的,当时就只知道软件编程要用到定时器,自己也就在这方面懂一点,其余的关于硬件电路,液晶显示电路的驱动的什么都不知道,后来回来之后就看了一下51单片机课程设计那本书,在网上找了一些资料对硬件电路的设计有了一定的了解。在大脑里面有了一个大致的思路了,于是就把仿真软件装好开始了我的课设。本次课设让我对单片机有了更深入的认识,现代社会中几乎处处都有单片机的影子,电子产品离不开它。课设提高了我的单片机实际运用能力,也发现了自

11、己以前学习的不扎实,对问题不求甚解。现在才知道“书到用时方少”啊!学习还是得扎实。本次课设能顺利完成,甚是感谢指导老师的帮助。 2012年7月 16日完成附录1 电路原理附录2 程序清单#include<reg52.h>#define uchar unsigned char#define uint unsigned intuchar table="TIME"sbit lcden=P34;sbit lcdrs=P35;sbit beep=P36;extern void key1();extern void key2();extern void key3();uch

12、ar num,hour=12,minite,second,ahour,aminite,asecond,a,F_k1,F_k2,F_k3;void delay(uint z)uint x,y;for(x=z;x>0;x-)for(y=110;y>0;y-);void write_com(uchar com)lcdrs=0;P0=com;delay(5);lcden=1;delay(5);lcden=0;void write_data(uchar date)lcdrs=1;P0=date;delay(5);lcden=1;delay(5);lcden=0;void write_add(

13、uchar add,uchar date)uchar aa,bb;aa=date/10;bb=date%10;write_com(0x80+add);write_data(0x30+aa);write_data(0x30+bb);void init()lcden=0;write_com(0x38);write_com(0x0c);write_com(0x06);write_com(0x01);write_com(0x80);void display(uchar h,uchar m,uchar s) write_com(0x80+0x04); write_data(':');wr

14、ite_data(0x30+(h/10);write_data(0x30+(h%10);write_data(':');write_data(0x30+(m/10);write_data(0x30+(m%10);write_data(':');write_data(0x30+(s/10);write_data(0x30+(s%10);write_data(' ');write_data(' ');write_data(' ');write_data(' ');void main()init();TM

15、OD=0X01;TH0=(65535-50000)/256;TL0=(65535-50000)%256;EA=1;TR0=1;ET0=1;for(num=0;num<4;num+)write_data(tablenum);while(1)key1();key2();key3();if(ahour=hour&&aminite=minite&&second<10)beep=beep;if(F_k1=0&F_k3=0)display(hour,minite,second);void timer0() interrupt 1 TH0=(65535-5

16、0000)/256; TL0=(65535-50000)%256; a+; if(a=20)a=0;second+;if(second=60)second=0;minite+;if(minite=60)minite=0;hour+;if(hour=24)hour=0;#include "reg52.h"#define uchar unsigned char#define uint unsigned intsbit k1=P10;sbit k2=P11;sbit k3=P12;extern uchar F_k1,F_k3,second,minite,hour,ahour,am

17、inite,asecond;extern void write_com(uchar com);extern void write_add(uchar add,uchar date);extern void display(uchar h,uchar m,uchar s);void delay_key(int i)while(i-);void key1() if(k1=0)delay_key(100);if(k1=0)TR0=0;while(!k1);F_k1+;if(F_k1=4)F_k1=0;write_com(0x0c);TR0=1;if(F_k1=1|F_k3=1)write_com(0

18、x80+0x0c);write_com(0x0f);if(F_k1=2|F_k3=2)write_com(0x80+0x09);if(F_k1=3|F_k3=3)write_com(0x80+0x06);void key2()if(k2=0)delay_key(100);while(!k2);if(F_k1=1)second+;if(second=60)second=0;write_add(0x0b,second);if(F_k1=2)minite+;if(minite=60)minite=0;write_add(0x08,minite);if(F_k1=3)hour+;if(hour=24)hour=0;write_add(0x05,hour);if(F_k3=1)asecond+;if(asecond=60)asecond=

温馨提示

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

评论

0/150

提交评论