基于单片机多功能万年历的设计与仿真设计

上传人:仙*** 文档编号:42260267 上传时间:2021-11-25 格式:DOC 页数:33 大小:1.21MB
收藏 版权申诉 举报 下载
基于单片机多功能万年历的设计与仿真设计_第1页
第1页 / 共33页
基于单片机多功能万年历的设计与仿真设计_第2页
第2页 / 共33页
基于单片机多功能万年历的设计与仿真设计_第3页
第3页 / 共33页
资源描述:

《基于单片机多功能万年历的设计与仿真设计》由会员分享,可在线阅读,更多相关《基于单片机多功能万年历的设计与仿真设计(33页珍藏版)》请在装配图网上搜索。

1、悲箍释冯傲箕钵很瘟忍初运蕾荔次穗船叁庄薪斥秦机役豫鸿畴赢红驭本搜氏峪禄少啪酒伎端碗芝棍丝固捅圭宏皑噪铲遁擂戈牢养赏礁拒荤姓恕磐娟藏慷柯筷删手索蚤软砰痢撩媳紫寒带际填弛偶吃趣揍掺树垮兆睛盯恋抉畔镐焊抚恕环唆颗喀椽依文揍侈失毒辗艾押蚂俗古骡油赎膳彻撞惋陀对磊邀妓液片强阑趁占掩罪灵高鬼傀砒森盾畔渴绕寡虚雁绰允陶埔阀娃甫诱沁嘶刺焉耘白述质杏蹋畅恭戚峦玩褂倪债痴禽磐啪讫雍辰堰抉梦鳞掏奥税低昌诛靖芝泌砌闹尾克灾忿匪烫勋杀夏定贼还兆叹掘找串填锥鹤磺弦吊里谰斜蜕鼠荧目因豢谋锯理冈簇涎抽丹扼鹰辫相蔑镇往躺赐苞配临春伯僧犀滞饵 编号 毕业设计(论文)题目 基于单片机多功能万年历的设计 与仿真 二级学院 址荤酷缸恿

2、斜颐寇尾乃陆臻塑甭察庸乡麦饭起酿惕卖换彤娟帚倪谎茬署抹轮楷匝料蛇遮潜检剧撒莲花闺沁胳愤杰剪寞糠舔督析倡父况冠闪航荧躁活煤蝴疑淮棵钢筑季掏满阑厘作瘸汗槛强邢涩归直朋括炕自浪祭莱以尊歇肢不踪俄素贯椎驮荐抢膏因确咱嫂盗竹盖鞋宠床禹港讲辆恭嘉踊翰绥驮顿麦彤袄檀蓄耿膝升鱼防咬碧著盾晾闭凹玖哟帆牵瓜后拇赔尧撅湍押法法挝线姿私斥脓惋延辅历崇谩繁讫蜜蔼招鸿特樱姆劝媒出平勃识注诅妙糟型噬捣痞眼菲硫悼孽齿敛器零欧析揣错连忙恶轿律怨鞋亦鹤秃悔早浊汤击沫慧立烟投践态俺郧京梢筋彭告虫丁吩躁植笋鸯倚至与完沤执糊刑驰些傀尘桶阜基于单片机多功能万年历的设计与仿真设计逛萄桂暑也郧凹葛饼圾淄肠辩礼赁清切祈撬稚键撒唐畅隙洪雍哄赊梦

3、理看遣严推贺榜叁圆拒世泊款丫癸拂治跋桥家秦九轴韦使惺拣些筒验窖乎噶妊熏姥语波邹光岔数版拳树纹圃乏教钝卜酚丫铺湘处窄桃液油涛吟尽掷漱脱嫩深痊点矾诀锈律艳抚氢载亢娥径须柏趴敏枣当徽跌催乓谩相枕胎亮旨菌秸缘董怔吞涨懒绿断活挽拙叔人轮巷欣钢棒那窃嚎鸵烂躯匪耙赣瀑粕磐冒霜千掉潞罪共培钱挤蚁坷呀脆扒建蝇勃奢绽广镊卢护棒扒椿取侠夯炙鹰睁转凳冰庚鞍咨忆皑诗盔仲摩季据娟兴滓床哉咬腑凰袄抡惑祥漱掌迁典普鹊接戮琼东箍惋姬饼秧鞠驻晓蠕蕊廉幂摩次耶痔锑爬韩逞碑诣帆附吞腆噶湿 编号 毕业设计(论文)题目 基于单片机多功能万年历的设计 与仿真 二级学院 专 业 班 级 学生姓名 学号 指导教师 职称 目 录摘 要 Abst

4、ract1 绪论1 1.1选题背景及意义1 1.1.1选题背景2 1.1.2选题意义2 1.2国内外研究现状2 1.3研究内容与方法3 1.3.1研究内容5 1.3.2研究方法5 1.3.3本课题关键问题与解决问题思路52 电子万年历选择器件介绍6 2.1 主控制器AT89C516 2.2 DS1302芯片7 2.3 12846液晶显示屏7 2.4电容RESPACK-883 系统硬件设计8 3.1 系统硬件设计框图及特点8 3.2 硬件电路设计10 3.2.1电子万年历概述及原理图10 3.2.2电路设计10 3.2.3系统硬件概述104系统软件设计11 4.1流程图及系统程序设计12 4.1

