LCD显示的电子闹钟课程设计_第1页
LCD显示的电子闹钟课程设计_第2页
LCD显示的电子闹钟课程设计_第3页
LCD显示的电子闹钟课程设计_第4页
LCD显示的电子闹钟课程设计_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

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

文档简介

1、单片机课程设计题目 lcd显示的电子闹钟 姓 名: 所在学院: 所学专业: 班 级: 学 号: 指导教师: 完成时间: 摘 要时间是现代社会中不可缺少的一项参数,无论是平时生活还是社会生产都需要对时间进行控制,有的场合对其精确性还有很高的要求。本设计采用单片机芯片进行计时,由于at89c51系列单片机的体积小,成本低,控制器运算能力强,处理速度快,可以精确计时,对于社会生产有着十分重要的作用。在此次设计中,at89c51单片机芯片是主要的元器件,通过它来控制电路的lcd、晶振、电阻、电容、发光二极管、开关、喇叭等元件组成的硬件电路,再利用软件来执行一定的程序来实现lcd电子定时闹钟计时功能和定

2、时闹铃的设置和控制。由于系统所用元器件较少,单片机所被占用的i/o口不多,因此系统具有一定的可扩展性。关键词: 单片机 计时 at89c51目 录1 绪论12总体方案设计与论证13硬件电路设计33.1单片机系统33.2 时钟电路设计43.3 独立按键输入电路43.4 lcd液晶显示53.5喇叭部分的电路54软件设计75调试分析及说明85.1 时钟正常运行调试仿真85.2 闹钟调试仿真85.3 时间调整仿真96 结论107心得体会11参考文献12附录1 电路原理图13附录2 程序清单14 i1 绪论现在是一个高度发达的高科技的时代,目前单片机正朝向高性能和多品种方向发展,而且进一步向低功耗,小体

3、积,大容量,高性能,低价格和外围电路内装化等几个方向发展。单片机的应用还从根本上改变了传统的控制系统设计思想和方法。从前必须由模拟电路和数字电路实现的大部分功能,现在已经能够用单片机运用软件方法来实现了,因此称之为软件代替硬件的控制技术。一个世纪以来,单片机技术如今已经受到了迅速的推广及运用。渗透到我们生活的各个领域,在智能仪器,工业控制,家用电器,计算机网络和通信等都得到广泛的应用。世界各大电气厂家,测控技术企业,机电行业大批竞相把单片机应用于产品更新,作为实现数字化,智能化的核心部件。随着集成电路技术的不断发展,单片机的性能也在不断提高,其应用的范围必将越来越宽广。lcd电子定时闹钟使用数

4、字电路技术实现时分秒计时的装置,有更高的准确性和直观性,寿命更长,广泛的应用于家庭,车站,办公室等场所,成为人们日常生活不可缺少的必需品,它给人们带来了很大的方便。由于时钟的实用性和在人们生活中的重要性,所以,以单片机为核心的数字时钟是很有社会意义和社会价值的。钟表原先的报时功能已经原不能满足人们日益增长的要求,现代的电子时钟多带有类似自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、通断动力设备、甚至各种定时电气的自动启用等功能。现在是高度发达的社会,时间观念很重要,自古以来人们对时间的控制都是十分棘手的问题,俗话说事件就时间就是生命,lcd电子定时闹钟的多功能化必定将一步一

5、步的开拓出来。与时间相关的产品在任何时候都是不可或缺的物质,它的前景一如既往的远大。2总体方案设计与论证该电子时钟由89c51,button,1602 lcd液晶屏等构成,采用晶振电路作为驱动电路,利用单片机内部定时计数器0通过软件扩展产生的一秒定时,达到时分秒的计时,六十秒为一分钟,六十分钟为一小时,满二十四小时为一天。闹钟和时钟的时分秒的调节是由一个按键控制,而另外一个按键控制时钟和闹钟的时间的调节。系统结构框图如图1所示。图1 系统结构框图其中at89c51为硬件系统的核心部分,震荡电路为单片机芯片提供时钟信号,调时电路用来设置时间和闹铃时间,输出分为两部分;一部分连接到lcd用于时间的

