ImageVerifierCode 换一换
格式:DOCX , 页数:39 ,大小:1.06MB ,
资源ID:7607524      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/7607524.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于DS1302与LCD1602的电子日历时钟的设计与实现.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于DS1302与LCD1602的电子日历时钟的设计与实现.docx

1、基于DS1302与LCD1602的电子日历时钟的设计与实现武汉纺织大学高职学院毕业设计(论文)2014 2015学年第 1 学期题目: 基于DS1302与LCD1602的电子日历时 钟的设计与实现 学生姓名 曹强 学 号 1218092183 指导教师 王骏 评阅教师 时 间 2014年10月 武汉纺织大学高职学院毕业设计(论文)开题报告课题名称(来源、类型):基于 DS1302 与 1602LCD 电子日历时钟的设计与实现指导教师: 王骏 学生姓名: 曹强 开题报告内容:(调研资料的准备,设计/论文的目的、要求、思路与预期成果;任务完成的阶段内容及时间安排;完成设计(论文)所具备的条件因素等

2、。)1目的:实现日历和时钟的显示并且能够调整2要求:完成电子日历和时钟的软件和硬件的设计,包括单片机的相关内容;日历时钟模块的设计,液晶显示模块的设计,控制程序的编写等。3预期成果:仿真成功,做出实物。(1)显示初始值 日历时钟初始值;4时间安排:第3周:熟悉课题的基本要求,查阅相关资料,初步拟定设计的整体方案,完成开题报告。第45周:自学这次课题所涉及的相关内容,包括器件基础知识、单片机,DS1302时钟芯片工作原理和相关软件的使用以及LCD1602液晶显示屏的相关内容。并设计一些简单的实际电路,熟练所学内容并加以巩固.第68周:设计DS1302时钟模块的控制电路、LCD1602液晶显示电路

3、、电源电路等硬件电路,并用Proteus仿真第810周:焊接调试电路,根据个部分的作用对硬件进行调试,最后联机调试。第1012周:写毕业设计论文,作品展示,完成全部毕业设计指导教师签名: 日期: 2014年 3.2 DS1302子程序.。.。.。.。.。.。.。.。12 3。4位定义。.。.。.。.。.。.。.。.。.。.。.。.18附录五 PCB图33摘 要随着现代科技的快速发展,时间的不断流逝,从观太阳、摆钟到现在的电子时钟,人类凭借非凡的智慧不断研究,又创造出新的纪录.美国Dallas公司推出了一种具有涓细电流充电能能力的低功耗实时时钟时钟芯片DS1302。它可以对年、月、日、星期、时、

4、分、秒进行计时,还具有闰年补偿等多种功能,而且DS1302的使用寿命长,误差小。对于可调电子日历采用直观的数字显示,可以同时显示年、月、日、星期、时、分、秒信息,还具有时间校准等功能。该电路采用STC89C52单片机作为核心,功耗小,能在3V的低压工作,电压可选用35V电压供电。用LCD1602液晶显示,较直观。 综上所述此可调电子日历具有读取方便、显示直观、功能多样、电路简洁、成本低廉等诸多优点,符合电子仪器仪表的发展趋势,具有广阔的市场前景。关键词时钟电路;DS1302;LCD1602;单片机STC89C52AbstractWith the rapid development of mod

5、ern science and technology, the passage of time, from the view of the sun, the pendulum clocks are now electronic clock, human with extraordinary wisdom continuously research, create a new record. The Dallas company launched a has Juan fine current charge ability of the real time clock low power con

6、sumption DS1302 chip. It can be to year, month, day, week, when, minutes and seconds for the time, also has a leap year compensation and other functions, and the DS1302 long service life and small error. For adjustable electronic calendar by using object digital display, can also shows that year, mo

7、nth, day, week, when, minutes and seconds information, but also has time calibration etc. Function。 This circuit STC89C52 single chip microcomputer as the core, its power consumption is small, can be in 3 V of lowpressure work, voltage can choose 3 5 V voltage power supply. With LCD1602 liquid cryst

8、al display, more intuitive.To sum up the adjustable electronic calendar has read the convenient, direct display, functional diversity, simple circuit, low cost, and many other advantages, conform to the trend of the development of electronic instruments, and has a broad market prospect.Key WordsThe