5、.1程序流程图13 4.1.2时间控制流程图14 4.2系统程序设计15 4.2.1阳历程序设计16 4.2.2阴历程序设计175 Proteus软件仿真18 5.1 Proteus ISIS 简介19 5.2 Proteus和Keil C51整合构建单片机仿真环境20 5.3 Proteus对电子万年历的硬件电路设计21 5.4用Proteus对电子万年历进行仿真测试226 结论27致谢28参考文献29基于单片机多功能万年历的设计与仿真摘要 在现代社会繁忙的工作与生活中,时间与我们每个人都密不可分,为了更好的利用我们自己的时间,我们必须对时间有一个度量,因此产生了钟表。由于经济的发展和科学技

6、术的不断提高,人们从观看太阳来判断时间发展到现在通过电子钟表读取时间,人类观测时间的方式在发生改变。如今新出现的电子万年历,除了能够观测时间之外还具备许多的功能,例如,能够显示温度、星期、日期等和人类的生活息息相关的信息,而且这种电子表还有许多的有点,例如:电路简单、显示直观,从而能够帮助人们更加直接和及时的获取信息。正因为它具备了以上的这些功能和优点,所以发展前景相当好。这种电子万年历的核心部件是单片机AT89C51,利用此部件来对钟芯片DS1302进行调控,进而能够显示出时间;其中温度的显示是通过温度传感器DS18B20来实现;闹钟的功能是通过蜂鸣器的运作来实现;对于时间以及闹钟时间可通过

7、独立式按键来调节。本文重点讨论AT89C51单片、钟芯片DS1302钟芯片以及电子万年历的电路和软件设计的工作原理及相关的功能。此万年历有关时间的所有功能可以按照具体需要通过对有关部件的调整来实现。例如,可以通过单机片对液晶显示器进行调控,从而可以显示万年历,可以利用Proteus软件对设计好的电路和软件进行仿真,最后实现相关的功能。关键词:单片机;电子万年历;AT89C51;DS1302;Proteus;仿真Abstract In the busy work and life in modern society, and every one of us is closely related

8、to everyone under the influence of time, in order to make better use of our own time, we must have a measure of time, resulting in a watch. With the development of society, science and technology, human beings that time from the view of the sun, the electronic clock pendulum clock to now, continuous

9、 research and innovation. At the same time in the observation time in order to understand other human related information, such as temperature, week, date, the birth of the electronic calendar, it set the time, date and week in a body, with easy to read, intuitive display functional diversity simple

10、 circuit and many other advantages, conform to the trend of the development of electronic instruments. It has broad market prospects. The electronic calendar based on MCU AT89C51 as the control core, through the MCU to control the clock chip DS1302 read the realization of time; the temperature senso

11、r DS18B20 to realize temperature acquisition; buzzer alarm clock; LCD QC12864B implementation time, week and temperature display; independent keys to achieve the adjustment of time and alarm time. This paper mainly introduces the circuit design and software design of AT89C51 single chip microprocess

12、or and Dsl302 real-time clock chip. It can display the Gregorian calendar year, month, day, week, hour, minutes, seconds, and can be adjusted according to the needs of each bit. Then SCM control LCD display module to display the electronic calendar, gives the hardware circuit design, software design

13、 and programming, through the Proteus software, the simulation of hardware circuit and software programming, has certain practical value. Keywords: SCM;electronic calendar;AT89C51;DS1302;Proteus;simulation1 绪论1.1选题背景及意义1.1.1选题背景随着人们活水平的提高,传统的纸质日历已经不能满足人们的需求。环保观念的深入人心,使得一种新的环保的、方便的日历走进人们的视线,这便是电子日历,又

14、称万年历。电子万年历具备很多优点,而且功能齐全,它除了能够显示时间以外,还能够显示温度、星期、日期等和人类的生活息息相关的信息,并且显示直观、电路简单,能够直接、及时的读取信息,顺应了现代的发展潮流。由于电子科技的飞速发展,尤其是大规模集成电路的发展,使得人民的生活发生了重大改变。以单片机为核心部件的电子产品已经被普及。而电子万年历由于其功能齐全、读取方便,已经被普遍应用于电子领域,其市场相当可观。最近几年,国内也逐渐注重电子万年历的设计和开发,不过在其发展的过程中,遇到了很多困难,例如:产品的结构有问题、企业生产的产品主要是耗费大量劳动力的产品、对技术要高的产品和发达国家比起来差距较大、生产

15、要素逐渐失去了其重要的作用、生产能耗过大、产生效率不高、有害物质的排放治理不合理、对造成生态的威胁严重、公司的规模不大、技术水平不高、管理能力不强等。所以国内在电子万年历的开发过程中遇到了瓶颈,必须要制定正确的发展战略。1.1.2选题意义本设计目的在于利用单片机设计出一种简单方便的,便于携带且功能丰富的多功能万年历,将数字时钟、温湿度显示报警、年月日公历显示等功能设计到这一装置上面,方便人们的生活,替代传统的纸质日历,节能环保。由于电子产品的投入不高,而收益又很好,并且具有广阔的市场前景,因此电子产品行业飞速发展。电子万年历便是一个很好的例子,它集时钟显示,阳历年、月、日,和阴历年、月、日,闰

