当前位置:文档之家› 数字万年历设计

数字万年历设计

江西理工大学应用科学学院微机控制系统课程设计报告题目:数字万年历设计姓名:曹振林学号:08060111328专业班级:电气113班指导教师:完成时间:2014年06月27日设计报告综合测试平时总评格式(10分)内容(10分)图表(5分)功能测试(35分)答辩(20分)考勤(20分)指导教师签名:摘要在电子技术迅速发展的今天,尤其是随大规模集成电路出现,给人类生活带来了根本性的改变。

特别是单片机领域中的应用产品已经走进了大部分人的家庭。

电子万年历的出现给人们的生活带来的诸多方便。

本设计首先描述系统总体模块工作原理,并附以系统结构框图加以说明,着重介绍了本系统所应用的各硬件接口技术和各个接口模块的功能及工作过程,其次,详细阐述了程序的各个模块和实现过程。

本设计以数字集成电路技术为基础,单片机技术为核心。

本系统以单片机的进行软件设计,增加了程序的可读性和可移植性,为了便于扩展和更改,软件的设计采用模块化结构,使程序设计的逻辑关系更加简洁明了。

单片机具有体积小,成本低,抗干扰能力强,面向控制,可以实现分机各分布式控制等优点。

本文研究的万年历系统就是利用单片机上述的优点,采用目前市场性价比比较高的STC89C52单片机控制、以DS1302时钟芯片计时、以LCD1602液晶屏显示,系统主要有单片机控制电路,时钟电路,显示电路及校正电路四个模块组成。

本文阐述了系统的硬件工作原理,所应用的各个接口模块的功能以及工作过程。

系统程序采用C语言编写,用protel 2000画出电路图,经keil软件进行调试后在仿真软件中进行仿真测试,可以显示年、月、日、星期、时、分、秒,并具有校准功能和与即时时间同步的功能。

此万年历具有读取方便、显示直观、功能多样、电路设计新颖、功能强大、结构简单等优点,符合电子仪器仪表的发展趋势,具有广阔的市场应用前景。

关键词:电子万年历 51系列单片机时钟芯片FLASH存储器液晶显示目录摘要 (1)1、绪论 (3)1.1设计任务 (3)1.2设计要求 (3)1.3设计意义 (3)2、设计方案介绍 (4)2.1用户板设计步骤及过程 (4)2.2芯片工作原理 (4)2.2.1 P89V51RB2单片机概述 (4)2.2.2 P89V51RB2单片机的特性 (5)2.2.3 时钟电路DS1302 (6)3、程序设计 (8)3.1程序流程图 (8)3.1.1 系统总流程图 (8)3.1.2 时钟程序流程图 (9)3.1.3 显示程序流程图 (10)4、硬件设计 (11)4.1显示电路的设计 (11)4.2晶振电路设计 (11)4.3时钟电路 (12)4.4系统程序的设计 (12)4.5时间调整程序设计 (13)5、调试总结及改进 (13)致谢 (13)参考文献 (14)附录 (15)附录一元器件清单 (15)附录二硬件原理图 (16)附录三源程序 (17)1、绪论多功能数字万年历已成为人们日常生活中必不可少的物品,广泛用于个人家庭以及车站、码头、医院、办公室等公共场所,给人们的生活、学习、工作、娱乐带来极大的方便。

随着技术的发展,人们已不再满足于钟表原先简单的报时功能,希望出现一些别的功能,诸如日历的显示、闹钟的应用等,以带来更大的方便,而所有这些,又都是以数字化的电子时钟为基础的。

因此,研究实用电子时钟及其发展应用,有着非常现实的意义,具有很大的实用价值。

由于数字集成电路技术的发展和采用了先进的石英技术,使电子钟具有走时准确、性能稳定、携带方便等优点它还用于计时、自动报时及自动控制等各个领域。

虽然现在市场上已有现成的电子钟集成电路芯片出售,价格便宜,使用灵活,如可以随意设置时、分、秒的输出,改变显示数字的大小等,并且由于集成电路技术的发展,特别是MOS集成电路技术的发展,使电子钟具有体积小、携带方便,但是这里介绍的实用电子钟可以满足使用者的一些特殊要求,输出方式灵活、功耗低、对时准确、性能稳定、维护方便等优点。

多功能数字万年历是一个时间控制系统,既能作为一般的时间显示器,同时可以根据需要扩展其功能1.1 设计任务通过对本题的设计,进一步熟悉单片机控制系统,并了解系统设计的一般规律。

用P89V51RB2设计一个数字万年历,实现时间的显示功能。

1.2 设计要求(1)用DS1302或HT1380设计一个数字万年历。

(2)通过一个四位数码管显示年月日小时分钟的循环显示。

(3)可通过按键设置时间。

(4)写出详细的设计报告(含操作说明),给出全部电路和源程序。

1.3 设计意义(1)、在学习了《单片机原理与应用》和《微型级数机控制技术实用教程》课程后,为了加深对理论知识的理解,学习理论知识在实际中的运用,培养动手能力和解决实际问题的经验让学生接触专用时钟芯片DS1302,并会用DS1302芯片开发时钟模块,应用到其他系统中去。

熟悉WAVE软件调试程序和仿真.;(2)、通过实验提高对单片机的认识;(3)、通过实验提高焊接、布局、电路检查能力;(4)、通过实验提高软件调试能力;(5)、进一步熟悉和掌握单片机的结构及工作原理;(6)、通过课程设计,掌握以单片机核心的电路设计的基本方法和技术,了解表关电路参数的计算方法;(7)、通过实际程序设计和调试,逐步掌握模块化程序设计方法和调试技术;(8)、通过完成一个包括电路设计和程序开发的完整过程,使学生了解开发一单片机应用系统的全过程,为今后从事相应打下基础。

