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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

毕业设计基于DS1302的电子万年历设计.docx

1、毕业设计基于DS1302的电子万年历设计基于DS1302的电子万年历设计 专业班级: 学生姓名:指导教师: 职 称:讲师摘 要: 现在是一个知识爆炸的新时代,新产品、新技术层出不穷,电子技术的发展更是日新月异。可以毫不夸张的说,电子技术的应用无处不在,电子技术正在不断地改变我们的生活,改变着我们的世界。在这快速发展的年代,时间对人们来说是越来越宝贵,在快节奏的生活时,人们往往忘记了时间,一旦遇到重要的事情而忘记了时间,这将会带来很大的损失。因此我们需要一个定时系统来提醒这些忙碌的人,而数字化的钟表给人们带来了极大的方便。由于单片机具有灵活性强、成本低、功耗低、保密性好等特点,所以电子日历时钟一

2、般都以DS1302为核心,外加一些外围设备来实现。 近些年,随着科技的发展和社会的进步,人们对数字钟的要求也越来越高,传统的时钟已不能满足人们的需求。多功能数字钟不管在性能还是在样式上都发生了质的变化,有电子闹钟、数字闹钟等等。单片机在多功能数字钟中的应用已是非常普遍的,人们对数字钟的功能及工作顺序都非常熟悉。但是却很少知道它的内部结构以及工作原理。由单片机作为数字钟的核心控制器,可以通过它的时钟信号进行计时实现计时功能,将其时间数据经单片机输出,利用显示器显示出来,通过按键可以进行定时、校时功能。输出设备显示器可以用液晶显示技术和数码管显示技术。关键词:DS1302 实时钟 万年历The D

3、esign of The Simple Logic Controller Based on SCMAbstract:Now a new era of knowledge explosion, new products, new technologies emerge in endlessly, the development of electronic technology is changing. It is no exaggeration to say, electroni c technology applications everywhere, electronic technolog

4、y is changing our life, and our world. In this fast development, the time is more precious to people in the fast pace of life, people often forgotten when time, once encounter something important and forget time, this will bring great loss. So we need a regular system to remind those busy people, an

5、d digital clocks bring great convenience. Due to the microcontroller has flexibility, low cost, low power consumption, the secrecy is good wait for a characteristic, so the electronic calendar clocks are generally based on DS1302, plus some peripheral equipment to achieve.In recent years, with the d

6、evelopment of science and technology and the progress of the society, the people of a digital clock higher requirements, the traditional clock already cannot satisfy the demands of the people. Multi-functional digital clock in performance or in style have undergone a qualitative change, electronic a

7、larm clock, number, etc. Microcomputer in the multi-function digital clock application is very common, and has the function of digital clock and work order is very familiar with. But few know its internal structure and work principle. By single chip microcomputer as the core controller, digital cloc

8、k through its clock signal timing realize its function, the clock time data using SCM outputs, display, through the buttons can be regularly, school when function. Output devices with LCD monitors can display technology of digital technology and the pipe.Keywords: DS1302 calendar clock.引言1第一章 系统概述2

9、1.1 设计要求2 1.2 设计方案2 1.3 器件选择2 1.4 系统概述3第二章 系统的硬件设计42.1时钟接口电路设计42.1.1简介42.1.2内部实时时钟RTC 和RAM地址分配62.1.3 时钟和日历 62.1.4 控制寄存器 72.2 键盘接口电路设计 72.2.1 键盘的分类 82.2.2 键盘开关的抖动 82.2.3 键盘电路 92.3 八段数码管显示电路设计 102.3.1 数码管的结构 102.3.2 数码管的分类 112.3.3 数码管的显示方式 122.3.4 数码管显示图 132.4 AT89C51简单电路设计132.4.1 AT89C51简介132.4.2单片机接

10、口电路图17第三章 系统软件设计 183.1 系统软件程序图18 3.2 接口软件 183.3 按键 21第四章 仿真软件介绍及其仿真 234.1 仿真软件概述 234.2 程序运行效果图 24结论25致谢26参考文献27引 言 本论文是基于DS1302的电子万年历设计。 由于数字集成电路技术的发展和采用了先进的石英技术,使电子钟具有走时准确、性能稳定、携带方便等优点,它还用于计时、自动报时及自动控制等各个领域。虽然现在市场上已有现成的电子钟集成电路芯片出售,价格便宜,使用也灵活,如可以随意设置时、分、秒的输出,改变显示数字的大小等,并且由于集成电路技术的发展,特别是MOS集成电路技术的发展,

