基于51单片机万年历-毕业设计.doc

上传人:汽*** 文档编号:544470651 上传时间:2023-12-04 格式:DOC 页数:33 大小:1.30MB
返回 下载 相关 举报
基于51单片机万年历-毕业设计.doc_第1页
第1页 / 共33页
基于51单片机万年历-毕业设计.doc_第2页
第2页 / 共33页
基于51单片机万年历-毕业设计.doc_第3页
第3页 / 共33页
基于51单片机万年历-毕业设计.doc_第4页
第4页 / 共33页
基于51单片机万年历-毕业设计.doc_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《基于51单片机万年历-毕业设计.doc》由会员分享,可在线阅读,更多相关《基于51单片机万年历-毕业设计.doc(33页珍藏版)》请在金锄头文库上搜索。

1、摘 要 电子万年历是一种非常广泛日常计时工具,对现代社会越来越流行。它可以对年、月、日、周日、时、分、秒进行计时,还具有闰年补偿等多种功能。本系统选用DALLAS公司生产的日历时钟芯片DS1302来作为实时时钟芯片,为本系统提供详细的年、月、日、星期和小时、分钟等时间信息。数字万年历采用直观数字显示,可以同时显示年、月、日、周日、时、分、秒和温度等信息,还具有闹钟和时间校准等功能。该电路采用AT89C52单片机作为核心,功耗小,能在3V的低压工作,电压可选用35V电压供电。本系统硬件部分由AT89S52单片机、DS1302时钟芯片、1062液晶显示器、DS18B20温度测量、键盘、蜂鸣器系统等

2、部分构成。软件部分在keil环境下用C51语言编写,包括时间设置、时间显示、定时设置、定时闹钟、温度显示。没有良好的基础知识和实践经验会受到很大限制,每项功能实现时需要那种硬件,程序该如何编写,算法如何实现等,没有一定的基础就不可能很好的实现。在编写程序过程中发现以现有的相关知识要独自完成编写任务困难重重,在老师和同学的帮助下才完成了程序部分的编写。文章后附有电路原理图、程序清单,以供读者参考。因水平有限,难免有疏落不足之处,敬请老师和同学能给与批评指正。关键词:时钟芯片DS1302;温度采集DS18B20;单片机AT89S52;液晶显示1602目 录第一章 概述31.1实时时钟研究的背景及意

3、义31.2论文主要研究内容31.2.1 系统设计实现的目标31.2.2 系统的总体设计3第二章 硬件电路设计52.1单片机最小系统52.2时钟芯片电路52.2.1 时钟芯片引脚介绍62.2.2时钟芯片DS1302,其内存空间介绍72.2.3 4个控制寄存器介绍82.4温度采集电路设计92.4.1 DS18B20的主要特性92.4.2 DS1820的基本操作指令102.4.3 温度测量的步骤102.4.4 DS18B20的操作时序112.5 1602LCD液晶显示屏122.5.1 1602字符型LCD简介122.5.2 1602引脚功能说明122.5.3 1602LCD的指令说明及时序132.5

4、.4 1602LCD的RAM地址映射及标准字库表152.5.5 1602LCD的一般初始化(复位)过程162.4.6 1602LCD的电路连接162.6 蜂鸣器闹铃电路172.7 按键调整电路172.8 电源模块18第三章 软件部分设计193.1 主程序流程193.2 时间设置子程序流程193.3 闹钟设置子程序流程203.4 程序设计问题213.4.1 按键抖动问题213.4.2 蜂鸣器设置213.4.3 液晶显示的设置213.4.4 中断设置213.4.5 时钟芯片设置22第四章 开发工具Proteus与Keil242.1 Proteus软件242.1.1 Proteus简介242.1.2

5、 4大功能模块252.1.3 ISIS智能原理图输入系统26 2.2 Keil软件272.2.1 Keil软件简介272.2.2 Keil软件调试功能28 2.3本章小结28结束语29致谢词30参考文献31附件132第一章 概述1.1实时时钟研究的背景及意义在现实我们生活中每个人都可能有自己的时钟,光阴在永不停息的流逝,有了时钟人们就能随着时间有计划的过着每一天。然而现在绝大部分的时钟有的需要不断地跟换电池,有些时钟需要外接电源,如果一旦电池没电或者外接电源无法供电,时钟就会停止计时了。而美国DALLAS 公司的新型时钟日历芯片DS1302就能解决这一问题。该器件能提供实时时钟(RTC)/日历

6、、定时闹钟。少于31天的月份,月末日期可自动调整,其中包括闰年补偿。该器件还可以工作于24小时货代/PM指示的12小时格式。一个精密的温度补偿电路用来监视Vcc的状态。本时钟还具有环保、走时无噪音、低功耗等非实时时钟不具有的功能。该实时时钟不但可以作为家用,而且更可以在公共场合使用,如车站、码头、商场等场所。1.2论文主要研究内容1.2.1 系统设计实现的目标本文是以实时时钟芯片DS1302和AT89S52单片机为主要研究对象,着重进行51单片机控制系统的设计研究和如何读取DS1302内部时钟信息的研究。以及运用18B20进行实时温度检测。主要内容包括:1) 实时温度显示;2) 年月日星期时分

7、秒显示;3) 年月日星期时分秒调整;4) 闹钟定时小时分钟和秒;1.2.2 系统的总体设计采用AT89S52作为主控单片机,时钟模块选用DS1302作为时钟芯片,温度模块选用DS18B20作为温度传感器,显示模块选用LCD1602,设置部分选用按键电路。AT89S52与MCS-51单片机产品兼容 、8K字节在系统可编程Flash存储器、 1000次擦写周期、 全静态操作:0Hz33Hz 、 三级加密程序存储器 、 32个可编程I/O口线 、三个16位定时器/计数器 八个中断源 、全双工UART串行通道、 低功耗空闲和掉电模式 、掉电后中断可唤醒 、看门狗定时器 、双数据指针 、掉电标识符 。D