9、clock DianZhong; DS1302; LCD1602; STC89C52 single chip microcomputer第一章 设计要求与方案论证1.1 设计要求:1具有年、月、日、星期、时、分、秒等功能;1.2 系统基本方案选择和论证1。2。1 单片机芯片的选择方案和论证方案一:采用STC89C52芯片作为硬件核心,采用Flash ROM,内部具有4KB ROM 存储空间,能于3V的超低压工作,而且与MCS51系列单片机完全兼容,但是运用于电路设计中时由于不具备ISP在线编程技术, 当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,对芯片的多次拔插会对

10、芯片造成一定的损坏。方案二:采用STC89C52芯片内ROM全都采用Flash ROM;能以3V的超底压工作;同时也与MCS51系列单片机完全该芯片内部存储器为8KB ROM 存储空间,同样具有STC89C52的功能,且具有在线编程可擦除技术,对所下载的程序能够加密,比较安全。当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,不需要对芯片多次拔插,所以不会对芯片造成损坏。所以选择采用STC89C52作为主控制系统。1.2。2 显示模块选择方案和论证方案一:采用点阵式数码管显示,点阵式数码管是由八行八列的发光二极管组成,对于显示文字比较适合,如采用在显示数字显得太浪费,且

11、价格也相对较高,所以不用此种作为显示。方案二:采用LED数码管动态扫描,虽然LED数码管价格适中,但要显示多个数字所需要的个数偏多,功耗较大,所以也不用此种作为显示。方案三:采用LCD液晶显示屏,液晶显示屏的显示功能强大,可显示大量文字,图形,显示多样,清晰可见,与普通数码管相比功耗较小,硬件连接简单。所以显示部分采用1602液晶显示。1.2。3 时钟芯片的选择方案和论证方案一:直接采用单片机定时计数器提供秒信号,使用程序实现年、月、日、星期、时、分、秒计数.采用此种方案虽然减少芯片的使用,节约成本,但是,实现的时间误差较大。所以不采用此方案.方案二:采用DS1302时钟芯片实现时钟,DS13

12、02芯片是一种高性能的时钟芯片,可自动对秒、分、时、周、月、年一级闰年补偿的年进行计数,而且精度高,RAM作为数据暂存区,工作电压2。5V5.5V范围内,2。5V时耗电小于300nA。1.3 电路设计最终方案决定综上各方案所述,对此次作品的方案选定:采用STC89C52作为主控制系统;DS1302提供时钟;LCD1602液晶作为显示第二章 系统的硬件设计与实现2.1 电路设计框图 图1电路设计框图2。2 系统硬件概述本电路是由STC89C52单片机为控制核心,具有在线编程功能,低功耗,能在3V超低压工作;时钟电路由DS1302提供,它是一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月

13、、日、周日、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V5。5V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个31*8的用于临时性存放数据的RAM寄存器。可产生年、月、日、周日、时、分、秒,具有使用寿命长,精度高和低功耗等特点,同时具有掉电自动保存功能,本电路采用DS1302单字节传送方式实现与主控机之间数据的传送;显示部分由1602构成。2。3 主要单元电路的设计2。3.1 单片机主控制模块的设计STC89C52单片机为40引脚双列直插芯片,有四个I/O口P0,P1,P2,P3, MCS51单片机共有4个8位的I

14、/O口(P0、P1、P2、P3),每一条I/O线都能独立地作输出或输入。单片机的最小系统如下图所示,18引脚和19引脚接时钟电路,XTAL1接外部晶振和微调电容的一端,在片内它是振荡器倒相放大器的输入,XTAL2接外部晶振和微调电容的另一端,在片内它是振荡器倒相放大器的输出。第9引脚为复位输入端,接上电容,电阻及开关后够上电复位电路, 如图-2图2主控制系统2。3.2 时钟电路DS1302 1.DS1302的性能特性 DS1302是一种高性能、低功耗的实时时钟芯片,附加31字节静态RAM,采用SPI三线接口与CPU进行通信,并可采用突发方式一次传送多个字节的时钟信号和RAM数据.实时时钟可提供