6、显示,一部分连接到喇叭,用于闹铃声音的输出。3硬件电路设计3.1单片机系统在本lcd电子闹钟设计中就是采用利用我们熟悉的at89c51单片机为主控芯片。at89c51单片机由微处理器,存储器,i/o口以及特殊功能寄存器sfr等部分构成。其存储器在物理上设计成程序存储器和数据存储器两个独立的空间,片内程序存储器的容量为4kb,片内数据存储器为128个字节。89c51单片机有4个8位的并行i/o口:p0口,p1口,p2口和p3口。各个接口均由接口锁存器,输出驱动器,和输入缓冲器组成。p1口是唯一的单功能口,仅能用作通用的数据输入/输出口。p3口是双功能口除了具有数据输入/输出功能外,每条接口还具有

7、不同的第二功能,如p3.0是串行输入口线,p3.1口是串行输出口线。在需要外部程序存储器和数据存储器扩展时,p0可作为分时复用的低8位地址/数据总线,p2口可作为高8位的地址总线。p3口也可作为at89c51的一些特殊功能口,同时为闪烁编程和编程校验接收一些控制信号。外形及引脚排列如图2所示。图2 单片机系统图3.2 时钟电路设计at89c51系列的单片机的时钟方式分为内部方式和外部方式。内部方式就是在单片机的xtal1和xtal2的两引脚外接晶振,就够成了自激振荡器在单片机内部产生时钟脉冲信号。外部时钟方式是把外部已经有的时钟信号引入到单片机内部。时钟电路在计算机系统中起着非常重要的作用,是

8、保证系统正常工作的基础。在一个单片机应用系统中,时钟有两方面的含义:一是指为保障系统正常工作的基准振荡定时信号,主要由晶振和外围电路组成,晶振频率的大小决定了单片机系统工作的快慢;二是指系统的标准定时时钟,即定时时间。本lcd电子闹钟设计是采用内部时钟方式,用一个12mhz晶振和两个30pf瓷片电容组成,为单片机提供标准时钟,其中两个瓷片电容起微调作用。之所以采用高性能的振荡电路,因为:1.单片机电子钟的计时脉冲基准是由外部晶振的频率经过12分频后提供,采用内部的定时/计数器来实现计时功能。所以,外接晶振频率精确度直接影响电子钟计时的准确性。 2.单片机电 子钟利用内部定时/计数器溢出产生中断

9、(12m晶振一般为50ms)再乘以相应的倍率来实现秒、分、时的转换。大家都知道从定时/计数器产生中断请求到响 应中断需要3-8个机器周期,定时中断子程序中的数据入栈和重装定时/计数器的初值还需要占用数个机器周期,还有从中断入口转到中断子程序也要占用一定的 机器周期。 时钟电路图如图3所示。图3 时钟电路图3.3独立按键输入电路 按键处理设置为:当有没键按下时,时钟正常运行;当按一次k1,时钟停止走动,按k2对秒进行调整;当k1按2次时,按k2 对分进行调整;当k1按下3次时,按k2 对小时进行调整,当按下4次k1时,校时完毕,时钟按设定的时间进行正常走时。当按1次k3进入闹钟设置界面,时钟继续

10、进行走时,按k2对秒进行设置;当按2次k3,按k2对分进行设置;当按3次k3,按k2对秒进行设置;当按下4次k3时,闹钟设置完毕进入时钟显示界面。独立按键电路如图4所示。图4独立按键电路3.4 lcd液晶显示为了获得更好的效果本设计并没有采用常见的led,而是采用了型号为1602的 lcd。lcd有led数码显示更好的更的直观效果,也更加经久耐用。液晶显示模块体积小功耗低、显示内容丰富,现在字符型液晶显示模块已经是单片机应用设计中最常用的信息显示器件之一了。本lcd是2行16列液晶 可显示2行16列英文字符,有8位数据总线d0-d7,rs,r/w,en三个控制端口(共14线),工作电压为5v。

11、没背光,和常用的1602b功能和引脚一样(除了调背光的二个线脚). 该模块也可只用d4-d7作为四位数据分两次传送。这样的话可以节省mcu的i/o口资源。lcd液晶显示电路如图5所示。 图5 lcd液晶显示图3.5喇叭部分的电路扬声器的电路部分比较简单,通过单片机发出的控制信号经过简单的放大和处理后直接控制ls1喇叭。喇叭电路如图6所示。图6 speaker部分电路图其中2n5088的参数为:类型:npn集电极发射集最小雪崩电压vceo(v):30集电极最大电流ic(max)(ma):0.050直流电流增益hfe最小值(db):350直流电流增益hfe最大值(db):最小电流增益带宽乘积ft(

12、mhz):50封装/温度():to92/-55150采用2n5088将获得更好更纯净的声音信号ls1是经典常见的喇叭。4软件设计本系统的软件系统主要可分为主程序、定时计数中断程序、时间调整程序、延时程序四大模块。系统的流程图如图7所示。 图7 系统的流程图本系统主要可分为主程序、定时计数中断程序、时间调整程序、延时程序和lcd液晶驱动程序。定时中断程序是利用单片机内部定时器0实现1秒的定时,然后利用软件延时实现分小时,时间调整程序是利用单片机的内部存贮器,把调整好的时间写到显示时间的存贮单元,然后启动定时器开始计时并显示,延时程序是利用软件实现延时达到去抖的目的。液晶启动程序是为了把单片机的数