8、S1302 实时时钟芯片功能丰富,可以用来直接代替IBM PC 上的时钟日历芯片DS12887,同时,它的管脚也和MC146818B、DS12887 相兼容。由于DS1302 能够自动产生世纪、年、月、日、时、分、秒等时间信息,其内部又增加了世纪寄存器,从而利用硬件电路解决子“千年”问题;DS1302 中自带有锂电池,外部掉电时,其内部时间信息还能够保持10 年之久;对于一天内的时间记录,有12 小时制和24 小时制两种模式。用户还可对DS1302 进行编程以实现多种方波输出,并可对其内部的三路中断通过软件进行屏蔽。DS18B20可组网数字温度传感器芯片封装而成,具有耐磨耐碰,体积小,使用方便

9、,封装形式多样,适用于各种狭小空间设备数字测温和控制领域。可编程的分辨率为912位 温度转换为12位数字格式最大值为750毫秒 用户可定义的非易失性温度报警设置。DS18B20内部结构主要由四部分组成:64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。采用一线通信接口。该系统的系统框图如图1.1示:AT89S52单片机DS18b20温度测量电路用户按键LCD1602显示蜂鸣器电路DS1302时钟电路图1-1系统框图第二章 硬件电路设计2.1单片机最小系统本系统以AT89C52单片机为核心,本系统选用11.0592MHZ的晶振,使得单片机有合理的运行速度。起振电容30p

10、F对振荡器的频率高低、振荡器的稳定性和起振的快速性影响较合适,复位电路为按键高电平复位。AT89C52单片机最小系统电路设计如图2.1所示。图2-1 单片机最小系统2.2时钟芯片电路2.2.1 时钟芯片引脚介绍1) 时钟芯片DS1302,其电路连接图如下所示图2-2 DS1302电路连接图MOT (1脚) :总线时序模式选择脚。接高电平,选择MOTOROLA总线时;序;接低电平或悬空,择选择INTEL总线时序。NC (2,3,16,20,21,22脚):悬空脚。AD0AD7(411脚):地址/地址数据复用总线引脚。CS(13脚):片选脚,低电平有效。AS(14脚):地址锁存输入脚。下降沿时,地

11、址被锁存,紧接着的上升沿来时地址被清除。R/W(15脚):读/写输入脚。在选择MOTOROLA总线时序模式时,此引脚用于指示当前的读写周期,高电平指示当前为读周期,低电平指示当前为写周期;选择INTEL中线时序模式时,此引脚为低电平有效的输入脚,相当于通用RAM的写使能信号(/WE)DS(17脚):选择MOTOROLA总线时序模式时,此引脚为数据锁存脚;选择INTEL总线时序模式时,此引脚为读输入脚,低电平有效,相当于典型的内存的输出使能信号(/OE)RESET(18脚):复位脚,低电平有效,复位不会影响到时钟、日历和RAM。IRQ(19脚):中断申请输出脚,低电平有效,可作为微处理器的中断输

12、入。SQW(23脚):方波信号输出脚。可通过设置寄存器位SQWE关断此信号输出,此信号的输出频率也可通过对芯片内部的寄存器编程予以改变。VCC(24脚):+5v电源端。2.2.2时钟芯片DS1302,其内存空间介绍图2-3 时钟、日历和闹钟数据模式BCD模式(DM=0)图2-4 时钟、日历和闹钟数据模式二进制模式(DM=1)2.2.3 4个控制寄存器介绍DS1302有4个控制寄存器,在任何时间都可以进行访问,即使处于更新周期。寄存器A字节的内容如下。MSB LSB UIP DV2 DV1 DV0 RS3 RS2 RS1 RS0UIP: 更新标志位。为只读位且不受复位操作的影响,为1时,表示即将

13、发生的数据更新;为0时,表示至少244US不会更新数据。当UIP为0时,可以获得所有时钟、日历、闹钟信息。将寄存器B中的SET位置1可以限制任何数据更新操作,并且清除UIP位。DV2、DV1、DV0:此3位为010时将打开晶振,并开始计时。RES3、RES2、RES1、RES0:用于设置周期性中断产生的时间周期和输出方波的频率。寄存器B字节的内容如下。 MSB LSB SET PIE AIE UIE SQWE DM24/12 DSESET:设置位,可读写,不受复位操作影响。为0时,不处于设置状态,芯片进行正常时间数据更新;为1时,抑制数据更新,可以通过程序设定时间和日历信息。PIE:周期性中断

14、使能位,可读写,复位时清除此位。为1时,允许寄存器C中的周期中断标志位PF,驱动/IRQ引脚为低产生中断信号输出,中断信号产生的周期由RS3RE0决定。AIE:闹钟中断使能位,可读写。为1时,允许寄存器C中的闹钟中断标志位AF、闹钟发生时就会通过/IRQ引脚产生中断输出。UIE:数据更新结束中断使能位,可读写。复位或者SET位为1时清除此位。为1时允许寄存器C中的更新结束标志UF,更新结束时就会通过/IRQ引脚产生中断输出。SQWE:方波使能位,可读写,复位时清除此位。为0时,SQW引脚保持低电平;为1时,SQW引脚输出方波信号,其频率由RS3RS0决定。DM:数据模式位,可读写,不受复位操作影响。为0时,设置时间、日历信息为二进制数据;为1时,设置为BCD码数据。24/12:时间模式设置为,可读写,不受复位操作影响。为0时,设置为12小时模式;为1时,设置为24小时模式。DSE:为1时,会引

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号