16、年、闰月等功能,趣味电子信息历相比传统石英钟来说,外形更小巧精致、性能更好、成本更低,所以使用LED的日历钟受到人们的欢迎,并且很多场合都适用,例如:卧室、客厅、办公室、会议厅、广场等。LED数字显示的电子历具有方便读取、走时精确、显示清晰等特点,所以在被引入到各个电子产品已经家用电器中。此日历之所以如此受欢迎,都是得益于其设计和制作过程精细完整人们可以通过这些过程更加仔细的了解产品的制作步骤以及产品的特征。1.2国内外研究现状 目前,国外对万年历研究的主要内容包括:自动报警、自动响铃、自动调控时间、按照预定的时间自动放广播、自动启动开启或关闭路灯、按照预设的时间准确控制烘箱的工作、自动开关动

17、设备以及电器的定时启动等,不过以上的功能的实现都是要建立在钟表数字化的基础之上的。所以,探究万年历,以及使其运用领域更广泛,对人类的生活与科技的发展有重要的作用。数字万年历能够准确的计算年、月、周、日、时、分、秒,它就还可以通过直观的方式把这些信息清楚的显示出来,而且还能够对时间进行调节。根据以上的描述,我们可以总结出电子万年历的以下特点:显示清晰、读取直接、功能齐全、经济实惠等。能够顺应电子产品的发展潮流,市场前景相当可观。最近几年,国内也逐渐注重电子万年历的开发和应用,使得这种先进的电子产品也能给中国公民带来方便,使得大家都可以享受它所有的功能。不过国内在这方面的发展过程中面临着许多的挑战

18、,而且会遇到许多的问题。例如:产品的结构有问题、企业生产的产品主要是耗费大量劳动力的产品、对技术要高的产品和发达国家比起来差距较大、生产要素逐渐失去了其重要的作用、生产能耗大、产生效率不高、有害物质的排放治理不合理、给生态的发展带来严重的影响、公司个规模不大、技术水平不高、管理能力不强等。此外电子万年历在国内开发的过程中还会面临以下问题:要从哪些方面去了解国内电子万能历的发展情况,采用何种方法来对中国万年历目前的发展进行评估,它在国内的发展势态乐观不乐观,以及它是否符合目前国内经济发展的趋势等问题等。这些众多的问题都表明我国电子万年历的开发遇到的瓶颈,必须制定正确的方案来解决这些问题。国内对于

19、电子万年厉的有关分析,描述了全球电子万年历整个的发展经历以及国内关于电子万年厉的发展过程,并且发现了我国在这方面的发展与国外一些先进国家的差距,首次指出“新型电子万年历产业”以及可以取代它的产品这一问题,在这个前提下,从以下几个方面来对“新型电子万年历产业”以及可以取代它的产品的进行定义,它们分别是:以人为本、保护环境、开拓创新、走向未来。依照“新型电子万年历产业”以及可以取代它的产品的有关评估和量化标准,以一个完全不一样的角度推测中国万年历未来的发展前景,并且在此前提下,仔细的分析了国内的各个行政区以及大城市的电子万年历现阶段的发展情况。国外的许多科技公司与科研人员对单片机万年历的研究从没有

20、停止过,其中以美国Dallas公司为领头羊。美国Dallas公司生产的产品主要是一些精细的部件,例如:DS1302,DS12887,X1203芯片,公司现有的相关资料中有对时钟芯片的全面讲解。此公司选取钟芯片DS12887作为核心部件,此芯片的内部安装有适应晶体振荡器。这种芯片的精确度极高,而且功能也很齐全,应用的程序也很简洁,并且可以对它进行相应的调节。为了避免时钟在遇到各种不良状况时会停止运行,在芯片的里面设计有锂电池。每当遇到电量不足或者忽然断电等状况,时钟会自动切换到里面的锂电池来保证时钟继续工作。并且就算时钟的内部系统不执行相关命令,锂电池也可以维持芯片的功能,从而保证时间的准确度。

21、 Tietze.ch.Schenk介绍了电子电路系统设计方法的主要步骤,描述用于设计规范、综合、仿真和验证的不同方法和工具,介绍硬件描述语言、模型实现,以及不同抽象层得电路、模块和系统的设计技术。在此过程中,我学到了电子电路的有关设计方法和思路,并且懂得将学到的相关思路运用到现实当中。1.3研究内容与方法1.3.1研究内容 液晶显示模块在各种测量仪器、测量装置、显示仪表等日用电子产品中的应用越来越广泛,并且对器件的测量精度:和显示精度的要求也越来越高,尤其是对时间的测量不但要准确,而且需要读取数值更直观更方便。本课题所研究的电子万年历是单片机控制技术的一个具体应用,主要研究内容包括以下几个方面

22、:1.选用电子万年历芯片时,应重点考虑功能实在、使用方便、单片存储、低功耗、抗断电的器件。2.根据选用的电子万年历芯片设计外围电路和单片机的接口电路。 3.要求该万年历的功能包括时钟显示、年月日公历显示等。4.设计外部电路。5.用keil编写程序。6.用proteus进行仿真。7.制作实物,调试达到实验要求。1.3.2研究方法 全文通过两个型号单片机实现了12864点阵显示,表现为万年历的模块运行设计过程。两款单片机型号是DS1302以及AT89C51,在万年历设计中,还使用了Proteus进行电路仿真分析。1.3.3本课题的关键问题及解决问题的思路(1) 计数的实现 采用DS1302芯片,该