11、使电子钟具有体积小、携带方便,但是这里介绍的实用电子钟可以满足使用者的一些特殊要求,输出方式灵活、功耗低、计时准确、性能稳定、维护方便等优点。 实用电子时钟是一个时间控制系统,既能作为一般的时间显示器,同时可以根据需要扩展其功能,扩展为可显示时间和日历的电子万年历。论文中的控制单元是以ATMEL公司的AT89C51微控制器为核心,显示单元采用LED数码管,实现时间的显示。在软件上,采用keil c51软件系统,控制单元采用汇编语言编程;另外,从硬件和软件上采取了多种措施提高系统的可靠性。第一章 系统概述1.1 设计要求 1.自动计时,显示年、月、日、时、分、秒。 2.时间显示可调整。 3.具备

12、闰年闰月自动补偿功能。1.2 设计方案 按照设计要求,整个系统可划分为以下几个模块: 1.主控模块 采用单片机,对系统进行初始化,主要完成对键盘的响应、数码管显示等功能的控制,起到总控和协调各模块之间工作的作用。 2.键盘输入模块 主要完成时间相关的设置调制。 3.数码管显示模块 完成对单片机送来的时间和日期进行显示。1.3 器件选择 主控模块采用AT89C51单片机作为系统的控制核心。键盘输入模块采用独立式按键电路:每个键单独占有一根I/O接口线,每个I/O口的工作状态互不影响,此类键盘采用端口直接扫描方式,但是当按键较多时占用单片机的I/O数目较多。两个六位8段数码管。1.4 系统概述系统

13、由单片机AT89C51为主控制器,单片机不断读取实时钟DS1302提供的时间,送数码管显示。通过按键可以对年,月,日及时间时,分,秒进行设置。整个系统的电源由5V电池提供,以便于携带。所设计的电子万年历目标为实现以下功能:1.年,月,日及时间时,分,秒的显示;2通过按键可随时进行年,月,日及时间时,分,秒的校对。系统结构如图1.1所示: 图1.1系统框图 第二章 系统的硬件设计2.1 时钟接口电路设计本电子万年历系统的重要部分在于时钟模块,这里选用串行日历时钟芯片DS1302。与采用并行总线与单片机进行数据通信的时钟芯片相比,DS1302与单片机的连线大为减少,极大的节省了单片机的系统资源。时

14、钟芯片的接口电路如图2.1所示。图2.1 DS1302 时钟电路2.1.1结构及工作原理DS1302 是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、星期、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V5.5V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个318的用于临时性存放数据的RAM寄存器。DS1302是DS1202的升级产品,与DS1202兼容,但增加了主电源/后背电源双电源引脚,同时提供了对后背电源进行涓细电流充电的能力。DS1302的引脚排列,其中Vcc1为后备

15、电源,Vcc2为主电源。在主电源关闭的情况下,也能保持时钟的连续运行。DS1302由Vcc1或Vcc2两者中的较大者供电。当Vcc2大于Vcc10.2V时,Vcc2 给DS1302供电。当Vcc2小于Vcc1时,DS1302由Vcc1供电。X1和X2是振荡源,外接32.76kHz晶振。RST是复位/片选线,通过把RST输入驱动置高电平来启动所有的数据传送。RST输入有两种功能:首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST提供终止单字节或多字节数据的传送手段。当RST为高电平时,所有的数据传送被初始化,允许对DS1302进行操作。如果在传送过程中RST置为低电平,则会

16、终止此次数据传送,I/O引脚变为高阻态。上电运行时,在Vcc2.5V之前,RST必须保持低电平。只有在SCLK为低电平时,才能将RST置为高电平。I/O为串行数据输入输出端(双向),后面有详细说明。SCLK始终是输入端。下图为DS1302的引脚功能图。 图2.2 DS1302 引脚示意图图中,Vcc,GND-直流电源通过这两个引脚提供给该器件,Vcc为+5V 输入,当提供的5V 电源在正常范围内器件能充分地被访问,能对器件读写数据。当3V 的电池被连至该器件且Vcc 低于1.25VBAT 时,对器件的读写被禁止,而计时功能照常进行,不受低输入电压的影响。当Vcc 降到低于VBAT,则RAM 区