13、据送到显示器的同时让显示器的第6脚使能断的电平实现由1到0的跳变,使显示器执行显示的命令。主程序就是利用这些子程序中断程序实现显示、定时、闹钟等功能。 5调试分析及说明5.1时钟正常运行调试仿真 图8 正常运行仿真图5.2 闹钟调试仿真 (a)闹钟时间秒设置 (b)闹钟时间分设置 (c) 闹钟时间时设置 图9 闹钟时间设置图10闹钟时间图11 闹钟响铃5.3 时间调整仿真 (a) 时钟秒设置 (b)时钟分设置 (c) 时钟时设置 (d)时钟运行时间图12 时钟时分秒的调整6 结论本次电子时钟的设计基本完成:当没有键按下时,时钟正长运行;当按一次k1,时钟停止走动,按k2对秒进行调整;当k1按2

14、次时,按k2 对分进行调整;当k1按下3次时,按k2 对分进行调整,当按下4次k1时,校时完毕,时钟按设定的时间进行正常走时。当按1次k3进入闹钟设置界面,时钟继续进行走时,按k2对秒进行设置;当按2次k3,按k2对分进行设置;当按3次k3,按k2对秒进行设置;当按下4次k3时,闹钟设置完毕进入时钟显示界面。 7心得体会两周的课程设计到目前为止可以说是告一段落了,我也顺利的完成了自己的课题简易电子时钟的设计,由于自己一心准备考研在这次课程设计上除了那些必要的时间其余也么有花太多的时间,本想改进的第三个跑表功能由于在程序上出了点问题就没花时间去做了,所以这次设计还不算很完美刚开始被拿到这个课题的

15、,感觉挺迷茫的,当时就只知道软件编程要用到定时器,自己也就在这方面懂一点,其余的关于硬件电路,液晶显示电路的驱动的什么都不知道,后来回来之后就看了一下51单片机课程设计那本书,在网上找了一些资料对硬件电路的设计有了一定的了解。在大脑里面有了一个大致的思路了,于是就把仿真软件装好开始了我的课设。本次课设让我对单片机有了更深入的认识,现代社会中几乎处处都有单片机的影子,电子产品离不开它。课设提高了我的单片机实际运用能力,也发现了自己以前学习的不扎实,对问题不求甚解。现在才知道“书到用时方少”啊!学习还是得扎实。本次课设能顺利完成,甚是感谢指导老师的帮助 参考文献1、单片机原理及应用李建忠 编,西安

16、电子科技大学出版社,2004.12、单片微型计算机原理与接口技术 高峰 编,电子工业出版社2007.103、单片机应用新技术教程邹逢兴 编,高等教育出版社,2001.64、16位微型计算机原理接口及其应用 朱宇光 编,电子工业出版社,2005.55、微型计算机原理与接口技术 吴秀清 编,中国科学技术出版社2007.106、微型计算机接口技术 邓亚平 编,清华大学出版社2006.37、单片机原理及及应用 王迎旭 编,机械工业出版社,2008.128、51系列单片机高级实例开发指南 李军编,北京航空航天大学出版社,2000.29、电路与电子技术 卢尔健 编,科学技术出版社,2001.610、电路基

17、本分析 石生 编,高等教育出版社2000.5附录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();uchar num,hour=12,minite,second,ahour,aminite,asecond,a,f

18、_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(uchar add,uchar date)uchar aa,bb;aa=date/10;bb=date%10

19、;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(':');write_data(0x30+(h/10);write_data(0x30+(h%10);write_data

20、(':');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();tmod=0x01;th0=(65535-50000)/256;tl0=(65535-50000)%256;ea

21、=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-50000)/256; tl0=(65535-50000)%256; a+; if(a=20)a=0;seco

22、nd+;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,aminite,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

温馨提示

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

评论

0/150

提交评论