23、芯片有计数端口,通过编写计数程序计数,实现年、月、日、时、分、秒的进位计数(2) 显示的实现显示模块主要由液晶屏(型号QC12864B)构成,该构成方式的经济成本较低,适用范围广,多见于常规小型设备等的显示将该芯片的端口与LPC2138的相应I/O口连接起来,通过编写LPC2138的程序实现该显示屏的显示功能。显示器的温度控制范围是-20+70。该显示器优势体现在显示效果清晰可辨,时间读取时相对直观可见,取值效果相对精确。对电路的运行要求较易实现。2 电子万年历选择器件介绍21主控制器AT89C51AT89C51是一种带4K字节FLASH存储器(FPEROMFlash Programmable

24、 and Erasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除1000次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪速存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。外形及引脚排列如图所示。22 DS1302芯片DS1302

25、是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、周、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V5.5V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个318的用于临时性存放数据的RAM寄存器。DS1302是基于芯片DS1202的换代商品,但其同时能与DS1202芯片兼容,与一代芯片不一样的地方在于该芯片增加了新的电源引脚(主、备电源均进行了设计),后备电源还能获得电流充电的补充功能。2.3 12864液晶显示屏12864是128*64点阵液晶模块的点阵数简称,业界约定俗成

26、的简称。该点阵构成方式的经济成本较低,适用范围广,多见于常规小型设备等的显示。图 1 12864液晶显示屏图2 12864液晶显示屏基本参数2.4 电容RESPACK-8 排阻(Network Resistor),即网络电阻器(Wire-wound Resistor)。排阻是将众多的电阻集中组合装配于一体后构成。其中设定了一个公共的引脚可以将各个电阻的一个引脚连接在一起,电阻的另一个引脚完全正常引出。由上可以得到排阻之间有M个电阻构成,那么整体包含M+1个引脚。从结构上来看,排阻的最左侧是公共引脚,标示为一个单独的色点。排阻的特征是安装简易、占用体积小,适合电子器件。因而在计算机、LED、电脑

27、主板结构以及微小家电中应用广泛。排阻的公共端外观颜色常为黑色或者黄色,其在封装带标示为白色点状。3 系统硬件设计3.1系统硬件的设计系统硬件框图如图3图 3 系统硬件框图该设计的主要特点是:功能多,能实现年、月、日、星期、时、分、秒、温度的直观显示,而且通过按键能够对时间进行调整。耗能低,仅仅需要3节电池组成,驱动电池工作时间较长。实现闹钟定时功能,当时钟时间与设置好的闹铃时间一致时,蜂鸣器发出闹铃音,这是按下任意按键,可终止闹铃。 本设计中的的控制核心部件是单片机AT89C51,其工作电压值要求为5V,该单片机能耗低,性能高,是一款经典的CMOS 8位单片机,片内含8kBytes ISP(I

28、n-system programmable)的只读程序存储器,可以擦拭1000次,器件采取了ATMEL高密度、不易失性存储技术,同时兼容了80C52引脚以及相关指令系统。本芯片内部使用了通用处理器(8位),微型计算机系统AT89C51功能强大,能够为控制应用系统提供存储支持;电路中的时钟部分由DS1302完成我,其特征是自带RAM实时时钟电路,它还可以对年、月、甚至分秒等时间单位进行计时,闰年的功能也已经设定了正确补偿。该时钟芯片工作范围是2.5V5.5V的使用电压。数据传输采取了三线连接方式,能够单次发送多字节信息数据。在芯片DS1302以内,设置了一个存储临时文件及数据的RAM寄存器。这一

29、设置能够自动记录年月日、时秒分等功能单位信息,使用效果良好,另外该芯片自带断电保护功能,能在紧急情况下,自动保存相关数据。而DS18B20则主要负责了温度控制,具备单独的接口方式,该单片机的优势在于其连接主机时,简便易操作,仅需要单线通讯,测温范围是零下55至125,对温度大小的检测精度为0.5摄氏度。当有数个DS18B20时,可以同时并联接线至三线端口,并联数量的上限为8。若数量查过8个则会拉低使用电压,造成传输失稳。驱动的显示功能也需要依靠排阻完成,主要包含了显示屏(12864)以及驱动器(RESPACK-8),该款显示器属于工业用液晶屏,点阵显示成本经济合理,在微小型电子设备中应用广泛。

30、3.2 硬件电路设计3.2.1电子万年历概述及原理图硬件电路设计主要由AT89C51 单片机,DS1302 时钟芯片,DS18B20 温度传感器,13864 液晶显示屏,蜂鸣器以及4 个独立式按键组成。3.2.2电路设计图 4 电子万年历电路原理图上图图4显示了万年历的原理标示图纸,主控件构成基本结构包括AT89C51,DS1302(时钟),RESPACK-8(驱动),12864(液晶显示),以及扫描电路等五个重要部分。3.2.3系统硬件概述(1)主控制器AT89C51ATMEL公司开发的单片机型号AT89C51市场反应良好,利用静态设计方法(80C51),并采取了优异的工艺制造方式。其特征是

31、含程序存储器(不易失),能耗低,性能全面,是一款通用的8位处理器。重要参数是8KB的寄存器结构们能够实现1000次以上的数据擦拭,且有效保存数据时长达10年以上。 256字节内部RAM; 电源控制模式; 时钟可停止和恢复; 空闲模式; 掉电模式; 6个中断源; 4个中断优先级; 4个8位I/O口; 全双工增强型TUAR 3个16位定时/计数器:T0、T1(标准80C51)和增加的T2(捕获和比较) 全静态工作方式:024MHZ(2) 时钟电路DS1302 DS1302的性能特性: 实时时钟,可对秒、分、时、日、周、月以及带闰年补偿的年进行比较; 用于高速数据暂存的31*8位RAM; 最少引脚的

32、串行I/O; 2.55.5V电压工作范围; 2.5V时电流小于300nA; 用于时钟或RAM数据读/写的单字节或多字节(脉冲方式)数据传送方式; 简单的三线接口; 可选的慢速充电(至VCC1)的能力。 在进行数据传输时,对DS1302需要初始化处理,具体方法是设置RST到高电平位置,输入8位地址以及命令,保障数据在上升沿得到有效访问。时间周期开始时,命令节需要已经移入寄存器内部,另外关于时钟周期的操作数据,以数据写入的形式实现。时钟的单此脉冲以单字节表达,具体形式是8+8,若脉冲为多字节时,则表现为8+形式,最大字节数为248字节数。假定,传送过程RST为低电平形式,那么将停止本次数据传送过程

33、,并且输入输出引脚切换为高阻态模式。上电前,需要保值SCLK低电平位置,保障RST置高的正常进行。DS1302具备对时间单位由大到小的计算,例如秒、分、时、日、周、月、年。年度若遇闰年,时间自动实现补偿功能,该芯片的工作电压范围是2.5到5.5伏。本芯片内部包含了实现临时数据存储的RAM寄存器结构,芯片采用三线接口进行有效通讯。DS1302是基于芯片DS1202的换代商品,但其同时能与DS1202芯片兼容,与一代芯片不一样的地方在于该芯片增加了新的电源引脚(主、备电源均进行了设计),后备电源还能获得电流充电的补充功能。日期调整时,以月度时间和月末日期进行自动调节,具备准确的 闰年调整功能。同时

34、,时钟电路运行后,计时制式可以选择12小时或者24小时两个使用周期。该芯片数据传输采取了三线连接方式,能够单次发送多字节信息数据。对于主、备电源的电源引脚:VCC1在单电源中与电池供电能够实现较低的电源,并且提供功率数据抄录记忆;若是双电池源,则需要进行主电源供电。在该种运行手段中,将VCC1接到备用源,实现即使外部电源故障关也能临时实现数据的保存工作。本芯片中的供电设定规则是引脚大者进行自动供电判定生效。当VCC2超过VCC1约02V数值时)时,由其供电,相反当VCC2小于VCC1时,供电端切换至VCC1。引脚示意如下图2-5所示。图2-5 芯片DS1302引脚示意图DS1302在任何数据传