17、和计时器将被切换到外部电源VBAT 来供电(名义上VBAT 为3.0V 直流电源)。VBAT-电池输入引脚。可以是任意标准的3V 锂电池或其它电源。为了器件能够正常工作,电池电压必须限制在2.03.5V 之间。事实上,写保护带电压被内部电路设置为1.25VBAT。X1,X2 -32.76KHZ晶振管脚GND -地RST -复位键I/O -数据输入/输出引脚SCLK -串行时钟Vcc1,Vcc2 -电源供电管脚2.1.2 内部实时时钟RTC 和RAM 地址分配 DS1302 的RTC 与RAM 寄存器的地址分配如图2.3 所示。RTC 寄存器地址位于00H 到07h 处。RAM 寄存器地址位于0

18、8h3Fh。在多字节存取中,当地址指针到达3Fh,即RAM 空间的最后一个单元,则下一个操作地址将翻卷到00h,即时钟空间的开头。 图2.3 DS1302地址分配图2.1.3 时钟和日历通过读取正确的寄存器字节能获得正确的时钟和日历信息,实时时钟寄存器如表2.1 所示。通过写入正确的寄存器字节能够设置或者初始化时钟和日历。时钟和日历寄存器中的内容均采用BCD 码格式,时钟寄存器00h的位7 是时钟停止位,当该位被设置为1 时,晶振失效,当该位被清零时,晶振使能。所以,在初始化程序中,使能晶振(CH 位=0)是很重要的。DS1302 可以运行在12 小时或24 小时模式,小时寄存器的位7 被定义

19、为作为12 小时或24 小时模式选择位。当该位为高时选择12 小时模式,采用12 小时模式时,位5 是AM/PM 标志位,该位为1 表示PM。当采用24小时模式时,位5 是第二个10 小时位(2023 小时)。当总线开始工作时,当前的时间信息被传送给一串二级寄存器,时间信息然后从这些二级寄存器中读取,而时钟照常运行。当在读过程中,主寄存器内容发生变化时,这样可以避免再次读寄存器的必要性。表2.1 DS1302 实时时钟寄存器 2.1.4 控制寄存器DS1302 控制寄存器用来控制SQW/OUT 引脚的操作。 OUT:输出控制。当方波输出失效时,该位控制SQW/OUT 引脚的输出。如果SQWE=

20、0,若OUT=1 则SQW/OUT 引脚的逻辑电平为1,而OUT=0 则SQW/OUT 引脚的逻辑电平为0。SQWE:方波使能。当该位被设置为逻辑1 时,使能晶振输出,方波输出的频率由RS1 和RS0 位的值来确定。当方波输出的频率设为1Hz,则时钟寄存器内容将在方波的下降沿更新。 表2.2 方波输出频率 RS1RS0SQW OUTPUTFREQUENCY 001 Hz014.096 KHz108.192 KHz1132.768 KHz RS:速率选择。当方波输出使能时,这些位控制方波输出的频率。表2.2 列出了方波频率与RS 位的值的对应关系。2.2 键盘接口电路设计2.2.1 按键的分类

21、键盘在单片机应用系统中,实现输入数据、传送命令的功能,是人工干预的主要手段。键盘分两大类:编码键盘和非编码键盘。 编码键盘:由硬件逻辑电路完成必要的键识别工作与可靠性措施。每按一次键,键盘自动提供被按键的读数,同时产生一选通脉冲通知微处理器,一般还具有反弹跳和同时按键保护功能。这种键盘易于使用,但硬件比较复杂,对于主机任务繁重之情况,采用8279可编程键盘管理接口芯片构成编码式键盘系统是很实用的方案。 非编码键盘:只简单地提供键盘的行列与矩阵,其他操作如键的识别,决定按键的读数等仅靠软件完成,故硬件较为简单,但占用CPU较多时间。有:独立式按键结构、矩阵式按键结构2.2.2 按键开关的抖动组成

22、键盘的按键有触点式和非触点式两种,单片机中应用的一般是由机械触点构成的。在下图2.4中,当开关S未被按下时,P0。0输入为高电平,S闭合后,P0。0输入为低电平。由于按键是机械触点,当机械触点断开、闭合时,会有抖动动,P1。0输入端的波形如图2.5所示。这种抖动对于人来说是感觉不到的,但对计算机来说,则是完全可以感应到的,因为计算机处理的速度是在微秒级,而机械抖动的时间至少是毫秒级,对计算机而言,这已是一个“漫长”的时间了。前面我们讲到中断时曾有个问题,就是说按键有时灵,有时不灵,其实就是这个原因,你只按了一次按键,可是计算机却已执行了多次中断的过程,如果执行的次数正好是奇数次,那么结果正如你