15、秒、分、时、日、星期、月和年,一个月小与31天时可以自动调整,且具有闰年补偿功能。工作电压宽达2。55。5V。采用双电源供电(主电源和备用电源),可设置备用电源充电方式,提供了对后备电源进行涓细电流充电的能力。图3示出DS1302的引脚排列图,其中Vcc1为后备电源,Vcc2为主电源。在主电源关闭的情况下,也能保持时钟的连续运行。DS1302由Vcc1或Vcc2两者中的较大者供电.当Vcc2大于Vcc1+0.2V时,Vcc2给DS1302供电。当Vcc2小于Vcc1时,DS1302由Vcc1供电.X1和X2是振荡源,外接32。768KHz晶振。RST是复位/片选线,通过把RST输入驱动置高电平

16、来启动所有的数据传送。RST输入有两种功能:首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST提供终止单字节或多字节数据的传送手段.当RST为高电平时,所有的数据传送被初始化,允许对DS1302进行操作.如果在传送过程中RST置为低电平,则会终止此次数据传送,I/O引脚变为高阻态.上电动行时,在Vcc大于等于2.5V之前,RST必须保持低电平。中有在SCLK 为低电平时,才能将RST置为高电平,I/O为串行数据输入端(双向).SCLK始终是输入端。DS1302_SCLK 接P36; 实时时钟时钟线引脚 DS1302_I/O 接P34; 实时时钟数据线引脚 DS1302_R

17、ST 接P35; 实时时钟复位线引脚图3 DS1302的引脚图 2。DS1302数据操作原理 图4 DS1302数据时序图 DS1302是通过SPI串行总线跟单片机通信的,当进行一次读写操作时最少得读写两个字节,第一个字节是控制字节,就是一个命令,告诉DS1302是读还是写操作,是对RAM还是对CLOK寄存器操作。第二个字节就是要读或写的数据了。 单字节读:只有在SCLK为低电平时,才能将CE置为高电平。所以在进行操作之前先将SCLK置低电平,然后将CE置为高电平,接着开始在IO上面放入要传送的电平信号,然后跳变SCLK。数据在SCLK上升沿时,DS1302读取数据,在SCLK下降沿时,DS1

18、302放置数据到IO上. 3.DS1302的时钟寄存器 图 5 时钟寄存器图时钟/日历包含在7个寄存器中,数据在时钟/日历寄存器中是二进制编码的十进制格式存储的,也就是常说的BCD码存储的。时钟寄存器的第8个字节是写保护寄存器.当WP为“1”的时候是开启写保护,这个时候是禁止对DS1302进行写操作的。当WP为“0”的时候是关闭写保护,这个时候才能对DS1302进行写操作。 4. 关于BCD码 BCD码是通过4位二进制码来表示1位十进制中的09这10个数码。二进制码转换为BCD码的方式为:4位二进制码大于1001时加6。如:BCD码00001100的二进制码为:00001100+6=00010

19、010 图6 DS1302 BCD代码2。3。3 显示模块的设计1。 1602介绍字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式LCD,目前常用161,16*2,202和40*2行等的模块。下面以长沙太阳人电子有限公司的1602字符型液晶显示器为例,介绍其用法。一般1602字符型液晶显示器实物如图 4:图7 1602字符型液晶显示器实物图2. 1602LCD的基本参数及引脚功能1602LCD分为背光和不带背光两种,基控制大部分为HD44780,带背光的比不带背光的厚,是否带背光在应用中并无差别,引脚功能说明1602LCD采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口

20、说明如表1所示:编号符号引脚说明编号符号引脚说明1VSS电源地9D2数据2VDD电源正极10D3数据3VL液晶显示偏压11D4数据4RS数据/命令选择12D5数据5R/W读/写选择13D6数据6E使能信号14D7数据7D0数据15BLA背光源正极8D1数据16BLK背光源负极表1:引脚接口说明表第1脚:VSS为地电源。第2脚:VDD接5V正电源。第3脚:VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄器。第5脚:R/W为读写信号线,高