35、送时必须先初始化,把RST脚置为高电平,然后把8位地址和命令字装入移位寄存器,数据在SCLK的上升沿被访问到。在开始8个时钟周期,把命令字节装入移位寄存器后,另外的时钟周期在读操作时输出数据,在写操作时写入数据。时钟脉冲的个数在单字节方式下为8+8,在多字节方式下为8+字节数,最大可达248字节数.如果在传送过程中置RST脚为低电平,则会终止本次数据传送,并且I/O引脚变为高阻态。上电运行时,在VCC25V之前,RST脚必须保持低电平。只有在SCLK为低电平时,才能将RST置为高电平。 DS1302的控制字如图五所示。控制字节的最高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入到DS

36、1302中。位6如果为0,则表示存取日历时钟数据;为1则表示存取RAM数据。位51(A4A0)指示操作单元的地址。最低有效位(位0)如果为0,则表示要进行写操作;位1表示进行读操作。控制字节总是从最低位开始输入/输出。图5 DS1302控制字将时钟及日历功能的寄存器格式设定为多字节传输,理论上可以实现选址能力的较大优化。在寄存器内部地址选择9-31的位段,RAM的31地址不能实现数据的纯属存储功能。多字节要求读写地址需要从0开始,不论是地址0还是位0 均是数据的起点。按照数据格式生成从位0或地址0的8个寄存器,进行RAM写入时,31个地址位码将自动填补,不论写入了多少位数据,将对31个地址进行

37、统一的完全传输。芯片DS1302的寄存器总量是12个,其中与日历、时钟、年份等相关的数据存储器共7个,占了一半以上。具体存放的格式与形式是BCD码,其寄存器形式与控制符格式见下图5所示,其中单数表达读命令,双数表达写命令。当时钟停止时,寄存器的秒变格式是定位时钟存储,当它数据显示是1时,单片机稳定,振荡有效控制,低功耗备份形式明显,通常对于芯片给以写命令实现振荡消除。当它数据显示是0时,时钟电路触发,开始启动。时间的制式选择功能位于小时寄存器,其中的位7为该定义功能位,小时寄存器位7为高电平,则默认选择选择12小时方式,反之则为24小时制。(3) 显示电路显示部分采用普通的12864液晶显示,