2、设计方案介绍2.1 用户板设计步骤及过程按照系统设计功能的要求,初步确定设计系统由主控模块、时钟模块、显示模块、键盘接口模块共4个模块组成,电路系统构成框图如图2.1所示。

主控芯片使用51系列P89V51RB2单片机,时钟芯片使用美国DALLAs 公司推出的一种高性能、低功耗、带RAM 的实时时钟DSl302。

采用DSl302作为主要计时芯片,可以做到计时准确。

更重要的是,DSl302可以在很小电流的后备电源(2.5—5.5v 电源,在2.5v 时耗电小于300 nA)下继续计时,并可编程选择多种充电电流来对后备电源进行慢速充电,可以保证后备电源基本不耗电。

显示模块采用普通的共阳LED 数码管,键输入采用查询法实现调整功能。

图2.1 电子万年历电路系统构成框图2.2 芯片工作原理2.2.1 P89V51RB2单片机概述P89V51RB2是一款增强型80C51微控制器,包含16kB 的Flash 程序存储器和1024个字节的数据RAM 。

P89V51RB2 控制模块 设置键是否按下? 系统初始化键扫描电路 DS1302 时钟电路图2.2 P89V51RB2最小系统电路图P89V51RB2的典型特性是他的X2方式选项。

利用该特性,用户可以将编写的应用程序以传统的80C51时钟频率(每个机器周期包含12个时钟)或X2方式(每个机器周期包含6个时钟)的时钟频率运行,选择X2方式可在相同时钟频率下获得2倍的执行速度,这样还可以极大地降低电磁干扰(EMI)。

Flash程序存储器支持并行编程和串行在系统编程(ISP)。

并行编程方式提供了高速的分组编程(页编程)方式,可节省编程成本和上市时间。

ISP编程方式不需要专用烧录器、所需外围电路简单、可靠性强,近年来得到了广泛的应用。

目前,许多新型的单片机均具有此功能。

P89V51RB2也可以采用在应用中编程(IAP),允许随时对Flash程序存储器重新配置,即使是应用程序正在运行也不例外。

2.2.2 P89V51RB2单片机的特性* 80C51核心处理单元;* 5V的工作电压,操作频率为0~40MHZ;* 具有ISP(在系统编程)和IAP(在应用中编程)功能;* 通过软件或ISP选择支持12时钟(默认)或6时钟的工作模式;* SPI(串行外围接口)和增强型UART;* PCA(可编程计数器阵列),具有PWM和捕获/比较功能;* 4个8位I/O口,含有3个高电流P1口(每个I/O口的电流为16mA);* 3个16位定时器/计数器;* 可编程看门狗定时器(WDT);* 8个中断源,4个中断优先级;* 2个DPTR寄存器;* 低EMI方式(ALE禁能);* 兼容TTL和COMS逻辑电平;* 低电检测及低功耗模式。

2.2.3 时钟电路DS1302(1)DS1302的性能特性* 实时时钟,可对秒、分、[小]时、日、周、月以及带闰年补偿的年进行计数; * 用于高速数据暂存的31×8位RAM;* 最少引脚的串行I/o;* 2.5—5.5V电压工作范围;* 2.5V时耗电小于300 nA;* 用于时钟或RAM数据读/写的单字节或多字节(脉冲方式)数据传送方式;* 简单的3线接口;* 可选的慢速充电(至Vcc1)的能力。

D51302时钟芯片包括实时时钟/日历和3l字节的静态RAM。

它经过一个简单的串行接口与微处理器通信。

实时时钟/ 日历提供秒、分、时、日、周、月和年等信息。

对于小于31天的月利月末的日期自动进行调整,还包括闰年校正的功能。

时钟的运行可以采用24H或带AM(上午)/PM(下午)的12H格式。

采用三线接口与cPu 进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。

Dsl302有主电源/后备电源双电源引脚:Vcc1在单电源与电他供电的系统中提供低电源,并提供低功率的电池备份;Vcc2在双电源系统中提供主电源,在这种运用方式中,Vcc1连接到备份电,以便在没有主电源的情况下能保存时间信息以及数据。

DS1302由Vcc1或vcc2中较大者供电。

当vcc2大于Vcc1十0.2v时,vcc2v给DSl302供电;当vcc2小于Vcc1时,DSl302由Vcc1供电。

(2) DSl302数据操作原理Dsl 302在任何数据传送时必须先初始化,把RsT脚置为高电平,然后把8位地址和命令字装入移位寄存器,数据在SCLK的上升沿被输入。

无论是读周期还是写周期,开始8位指定40个寄存器中哪个将被访问到。

在开始8个时钟周期,把命令字节装入移位寄存器之后,另外的时钟周期在读操作时输出数据,在写操作时写人数据。

时钟脉冲的个数在单字节方式下为8加8,在多字节方式下为8加字节数,最大可达248字节数。

如果在传送过程中置RsT脚为低电平,则会终止本次数据传送,并且I/O引脚变为高阻态。

上电运行时,在 Vcc≥2.5 V之前,RsT脚必须保持低电平。

只有在scLK为低电平时,才能将RsT置为高电平。

D引302的引脚及内部结构图如图2.3所示,表2.1为各引脚的功能。

引脚号引脚名称功能1 VCC2 主电源2、3 X1,X2 振荡源,外接32768KHZ晶振4 GND 地线5 RST 复位/片选线6 I/O 串行数据输入/输出端(双向)7 SCLK 串行数据输入端8 VCC1 后备电源表2.1 DS1302引脚功能图2.3 DS1302引脚及内部结构DSl302的控制字如图2.4所示。

相关主题