数字日历时钟设计.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
中华民族有着五千多年的文明历史,中华民族在世界上是一个非常卓越和伟大的民族。我们有过繁荣昌盛的唐朝,有过强盛无比疆域辽阔的汉朝和元朝,更有灿烂美丽的唐、宋文化 单片机原理与应用课程实训 液晶(LED)日历时钟项目实训 液晶(LED)日历时钟项目实训 班级:电子1001 组员:陶涛、张含、卞修杰、张辉辉、季必云、郑军、赵胜强、高晓军 指导老师:朱孝立 日期:2012年6月18日—2012年6月21日 三、软件流程 与说明 液晶(LED)日历 时钟项目实训 二、硬件工作原理 2.1 电路图 2.2 主要模块 2.3 主要元件 3.1 软件框图 3.2 重点函数编程 一、项目概述 四、调试过程 与实验结果 Z Z Z Z Z Z Z 项目概述 1.功能特性:液晶屏显示当前时间,并可通过按键调整 2.技术指标参数:DS1302是51单片机系统常用的日历时钟,该芯片提供了秒、分、时、日、月、星期和年的信息。DS1302的读写操作要在严格的复位信号和时钟信号的配合下完成。 3.开发器材:AT89S52单片机、日历时钟DS1302及SMC1602 LCM液晶显示屏 4.环境:SZ51单片机开发板 Z 电路图 DS1302 1602LCD Z 主要模块 1.模块组成:本程序采用模块化设计的方法,主要由主函数,显示模块,日期模块组成。 2.单片机主控制模块电路设计 在这里我们们要了解一下关于AT89S52单片机的相关的资料从而使我们们对AT89S51有一个深入理解和印象。AT89S52单片机具有在线调试的功能,可以很方面的用于实时的时钟连接调试,在本系统中单片机的工作与复位电路图。所采用的12M的晶振用于单片机的工作,采用上电的方式进行复位。 DS1302是美国DALLAS公司推出的一种高性能、低功耗的实时时钟日历芯片,附加31字节静态RAM,采用SPI三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号和RAM数据。实时时钟可提供秒、分、时、日、星期、月和年,一个月小于31天时可以自动调整,且具有闰年补偿功能。工作电压宽达2.5~5.5V。采用双电源供电(主电源和备用电源),可设置备用电源充电方式,提供了对后备电源进行涓细电流充电的能力。有主电源和备份电源双引脚,而且备份电源可由大容量电容(>1F)来替代。需要强调的是,DS1302需要使用32.768KHz的晶振。 数字时钟芯片的详细的介绍,通过单片机可以很方便的控制时钟芯片的工作,下面看一下时钟芯片DS1302与系统的连接图如图2-3所示。 图2-3 3. 键盘输入部分 键盘在单片机系统中是一个很重要的部件。为了输入数据、查询和控制系统的工作状态,都要用到键盘,键盘是人工干预计算机的主要手段。 在键盘的设计过程中,一般采用非编码键盘,在此的使用的过程中要注意消抖的问题,键盘的抖动对系统正常的工作影响很大,所以一定要消抖。 在本系统的设计过程中,共有四个键分别是功能移位键、时间的“+”键、时间的“—”键、特殊时间转换键:与系统的连线图如图2-5下 图2-5 Z 主要元件 AT89S52单片机 日历时钟DS1302 SMC1602 LCM液晶显示屏 Z 开始 定义日 期变量 调用初 始化函数 液晶显 示函数 1 外部中 断函数 结束 开始 控制外部 中断程序 DS1302 写/读函数 1602 写指令函数 延时函数 结束 主函数 初始化函数 Z 3.2.1主函数 void main() //主函数 { uchar n; init(); while(num[n]!=\0) //写液晶的第一行显示 { writedat(num[n]); n++; } writecom(0x80+0x40); n=0; while(num1[n]!=\0) //液晶的第二行显示 { writedat(num1[n]); n++; } while(1) //对时间的不断刷新 { if(flag==0) readtime1302(); writecom(0x80+0x44); writedat(0x30+shi/16); writedat(0x30+shi%16); writecom(0x80+0x47); writedat(0x30+fen/16); writedat(0x30+fen%16); writecom(0x80+0x4a); writedat(0x30+miao/16); writedat(0x30+miao%16); writecom(0x83); writedat(0x30+nian/16); writedat(0x30

文档评论(0)

sanshengyuan + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档