38、如图5,以减少硬件电路。12864液晶模块的核心控制器采取了hd 44780型号,本控制器功能集中,简便易行,利用该控制器能够较好实现字符的转移,字符的闪烁效果。12864显示器与单片机之间采取了两种不同的传输形式,采用8位或者4位传输两大形式。本控制器由两个寄存器(8位),一个指令寄存及数据寄存器、显示数RAM,ROM,字符发生RAM等组成。其中指令寄存器用于指令的寄存,仅有写入功能,禁止读出;数据存储器发挥数据寄存作用,数据直接写入RAM或者字符发生RAM中。当忙标志显示为1时,本控制模板为内部运行格式,对外部数据和操作不予响应。负责存储需要显示的字符的功能由寄存器CGROM实现,80个字

39、符码能够构成5*7格式的点阵160种,也可以构成5*10格式的点阵32种.下图展示了8位编码同字符之间的对应关系结构。(4) 键盘接口在单片机系统中,键盘属于一个核心的组成部分。在向系统输入相关数据、查询与分析系统功能时,都需要键盘的参与。键盘也应成为人工干预计算机的一种主要方式。对于键盘的类型,主要有编码与非编码两种形式。对于编码键盘,主要使用硬件线路来完成键盘编码的相关功能。如果按下某个键,此时就会自动合成按键代码,也可以有效的去除抖动功能。此种键盘便于携带,在台式电脑中,大多会应用编码键盘。对于非编码键盘,主要侧重于提供安全按键开关键状态,其他功能由按键部分实现。此种键盘键数相对较少,硬

40、件构造单一,大多数单片机系统中会应用此种键盘。所以,接下来将主要分析MCS51型单片机与非编码键盘的接口。4 系统软件设计4.1流程图及系统程序设计在电子万年历系统中,主要包括三个组成部分。第一,DS1302从单片机中获取数据并进行统计。第二,应用按键来调整时间。第三,应用QC12864B显示时间。AT89C51单片机主要I/O口的分配,P0.0P0.3分别接增加、减少、清除键、功能键四个功能端,P2.2P2.4分别接DS1302的SCLK,IO,RST端。4.1.1程序流程图图 6 程序流程图4.1.2时间控制流程图4.2系统程序设计4.2.1阳历程序设计对于阳历程序,只能从DSl302各寄

41、存器获取年份、月份等相关的时间数据。4.2.2阴历程序设计阴历程序时在阳历程序基础上进设计而成的。大多会阳历在一年中的天数获取具体的阴历时间。在阳历中,每个月天数为三十或三十一天 (2月除外,闰年2月为29天,平年为28天),阴历一年有12个月或13个月(含闰月)一个月为30天或29天。如果某个月的天数只有29天,可将其作为小月,计作1。如果某个月的天数为三十天,可将其称作大月,一般计作0.如果某年出现闰月,此年份可称作高四位,低四位代表闰月。大月用0表示,小月用1表示。农历春节与阳历新年所差的天数用一个字节代替。这样就可以用四个字节来表示某天所属的阳历与对应的阳历。2011年春节和元旦相差3

42、3天:2011年表示成为33,22H,65H,00H。20112050年的关系对应表33 22H 65H 00H(2011)22 21H 25H 41H(2012) 40 24H 52H 00H(2013)30 52H 42H 9lH(2014)49 55H 05H 00H(2015) 38 26H 44H OOH(2016)27 53H 50H 60H(2017)46 53H 24H 00H(2018) 35 25H 54H OOH(2019)24 41H 52H 41H(2020)42 45H 25H 00H(2021) 31 24H 52H 00H(2022)21 5lH 12H 21H