21、电平时进行读操作,低电平时进行写操作。当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。第714脚:D0D7为8位双向数据线。第15脚:背光源正极。第16脚:背光源负极。1602LCD的一般初始化(复位)过程延时15mS写指令38H(不检测忙信号)延时5mS写指令38H(不检测忙信号)延时5mS写指令38H(不检测忙信号)以后每次写指令、读/写数据操作均需要检测忙信号写指令38H:显示模式设置写指令08H:显示关闭写指令01H:显示清屏

22、写指令06H:显示光标移动设置写指令0CH:显示开及光标设置3.LCD1602液晶显示 如图8所示: 图8 LCD液晶显示第三章 系统的软件设计3。1 主程序流程图 图A 主程序流程图主程序:void LcdDisplay();/* 函数名 : main* 函数功能 : 主函数 输入 : 无 输出 : 无*/void main() LcdInit(); Ds1302Init(); while(1) Ds1302ReadTime(); LcdDisplay(); /* 函数名 : LcdDisplay() 函数功能 : 显示函数 输入 : 无 输出 : 无*/void LcdDisplay()

23、LcdWriteCom(0x80+0X40); LcdWriteData(0+TIME2/16); /时 LcdWriteData(0+(TIME20x0f)); LcdWriteData(-); LcdWriteData(0+TIME1/16); /分 LcdWriteData(0+(TIME1&0x0f); LcdWriteData(-); LcdWriteData(0+TIME0/16); /秒 LcdWriteData(0+(TIME00x0f)); LcdWriteCom(0x80); LcdWriteData(2); LcdWriteData(0); LcdWriteData(0+

24、TIME6/16); /年 LcdWriteData(0+(TIME60x0f)); LcdWriteData(-); LcdWriteData(0+TIME4/16); /月 LcdWriteData(0+(TIME4&0x0f)); LcdWriteData(); LcdWriteData(0+TIME3/16); /日 LcdWriteData(0+(TIME30x0f)); LcdWriteCom(0x8D); LcdWriteData(0+(TIME5&0x07); /星期 3。2 DS1302子程序#include”ds1302。h/DS1302写入和读取时分秒的地址命令-/-秒分

25、时日月周年 最低位读写位;-/uchar code READ_RTC_ADDR7 = 0x81, 0x83, 0x85, 0x87, 0x89, 0x8b, 0x8d; uchar code WRITE_RTC_ADDR7 = 0x80, 0x82, 0x84, 0x86, 0x88, 0x8a, 0x8c;/-DS1302时钟初始化2013年1月1日星期二12点00分00秒。-/-存储顺序是秒分时日月周年,存储格式是用BCD码-/uchar TIME7 = 0x00, 0x24, 0x12, 0x01, 0x01, 0x02, 0x13;/* 函 数 名 : Ds1302Write* 函数功

26、能 : 向DS1302命令(地址+数据)* 输 入 : addr,dat* 输 出 : 无*/void Ds1302Write(uchar addr, uchar dat) uchar n; RST = 0; _nop_(); SCLK = 0;/先将SCLK置低电平。 _nop_(); RST = 1; /然后将RST(CE)置高电平。 _nop_(); for (n=0; n= 1; SCLK = 1;/数据在上升沿时,DS1302读取数据 _nop_(); SCLK = 0; _nop_(); for (n=0; n8; n+)/写入8位数据 DSIO = dat 0x01; dat =

27、 1; SCLK = 1;/数据在上升沿时,DS1302读取数据 _nop_(); SCLK = 0; _nop_(); RST = 0;/传送数据结束 _nop_();/* 函 数 名 : Ds1302Read 函数功能 : 读取一个地址的数据 输 入 : addr 输 出 : dat*/uchar Ds1302Read(uchar addr) uchar n,dat,dat1; RST = 0; _nop_(); SCLK = 0;/先将SCLK置低电平。 _nop_(); RST = 1;/然后将RST(CE)置高电平。 _nop_(); for(n=0; n= 1; SCLK = 1;/数据在上升沿时,DS1302读取数据 _nop_(); SCLK = 0;/DS1302下降沿时,放置数据 _nop_(); _nop_(); for(n=0; n8; n+)/读取8位数据 dat1 = DSIO;/

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1