23、所料,如果执行的次数是偶数次,那就不对了。 图2.4 开关S 图2.5 P1.0输入端的波形 为使CPU能正确地读出P0口的状态,对每一次按键只作一次响应,就必须考虑如何去除抖动,常用的去抖动的方法有两种:硬件方法和软件方法。单片机中常用软件法,因此,对于硬件方法我们不介绍。软件法其实很简单,就是在单片机获得P0。0口为低的信息后,不是立即认定S1已被按下,而是延时10毫秒或更长一些时间后再次检测P0。0口,如果仍为低,说明S1的确按下了,这实际上是避开了按键按下时的抖动时间。而在检测到按键释放后(P0。0为高)再延时5-10个毫秒,消除后沿的抖动,然后再对键值处理。不过一般情况下,我们通常不

24、对按键释放的后沿进行处理,实践证明,也能满足一定的要求。当然,实际应用中,对按键的要求也是千差万别,要根据不同的需要来编制处理程序,但以上是消除键抖动的原则。2.2.3 键盘电路 在设计键盘电路时我们采用31 的四键键盘。单片通过查询方式对键盘扫描。用软件算法消除按键瞬时的抖动。按键电路如图2.6所示。其中,各键值代表的含义如下: S1:进入时.分.秒设置选择;S2:数值加; S3:进入年.月.日设置选择。 图2.6 按键电路2.3八段数码管显示电路设计.数码管是非常常见的东西,他能显示数字,以及字母,应用非常的广泛,本文我来和大家谈谈如何用单片机来驱动数码管。2.3.1数码管的结构 数码管由

25、7个发光二极管组成,行成一个日字形,它门可以共阴极,也可以共阳极.通过解码电路得到的数码接通相应的发光二极而形成相应的字,这就是它的工作原理。 基本的半导体数码管是由7个条状的发光二极管(LED)按图2.7所示排列而成的,可实现数字09及少量字符的显示。另外为了显示小数点,增加了1个点状的发光二极管,因此数码管就由8个LED组成,我们分别把这些发光二极管命名为 a,b,c,d,e,f,g,dp,排列顺序如下图2.7 图2.7 数码管引脚图及外形图2.3.2数码管的分类数码管按各发光二极管电极的连接方式分为共阳数码管和共阴数码管两种。共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(CO

26、M)的数码管。共阴数码管在应用时应将公共极COM接到地线GND上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮。当某一字段的阳极为低电平时,相应字段就不亮。共阴数码管内部连接如图2.8所示。 图2.8共阴数码管内部连接图 共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管。共阳数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。当某一字段的阴极为高电平时,相应字段就不亮。共阳数码管内连接如图2.9所示。 图2.9 共阳数码管内部连接图2.3.3数码管的显示方式数码管要正常显示,就要用驱动电路来驱动数码管的各个段码,从而

27、显示出我们要的数字,因此根据数码管的驱动方式的不同,可以分为静态式和动态式两类。动态显示驱动:数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划a,b,c,d,e,f,g,dp的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的的COM端,就使各个数码管轮流受控

28、显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为12ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的I/O端口,而且功耗更低。静态显示驱动:静态驱动也称直流驱动。静态驱动是指每个数码管的每一个段码都由一个单片机的I/O端口进行驱动,或者使用如BCD码二-十进制译码器译码进行驱动。静态驱动的优点是编程简单,显示亮度高,缺点是占用I/O端口多,如驱动5个数码管静态显示则需要5840根I/O端口来驱动,要知道一个89C51单片机可用的I/O端口才32个呢:),实际应用时必须增加译码驱动器进行驱动,增加了硬件电路的复杂性。我们设计的万年历采用6位八段共阳数码管动态显示驱动。2.3.4数码管显示图 模块在接收指令前,向处理器必须先确认模块内部处于非忙状态,即读取BF标志时BF需为“0”,方可接受新的命令。如果在送出一个指令前不检查BF标志,则在前一个指令和这个指令中间必须延迟一段较长的时间,即等待前一个指令确定执行完成。系统开机后,自动进入时钟状态显示,画面如图2.10所示。 图2.10 时钟状态显示画面2.4 AT89C51 单片机电路设计2

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

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