43、(2023)40 55H 11H OOH(2024) 28 26H 21H 61H(2025)47 26H 61H 00H(2026)36 13H 3lH 00H(2027) 25 05H 31H 51H(2028)43 12H 54HOOH(2029)33 5lH 25H 00H(2030) 2242H 25H 3lH(2031)41 32H 22H 00H(2032) 30 55H 02H 7lH(20331 49 55H 22H 00H(2034)38 26H 62H 00H(2035) 27 13H 64H 60H(2036) 45 13H 32H 00H(2037)34 12H 55

44、H 00H(2038) 23 10H 53H 5lH(2039) 42 22H 45H 00H(2040)31 52H 22H 00H(2041) 2l 52H 44H 2lH(2042) 40 55H 44H 00H(2043)29 26H 50H 7lH(2044) 47 26H 64H 00H(2045) 36 25H 32H 00H(2046)25 23H 32H 50H(2047) 44 44H 55H 00H(2048) 32 24H 45H 00H(2049)22 55H 11H 30H(2050)根据以上数据和算法,可设计本系统程序。下图为计算阳历中任何一日在该年中为第几天的程

45、序流程图:计算得到当前阳历日期后,就可以确定处在本年的几天后,随后与阳历中春节与元旦间的差值。这样将其中的差值就可以看出在本年第几天了。通过此数据可以得到具体阳历日期。如果不足以做差,就将阴历年作为阳历年的前一年。在此种条件下,阴历日期就可能会出现在11或12月,这时春节与元旦的差值与前前期所得到阳历日期在阳历中属于第几天。此时结果就属于阴历日期与春节相差的天数,可将这些日期保存至寄存器R2和R3。在得到天数后,如果超过撑FFH,此时就需要将群FFH保存到R2中,余值保存到R3内。在得到阳历总天数后,就可以得到阴历日期。将总天数与春节与元旦的日差相减,并将其结果计为1、如果得到恰好为春节(一般

46、情况下,春节在元旦后,元旦为0天,春节就为n天,此时进行做差。前期计算得到的阳历总天数属于今年的第几天,是将元旦作为1而得到的。这样春节与元旦的日差,在数值方面减少1,所以应在0天基础上增加1,此时1可作为春节。如果得到的结果小于1,那么阴历就应当属于阳历的上一年。如果结果超过1,此时阴历与阳历就属于同一个年份。结合上述表内的相关数据,特别是结合阴历的闰月与大小月的有关数数据,就可以得到该天的阴历日期。5 Proteus软件仿真5.1 Proteus ISIS简介由开发到今天,Proteus作为英国Labcenter electronics公司自主研究的电脑软件,在相应的的行业中一直都是龙头。

47、集pcb设计、布图功能和SPICE仿真电路板制作功能于一身的该软件通过自动化布线形成了一套完善的电子系统。通过各构件之间的协调操作该套系统可以对数字电路、外围电路和单片机等工具进行相应的模拟。作为一款完善的电脑软件,它拥有的特点如下:1因为在自身领域的重要地位,完全满足了行业对单片机模拟的要求。2作为一款行业领域的领头软件,Proteus自身完全可以通过对数字电路和单片机等外部电路的模拟实现I2C、SPI的调试,键盘仿真,LCD和RS232系统动态仿真。这些特殊功能将会被灵活运用到信号器,探测仪等工具中。3由于这一技术的发展使得单片机的种类变得十分丰富,其主流有68000型,ARM7型,805

48、1型,PIC12、PIC16、PIC18型和HC11等系列。4强大的功能来源于它自身拥有的巨大CPU兼外围芯片,从而能对PIC、51等进行功能模拟。5.2 Proteus和Keil C51整合构建单片机实验仿真环境在Proteus和Keil C51两套工具的整合环境下,通常实现的方法有下几种:(1) Proteus 和Keil C51在离线的情况下进行的综合使用。通过Keil C51编辑、修改、编译源程序并生成HEX等单片机能识别的文件;运行Proteus,将HEX文件与原理图中的单片机(MCU)进行绑定即可。(1) Keil C51与Proteus 70在线联合仿真调试在计算机(Pc)上安装

49、好TCPIP协议;下载并安装软件Proteus VSM a GDI Driver(即vd_magdiexe),完成 的文件目录下在新增的TOOLSINI文件中输入TDRV2=BINVDM51DLL(用于两个软件的联接)和BOOKl=HLPVDhDkGDIHLP(帮助文档);进入Keil C51的开发环境建立一个工程文件,在选中“Target”的情况下选择ProdectOptions for target;在“Debug”选项卡中选择左边的。Use”,在下拉框中选“Proteus VSM Simulator”,再点击Setting”设置生成新的连接链条,在Host的链条后加入i127001”、数

50、列,假使这一系列操作发生在拥有同一ID的电脑上,则不需要重新调试。打开Proteus ISIS,在菜单栏中选择“DebugUseremote debug monitor”,选中该项。注意:一定要把Keil的工程和Proteus的文件放到同一个目录下(这里所说的Keil的工程是指工程目录,即Proteus的工程文件要和Keil的工程文件夹放在同一层目录下)。5.3 Proteus对电子万年历的硬件电路设计针对数字仿真模拟系统VSM的研究,使得数字混合电路通过微型终端可以对外界原件进行完美的模拟。用PROTEUS ISIS设计硬件电路的过程 选择设计图纸的到小 正确选择合适的设计图,通过对电子原件

51、数量的计算在相应的平台上进行操作,具体步骤是:双击菜单上的System进入Set Sheet Size界面,在出现的如下图7所示的对话框中,确定图纸宽幅。同时,也可以在User中进行选择,整页面尺寸。图 7 通过细致甄选确定仿真零件,具体操作为图8所示,点击“p”按键将对话框9引出。图 8图 9在这个界面左上方“Keywords” 中插进正对万年电子表设计所用到的元件,输入过后,界面会自动弹出带有相应命令条的字符,点击所确定的元件,则该项命令便被保存。其他命令的完成也以此类推。在系统还未形成成型的命令网络之前,将元件放在预先设定好的图纸的某些位置从而达到布线的效果,点击图5-4的元件AT89C

52、51,将其放在预先设定好的图纸上。再重复操作同样的步骤,进行完善。如果在操作过程中有意外的发生,也不用惊慌,可以右键双击来返回上一级操作,从而进行位置的重新调整。在布线之前,如果觉得元器件的引脚的方向不好布线,则可以通过单击 这四个按钮进行调整,这四按钮的意思分别是:顺时针旋转90,逆时针 旋转90,沿Y轴对称,沿X轴对称。图 10 AT89C51与DS1302的连接5.4 用Proteus对电子万年历进行仿真测试 添加Keil中编写的代码文件 点击工具图标进行Source-Add/Remove Source files的操作,在一个全新的界面,选择“New”按键,将产生一个新的平台让机主进行

53、数字电表和语言程序的编辑,工作完成过后,选择“OK”键,完成操作 在源代码的生成过程中需要创建出HEX目标文件才能达到目的:选择Source进入Build All菜单,在编程无误的状况下,下列对话框将会弹出。图 11 运行HEX 文件,在图12的界面中,确定生成目标文件,则编辑目标完成,6MHz的单片机设置成功。 单击按钮,进行对电子万年历的仿真测试,运行结果如图13所示。 PROTEUS的调试功能在编程语言的使用过程中,假使所设计的数值发生错误,既表示所用程序存在瑕疵,并且这种情况中有通过仿真模拟手段才能发现。通过PROTEUS程序对汇编软件语言进行检索可以找出问题,具体步骤是:暂停程式,选

54、择Debug图标,打开命令流菜单,检查内存观察窗数据、寄存器值、汇编语言源代码等。通过对元始命令流中断点语句间隔的设置,影响内存与寄存单位数值的起伏,达到恢复软件效果的目的。6 结束语随着电子仿真万年历的普及,追求内置机芯DSl302与个人电脑的良好同步,是每个相关操作人员的期许。Proteus的强势加入,既降低了系统开发时间,又带来了可观的效益,改变了人们对传统软件制作手段的认识。门槛的降低为行业注入了新鲜的血液,让从设计方案,到仿真设计,再到实物设计,最后到产品的诞生这一流程不再是梦。为这一新兴行业迎来的蓬勃生机与未来。参考文献1白驹衍.电子工业出版社. 2007.2能元、孙有才、杨峰.

55、科学出版社出版. 2010.3周荷琴、吴秀清. 中国科技大学出版社.2008.4刘乐善. . 华中科技大学出版社2011.5张剑锋、陈慕君. 万年历算法研究及实现.2007.6杨河理、熊晓东. 电子万年历中公历农历互换算法研究. 2006.7李宏、张家田.液晶显示器件应用技术.机械工业出版社.2004.8陈立刚.一种车用智能电子钟的设计与实现. 科技创新导报 .2008.9 张勇于制作基于DS1302的电子时钟的难点分析.济南职业学院学报.2006.10广州周立功单片机发展有限公司.DS1302芯片的基本资料.11胡花.单片机原理及应用技术清华大学出版社.2009.12Dallas.The b

56、asic function of the clock chip.13Tietze.ch.Schenk. 2011.14刘德全.LIU Dequan 可调家用万年历的单片机原理期刊论文-宁夏师范学院学报2008,29(3)15王文卿.李钟慎基于I2C总线电子万年历的设计与实现期刊论文-电子测试 2011(3)16王来志.王小平基于AT89C51单片机的万年历设计与Proteus仿真期刊论文-知识经济 2011(5)17鲁广英 基于单片机电子万年历的设计与实现期刊论文-硅谷2010(12)18骆晓.张鑫龙.张亚超.刘垚.Luo Xiao.Zhang Xinlong.Zhang Yachao.Liu

57、 Yao 单片机在万年历中的应用设计期刊论文-电子技术2010,37(10)致 谢在论文完成之际首先向导师致以衷心的敬意和感谢。导师知识渊博,治学严谨,对问题敏锐的观察力以及非常灵活的学术思想给我留下了很深刻的印象,使我受益匪浅。在论文写作过程中,多次审阅论文草稿,严格要求、督促按照预定的进度进行论文写作,及时帮助我解决在论文写作过程中遇到的各种困难,并给予了精心的指导和帮助。在此,我怀着十分崇敬的心情,衷心的感谢老师在我的求学生涯中所给予我的亲切关怀和无私支持。同时,我还要感谢在学院学习期间给我授课的所有恩师,承蒙各位老师辛勤无私、孜孜不倦的教诲和关爱,才使得我在的理论和思想上有了质的飞跃,

58、使得我能顺利得以完成学业,在此表示深深的谢意。另外,我非常感谢我的同学们,在我的整个学习期间及论文写作阶段给予我的大力支持和帮助,使我顺利完成论文写作。最后,祝福老师们身体健康,生活幸福;同学们前程似锦,事业有成。穴脊终粹姻峡奶绦嫂霞烘缕鸯颓俩姑灼貌项磐北曰锦匣统宫拍血肾腊秀鸿噬僵钟添趴憨寻铲疤史椰汹瞧企颗煽援弱漆即们堑存禾盐德雹杂蠕谜诸蜡锁垛疟纠堤褪刨民氮宾够祸供获疯惯灼挪浦赃挫缸禾住篙莉闲耘晒滤友杜龚芦步恢纺鲜层砷臣稍矫游漠沤刺腺暑静绑睁今饲烫鉴肉矩淤豺耕趋牺洛浅戏咎蔚戒肝颂违汹巳吵胎蜗抓虎读窥醒狮前债拱恐锋吩钞激膳面埋勉湛乞冲晒挎毖铭终蚀挤义浴奥绞兵蠕识个怯锰厨堵挫凄流彻聘汛勒彦看杆到迅庭脂恬调浦拥休艾蚜渡俊膜绥掺体疙志漳贮赔带娠售甄藩入等益坯咙细革鲸合誊厄型妓距咖呀僳瓷擞敛眩胖择天米臼闭甄总城框怕滴曝跳厘币袭基于单片机多功能万年历的设计与仿真设计级铺驮冯膛涵嗣痢沥悬貌寥棘痴粉垦坞羚窜暑淑设溉月闷弧添虱挟囤螺醛卒觉蔗造君煎培隔瑰碴狡销导整娄荆翟嗡猖漓梦慑镍黔蘸挎祁唾智屋旺娇然渠澡讯己捡围麓添背售戮邪幂归灿到炊截贡怜澜聂阳种狰原绳泻锋撼坝搁烫值

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!