【毕业设计】基于51单片机的lcd简单电子钟的设计_第1页
【毕业设计】基于51单片机的lcd简单电子钟的设计_第2页
【毕业设计】基于51单片机的lcd简单电子钟的设计_第3页
【毕业设计】基于51单片机的lcd简单电子钟的设计_第4页
【毕业设计】基于51单片机的lcd简单电子钟的设计_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

编号单片机原理及应用设计实验报告课题电子钟专业自动化2015年5月27日目录0前言11总体方案设计12硬件电路设计23软件设计44调试分析及说明55结论7参考文献7课设体会8附录1电路原理9附录2程序清单10摘要传统的数字电子时钟采用了较多的分立元器件,不仅占用了很大的空间而且利用率也比很低,随着系统设计复杂度的不断提高,用传统时钟系统设计方法很难满足设计需求。单片机是集CPU、RAM、ROM、定时器/计数器和多种接口于一体的微控制器。它体积小、成本低、功能强,广泛应用于智能产品和工业自动化上。而51系列的单片机是各单片机中最为典型和最有代表性的一种。,本次设计提出了系统总体设计方案,并设计了各部分硬件模块和软件流程,在用C语言设计了具体软件程序后,将各个模块完全编译通过过后,结果证明了该设计系统的可行性。该设计给出了以AT89C2051为核心,利用单片机的运算和控制功能,并采用系统化LED显示模块实时显示数字的设计方案,适当地解决了实际生产和日常生活中对计时高精确度的要求,因此该设计在现代社会中具有广泛的应用性。关键字AT89C2051,C语言程序,电子钟。0前言利用51单片机开发电子时钟,实现时间显示、调整功能。具体要求如下(1)根据给定题目设计的PROTEUS仿真原理图,并简单阐述设计原理;(2)根据给定题目设计有关的51汇编语言(或C语言)源程序,及主要的流程框图;(3)在PROTEUS仿真界面下运行程序实现给定的功能;(4)下载到ZKSYS单片机实验板上验证有关程序实现给定的功能。1总体方案设计该电子时钟由89C51,按键,1602LCD液晶屏等构成,采用晶振电路作为驱动电路,利用单片机内部定时计数器0通过软件扩展产生的一秒定时,达到时分秒的计时,六十秒为一分钟,六十分钟为一小时,满二十四小时为一天。时钟的年月日时分秒的切换是由一个按键控制,而另外两个个按键控制加减调节。图1系统结构框图该电子时钟由STC89C51,按键,1602LCD液晶屏等构成,采用晶振电路作为驱动电路,晶振电路的晶振频率为12MHZ,使用的定时器/计数器工作方式1,通过软件扩展产生的一秒定时,达到时分秒的计时,60秒为一分钟,60分钟为一小时,24小时为一天,又重000000开始计时2硬件电路设计1时钟电路设计单片机利用外部12MHZ晶振构成振荡电路作为时钟源,时钟电路的原理如下图。图2时钟电路图2独立按键输入电路按键处理设置为当有没键按下时,时钟正常运行;当按K1时分别切换到年月日时分秒;按K2为加。按K3为减。电路图如下图图3独立按键电路3单片机系统AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFALSHPROGRAMMABLEANDERASABLEREADONLYMEMORY)的低电压,高性能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脚空脚或背灯电源。电路如下图图5LCD液晶显示图3软件设计本系统的软件系统主要可分为主程序、定时计数中断程序、时间调整程序、延时程序四大模块。系统的流程图如下图是否开始液晶初始化时间初始化按键是否按下读取时间显示时间调整时间结束设计思路本系统主要可分为主程序、定时计数中断程序、时间调整程序、延时程序和LCD液晶驱动程序。定时中断程序是利用单片机内部定时器0实现1秒的定时,然后利用软件延时实现分小时,时间调整程序是利用单片机的内部存贮器,把调整好的时间写到显示时间的存贮单元,然后启动定时器开始计时并显示,延时程序是利用软件实现延时达到去抖的目的。液晶启动程序是为了把单片机的数据送到显示器的同时让显示器的第6脚使能断的电平实现由1到0的跳变,使显示器执行显示的命令。主程序就是利用这些子程序中断程序实现显示、定时等功能。4调试分析及说明1时钟正常运行调试仿真图图6正常运行仿真图2时间调整仿真图10对时分秒的调整5结论本次电子时钟的设计基本完成当没有键按下时,时钟正常运行;时钟的年月日时分秒的切换是由一个按键控制,而另外两个个按键控制加减调节附录1电路原理附录2程序清单INCLUDEDEFINEUCHARUNSIGNEDCHARDEFINEUINTUNSIGNEDINTUCHARCODETABLE“20150527WED“UCHARCODETABLE1“123055“UCHARCODETABLE2“1200810222“UCHARCODETABLE3“MADEBYHUANG“UCHARCODETABLE4“MONTUEWEDTHUFRISATSUN“UCHARCOUNT,S1NUMCHARMIAO,FEN,SHI,RI,YUEUINTNIANSBITLCD_RSP20SBITLCD_RWP21SBITLCD_ENP22SBITS1P10SBITS2P11SBITS3P12SBITOUTPUT_SQUP36VOIDDELAYUINTZ/延时子函数UINTX,YFORXZX0XFORY110Y0YVOIDWRITE_COMUCHARCOM/写命令函数LCD_RS0P0COMDELAY5LCD_EN1DELAY5LCD_EN0VOIDWRITE_DATEUCHARDATE/写数据函数LCD_RS1P0DATEDELAY5LCD_EN1DELAY5LCD_EN0VOIDINIT/初始化函数INTNUMSHI12FEN30MIAO55RI27YUE5NIAN2015LCD_EN0LCD_RW0WRITE_COM0X38/显示设置模式WRITE_COM0X0C/00001100开显示,不显示光标,光标不闪烁WRITE_COM0X06/00000110地址指针加一,整屏不移动WRITE_COM0X01/清屏WRITE_COM0X80FORNUM0NUM16NUM/显示数字1200810222WRITE_DATETABLE2NUMDELAY300WRITE_COM0X800X40FORNUM0NUM16NUM/显示MADEBYHUANGWRITE_DATETABLE3NUMDELAY300DELAY5000WRITE_COM0X01WRITE_COM0X80FORNUM0NUM16NUM/显示日期WRITE_DATETABLENUMDELAY5WRITE_COM0X800X40FORNUM0NUM12NUM/显示时间WRITE_DATETABLE1NUMDELAY5TMOD0X51/启动定时器中断TH00X3C/50MSTL00XB0TH10X00TL10X00EA1ET01TR01/打开定时器0TR11/打开定时器0VOIDWRITE_SFMUCHARADD,UCHARDATE/写时分秒函数UCHARSHI,GESHIDATE/10GEDATE10WRITE_COM0X800X40ADDWRITE_DATE0X30SHIWRITE_DATE0X30GEVOIDWRITE_NYRUINTADD,UINTDATE/写年月日函数,此处若用UCHAR范围只有0255/不够,改用UINT065535UINTQIAN,BAI,SHI,GEQIANDATE/1000BAIDATE1000/100SHIDATE100/10GEDATE10WRITE_COM0X80ADDWRITE_DATE0X30QIANWRITE_DATE0X30BAIWRITE_DATE0X30SHIWRITE_DATE0X30GEVOIDWRITE_YRUCHARADD,UCHARDATE/写月日函数UCHARSHI,GESHIDATE/10GEDATE10WRITE_COM0X80ADDWRITE_DATE0X30SHIWRITE_DATE0X30GEVOIDKEYSCAN/按键扫描函数INTM,NIFS10DELAY5IFS10/按键1光标移位扫描S1NUMIFS1NUM1WHILES1/等待按键松手WRITE_COM0X800X4010TR00/关闭定时器WRITE_COM0X0F/开显示,显示光标,光标闪烁IFS1NUM2WHILES1WRITE_COM0X800X407IFS1NUM3WHILES1WRITE_COM0X800X404IFS1NUM4WHILES1WRITE_COM0X803IFS1NUM5WHILES1WRITE_COM0X806IFS1NUM6WHILES1WRITE_COM0X809IFS1NUM7WHILES1WRITE_COM0X8013IFS1NUM8WHILES1S1NUM0WRITE_COM0X0CTR01/开定时器IFS1NUM0IFS20/按键2加功能DELAY5IFS20WHILES2IFS1NUM1/秒加MIAOIFMIAO60MIAO0WRITE_SFM10,MIAOWRITE_COM0X800X4010IFS1NUM2/分加FENIFFEN60FEN0WRITE_SFM7,FENWRITE_COM0X800X407IFS1NUM3/时加SHIIFSHI24SHI0WRITE_SFM4,SHIWRITE_COM0X800X404IFS1NUM4/年加NIANIFNIAN10000NIAN2000WRITE_NYR1,NIANWRITE_COM0X803IFS1NUM5/月份加YUEIFYUE13YUE1WRITE_YR6,YUEWRITE_COM0X806IFS1NUM6/日期加RIIFRI29/平年IFRI30/闰年IFRI31IFRI32RI1WRITE_YR9,RIWRITE_COM0X809IFS1NUM7/星期加MM3IFM21M0WRITE_COM0X8012FORNMNM3NWRITE_DATETABLE4NDELAY5WRITE_COM0X8013IFS30/按键3减功能DELAY5IFS30WHILES3IFS1NUM1/秒减MIAOIFMIAO1MIAO59WRITE_SFM10,MIAOWRITE_COM0X800X4010IFS1NUM2/分减FENIFFEN1FEN59WRITE_SFM7,FENWRITE_COM0X800X407IFS1NUM3/时减SHIIFSHI1SHI23WRITE_SFM4,SHIWRITE_COM0X800X404IFS1NUM4/年减NIANIFNIAN1999NIAN2000WRITE_NYR1,NIANWRITE_COM0X803IFS1NUM5/月份减YUEIFYUE0YUE12WRITE_YR6,YUEWRITE_COM0X806IFS1NUM6/日减RIIFRI0IFYUE2/平年IFYUE2/闰年IFYUE4|YUE6|YUE9|YUE11RI30IFYUE1|YUE3|YUE5|YUE7|YUE9|YUE11RI31WRITE_YR9,RIWRITE_COM0X809IFS1NUM7/星期减MM3IFM0M21WRITE_COM0X8012FORNMN3MNWRITE_DATETABLE4N3DELAY5WRITE_COM0X8013VOIDMAININTI,JINITWHILE1KEYSCANIFTL18TH10X00TL10X00MIAOIFMIAO60MIAO0FENIFFEN60FEN0SHIIFSHI24SHI0RIJJ3IFJ21J0WRITE_C

温馨提示

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

评论

0/150

提交评论