版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
编号毕业设计(论文)题目基于单片机多功能万年历的设计与仿真二级学院专业班级学生姓名学号指导教师职称目录摘要……………ⅠAbstract…………Ⅱ1绪论………………11.1选题背景及意义……………11.1.1选题背景…………………21.1.2选题意义…………………21.2国内外研究现状………………21.3研究内容与方法………………31.3.1研究内容…………………51.3.2研究方法…………………51.3.3本课题关键问题与解决问题思路………52电子万年历选择器件介绍………62.1主控制器AT89C51…………62.2DS1302芯片…………………72.312846液晶显示屏………………72.4电容RESPACK-8………………83系统硬件设计……………………83.1系统硬件设计框图及特点…………………83.2硬件电路设计………………103.2.1电子万年历概述及原理图………………103.2.2电路设计…………………103.2.3系统硬件概述……………104系统软件设计……………………114.1流程图及系统程序设计……………………124.1.1程序流程图……………134.1.2时间控制流程图………144.2系统程序设计………………154.2.1阳历程序设计……………164.2.2阴历程序设计……………175Proteus软件仿真………………185.1ProteusISIS简介…………195.2Proteus和KeilC51整合构建单片机仿真环境…………205.3Proteus对电子万年历的硬件电路设计……215.4用Proteus对电子万年历进行仿真测试……226结论………………27致谢…………………28参考文献……………29基于单片机多功能万年历的设计与仿真摘要在现代社会繁忙的工作与生活中,时间与我们每个人都密不可分,为了更好的利用我们自己的时间,我们必须对时间有一个度量,因此产生了钟表。由于经济的发展和科学技术的不断提高,人们从观看太阳来判断时间发展到现在通过电子钟表读取时间,人类观测时间的方式在发生改变。如今新出现的电子万年历,除了能够观测时间之外还具备许多的功能,例如,能够显示温度、星期、日期等和人类的生活息息相关的信息,而且这种电子表还有许多的有点,例如:电路简单、显示直观,从而能够帮助人们更加直接和及时的获取信息。正因为它具备了以上的这些功能和优点,所以发展前景相当好。这种电子万年历的核心部件是单片机AT89C51,利用此部件来对钟芯片DS1302进行调控,进而能够显示出时间;其中温度的显示是通过温度传感器DS18B20来实现;闹钟的功能是通过蜂鸣器的运作来实现;对于时间以及闹钟时间可通过独立式按键来调节。本文重点讨论AT89C51单片、钟芯片DS1302钟芯片以及电子万年历的电路和软件设计的工作原理及相关的功能。此万年历有关时间的所有功能可以按照具体需要通过对有关部件的调整来实现。例如,可以通过单机片对液晶显示器进行调控,从而可以显示万年历,可以利用Proteus软件对设计好的电路和软件进行仿真,最后实现相关的功能。关键词:单片机;电子万年历;AT89C51;DS1302;Proteus;仿真AbstractInthebusyworkandlifeinmodernsociety,andeveryoneofusiscloselyrelatedtoeveryoneundertheinfluenceoftime,inordertomakebetteruseofourowntime,wemusthaveameasureoftime,resultinginawatch.Withthedevelopmentofsociety,scienceandtechnology,humanbeingsthattimefromtheviewofthesun,theelectronicclockpendulumclocktonow,continuousresearchandinnovation.Atthesametimeintheobservationtimeinordertounderstandotherhumanrelatedinformation,suchastemperature,week,date,thebirthoftheelectroniccalendar,itsetthetime,dateandweekinabody,witheasytoread,intuitivedisplayfunctionaldiversitysimplecircuitandmanyotheradvantages,conformtothetrendofthedevelopmentofelectronicinstruments.Ithasbroadmarketprospects.TheelectroniccalendarbasedonMCUAT89C51asthecontrolcore,throughtheMCUtocontroltheclockchipDS1302readtherealizationoftime;thetemperaturesensorDS18B20torealizetemperatureacquisition;buzzeralarmclock;LCDQC12864Bimplementationtime,weekandtemperaturedisplay;independentkeystoachievetheadjustmentoftimeandalarmtime.ThispapermainlyintroducesthecircuitdesignandsoftwaredesignofAT89C51singlechipmicroprocessorandDsl302real-timeclockchip.ItcandisplaytheGregoriancalendaryear,month,day,week,hour,minutes,seconds,andcanbeadjustedaccordingtotheneedsofeachbit.ThenSCMcontrolLCDdisplaymoduletodisplaytheelectroniccalendar,givesthehardwarecircuitdesign,softwaredesignandprogramming,throughtheProteussoftware,thesimulationofhardwarecircuitandsoftwareprogramming,hascertainpracticalvalue.Keywords:SCM;
electroniccalendar;
AT89C51;
DS1302;
Proteus;
simulation1绪论1.1选题背景及意义1.1.1选题背景随着人们活水平的提高,传统的纸质日历已经不能满足人们的需求。环保观念的深入人心,使得一种新的环保的、方便的日历走进人们的视线,这便是电子日历,又称万年历。电子万年历具备很多优点,而且功能齐全,它除了能够显示时间以外,还能够显示温度、星期、日期等和人类的生活息息相关的信息,并且显示直观、电路简单,能够直接、及时的读取信息,顺应了现代的发展潮流。由于电子科技的飞速发展,尤其是大规模集成电路的发展,使得人民的生活发生了重大改变。以单片机为核心部件的电子产品已经被普及。而电子万年历由于其功能齐全、读取方便,已经被普遍应用于电子领域,其市场相当可观。最近几年,国内也逐渐注重电子万年历的设计和开发,不过在其发展的过程中,遇到了很多困难,例如:产品的结构有问题、企业生产的产品主要是耗费大量劳动力的产品、对技术要高的产品和发达国家比起来差距较大、生产要素逐渐失去了其重要的作用、生产能耗过大、产生效率不高、有害物质的排放治理不合理、对造成生态的威胁严重、公司的规模不大、技术水平不高、管理能力不强等。所以国内在电子万年历的开发过程中遇到了瓶颈,必须要制定正确的发展战略。1.1.2选题意义本设计目的在于利用单片机设计出一种简单方便的,便于携带且功能丰富的多功能万年历,将数字时钟、温湿度显示报警、年月日公历显示等功能设计到这一装置上面,方便人们的生活,替代传统的纸质日历,节能环保。由于电子产品的投入不高,而收益又很好,并且具有广阔的市场前景,因此电子产品行业飞速发展。电子万年历便是一个很好的例子,它集时钟显示,阳历年、月、日,和阴历年、月、日,闰年、闰月等功能,趣味电子信息历相比传统石英钟来说,外形更小巧精致、性能更好、成本更低,所以使用LED的日历钟受到人们的欢迎,并且很多场合都适用,例如:卧室、客厅、办公室、会议厅、广场等。LED数字显示的电子历具有方便读取、走时精确、显示清晰等特点,所以在被引入到各个电子产品已经家用电器中。此日历之所以如此受欢迎,都是得益于其设计和制作过程精细完整人们可以通过这些过程更加仔细的了解产品的制作步骤以及产品的特征。1.2国内外研究现状目前,国外对万年历研究的主要内容包括:自动报警、自动响铃、自动调控时间、按照预定的时间自动放广播、自动启动开启或关闭路灯、按照预设的时间准确控制烘箱的工作、自动开关动设备以及电器的定时启动等,不过以上的功能的实现都是要建立在钟表数字化的基础之上的。所以,探究万年历,以及使其运用领域更广泛,对人类的生活与科技的发展有重要的作用。数字万年历能够准确的计算年、月、周、日、时、分、秒,它就还可以通过直观的方式把这些信息清楚的显示出来,而且还能够对时间进行调节。根据以上的描述,我们可以总结出电子万年历的以下特点:显示清晰、读取直接、功能齐全、经济实惠等。能够顺应电子产品的发展潮流,市场前景相当可观。最近几年,国内也逐渐注重电子万年历的开发和应用,使得这种先进的电子产品也能给中国公民带来方便,使得大家都可以享受它所有的功能。不过国内在这方面的发展过程中面临着许多的挑战,而且会遇到许多的问题。例如:产品的结构有问题、企业生产的产品主要是耗费大量劳动力的产品、对技术要高的产品和发达国家比起来差距较大、生产要素逐渐失去了其重要的作用、生产能耗大、产生效率不高、有害物质的排放治理不合理、给生态的发展带来严重的影响、公司个规模不大、技术水平不高、管理能力不强等。此外电子万年历在国内开发的过程中还会面临以下问题:要从哪些方面去了解国内电子万能历的发展情况,采用何种方法来对中国万年历目前的发展进行评估,它在国内的发展势态乐观不乐观,以及它是否符合目前国内经济发展的趋势等问题等。这些众多的问题都表明我国电子万年历的开发遇到的瓶颈,必须制定正确的方案来解决这些问题。国内对于电子万年厉的有关分析,描述了全球电子万年历整个的发展经历以及国内关于电子万年厉的发展过程,并且发现了我国在这方面的发展与国外一些先进国家的差距,首次指出“新型电子万年历产业”以及可以取代它的产品这一问题,在这个前提下,从以下几个方面来对“新型电子万年历产业”以及可以取代它的产品的进行定义,它们分别是:以人为本、保护环境、开拓创新、走向未来。依照“新型电子万年历产业”以及可以取代它的产品的有关评估和量化标准,以一个完全不一样的角度推测中国万年历未来的发展前景,并且在此前提下,仔细的分析了国内的各个行政区以及大城市的电子万年历现阶段的发展情况。国外的许多科技公司与科研人员对单片机万年历的研究从没有停止过,其中以美国Dallas公司为领头羊。美国Dallas公司生产的产品主要是一些精细的部件,例如:DS1302,DS12887,X1203芯片,公司现有的相关资料中有对时钟芯片的全面讲解。此公司选取钟芯片DS12887作为核心部件,此芯片的内部安装有适应晶体振荡器。这种芯片的精确度极高,而且功能也很齐全,应用的程序也很简洁,并且可以对它进行相应的调节。为了避免时钟在遇到各种不良状况时会停止运行,在芯片的里面设计有锂电池。每当遇到电量不足或者忽然断电等状况,时钟会自动切换到里面的锂电池来保证时钟继续工作。并且就算时钟的内部系统不执行相关命令,锂电池也可以维持芯片的功能,从而保证时间的准确度。Tietze.ch.Schenk介绍了电子电路系统设计方法的主要步骤,描述用于设计规范、综合、仿真和验证的不同方法和工具,介绍硬件描述语言、模型实现,以及不同抽象层得电路、模块和系统的设计技术。在此过程中,我学到了电子电路的有关设计方法和思路,并且懂得将学到的相关思路运用到现实当中。1.3研究内容与方法1.3.1研究内容液晶显示模块在各种测量仪器、测量装置、显示仪表等日用电子产品中的应用越来越广泛,并且对器件的测量精度:和显示精度的要求也越来越高,尤其是对时间的测量不但要准确,而且需要读取数值更直观更方便。本课题所研究的电子万年历是单片机控制技术的一个具体应用,主要研究内容包括以下几个方面:1.选用电子万年历芯片时,应重点考虑功能实在、使用方便、单片存储、低功耗、抗断电的器件。2.根据选用的电子万年历芯片设计外围电路和单片机的接口电路。3..要求该万年历的功能包括时钟显示、年月日公历显示等。4.设计外部电路。5.用keil编写程序。6.用proteus进行仿真。。7.制作实物,调试达到实验要求。1.3.2研究方法全文通过两个型号单片机实现了12864点阵显示,表现为万年历的模块运行设计过程。两款单片机型号是DS1302以及AT89C51,在万年历设计中,还使用了Proteus进行电路仿真分析。1.3.3本课题的关键问题及解决问题的思路计数的实现采用DS1302芯片,该芯片有计数端口,通过编写计数程序计数,实现年、月、日、时、分、秒的进位计数显示的实现显示模块主要由液晶屏(型号QC12864B)构成,该构成方式的经济成本较低,适用范围广,多见于常规小型设备等的显示将该芯片的端口与LPC2138的相应I/O口连接起来,通过编写LPC2138的程序实现该显示屏的显示功能。显示器的温度控制范围是-20℃~+70℃。该显示器优势体现在显示效果清晰可辨,时间读取时相对直观可见,取值效果相对精确。对电路的运行要求较易实现。2电子万年历选择器件介绍2.1主控制器AT89C51AT89C51是一种带4K字节FLASH存储器(FPEROM—FlashProgrammableandErasableReadOnlyMemory)的低电压、高性能CMOS8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除1000次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪速存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。外形及引脚排列如图所示。2.2DS1302芯片DS1302是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、周、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V~5.5V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个31×8的用于临时性存放数据的RAM寄存器。DS1302是基于芯片DS1202的换代商品,但其同时能与DS1202芯片兼容,与一代芯片不一样的地方在于该芯片增加了新的电源引脚(主、备电源均进行了设计),后备电源还能获得电流充电的补充功能。2.312864液晶显示屏12864是128*64点阵液晶模块的点阵数简称,业界约定俗成的简称。该点阵构成方式的经济成本较低,适用范围广,多见于常规小型设备等的显示。图112864液晶显示屏图212864液晶显示屏基本参数2.4电容RESPACK-8排阻(NetworkResistor),即网络电阻器(Wire-woundResistor)。排阻是将众多的电阻集中组合装配于一体后构成。其中设定了一个公共的引脚可以将各个电阻的一个引脚连接在一起,电阻的另一个引脚完全正常引出。由上可以得到排阻之间有M个电阻构成,那么整体包含M+1个引脚。从结构上来看,排阻的最左侧是公共引脚,标示为一个单独的色点。排阻的特征是安装简易、占用体积小,适合电子器件。因而在计算机、LED、电脑主板结构以及微小家电中应用广泛。排阻的公共端外观颜色常为黑色或者黄色,其在封装带标示为白色点状。3系统硬件设计3.1系统硬件的设计系统硬件框图如图3图3系统硬件框图该设计的主要特点是:①功能多,能实现年、月、日、星期、时、分、秒、温度的直观显示,而且通过按键能够对时间进行调整。②耗能低,仅仅需要3节电池组成,驱动电池工作时间较长。③实现闹钟定时功能,当时钟时间与设置好的闹铃时间一致时,蜂鸣器发出闹铃音,这是按下任意按键,可终止闹铃。本设计中的的控制核心部件是单片机AT89C51,其工作电压值要求为5V,该单片机能耗低,性能高,是一款经典的CMOS8位单片机,片内含8kBytesISP(In-systemprogrammable)的只读程序存储器,可以擦拭1000次,器件采取了ATMEL高密度、不易失性存储技术,同时兼容了80C52引脚以及相关指令系统。本芯片内部使用了通用处理器(8位),微型计算机系统AT89C51功能强大,能够为控制应用系统提供存储支持;电路中的时钟部分由DS1302完成我,其特征是自带RAM实时时钟电路,它还可以对年、月、甚至分秒等时间单位进行计时,闰年的功能也已经设定了正确补偿。该时钟芯片工作范围是2.5V~5.5V的使用电压。数据传输采取了三线连接方式,能够单次发送多字节信息数据。在芯片DS1302以内,设置了一个存储临时文件及数据的RAM寄存器。这一设置能够自动记录年月日、时秒分等功能单位信息,使用效果良好,另外该芯片自带断电保护功能,能在紧急情况下,自动保存相关数据。而DS18B20则主要负责了温度控制,具备单独的接口方式,该单片机的优势在于其连接主机时,简便易操作,仅需要单线通讯,测温范围是零下55至125℃,对温度大小的检测精度为0.5摄氏度。当有数个DS18B20时,可以同时并联接线至三线端口,并联数量的上限为8。若数量查过8个则会拉低使用电压,造成传输失稳。驱动的显示功能也需要依靠排阻完成,主要包含了显示屏(12864)以及驱动器(RESPACK-8),该款显示器属于工业用液晶屏,点阵显示成本经济合理,在微小型电子设备中应用广泛。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),并采取了优异的工艺制造方式。其特征是含程序存储器(不易失),能耗低,性能全面,是一款通用的8位处理器。重要参数是8KB的寄存器结构们能够实现1000次以上的数据擦拭,且有效保存数据时长达10年以上。●256字节内部RAM;●电源控制模式;●时钟可停止和恢复;●空闲模式;●掉电模式;●6个中断源;●4个中断优先级;●4个8位I/O口;●全双工增强型TUAR●3个16位定时/计数器:T0、T1(标准80C51)和增加的T2(捕获和比较)●全静态工作方式:0~24MHZ时钟电路DS1302DS1302的性能特性:●实时时钟,可对秒、分、时、日、周、月以及带闰年补偿的年进行比较;●用于高速数据暂存的31*8位RAM;●最少引脚的串行I/O;●2.5~5.5V电压工作范围;●2.5V时电流小于300nA;●用于时钟或RAM数据读/写的单字节或多字节(脉冲方式)数据传送方式;●简单的三线接口;●可选的慢速充电(至VCC1)的能力。在进行数据传输时,对DS1302需要初始化处理,具体方法是设置RST到高电平位置,输入8位地址以及命令,保障数据在上升沿得到有效访问。时间周期开始时,命令节需要已经移入寄存器内部,另外关于时钟周期的操作数据,以数据写入的形式实现。时钟的单此脉冲以单字节表达,具体形式是8+8,若脉冲为多字节时,则表现为8+形式,最大字节数为248字节数。假定,传送过程RST为低电平形式,那么将停止本次数据传送过程,并且输入输出引脚切换为高阻态模式。上电前,需要保值SCLK低电平位置,保障RST置高的正常进行。DS1302具备对时间单位由大到小的计算,例如秒、分、时、日、周、月、年。年度若遇闰年,时间自动实现补偿功能,该芯片的工作电压范围是2.5到5.5伏。本芯片内部包含了实现临时数据存储的RAM寄存器结构,芯片采用三线接口进行有效通讯。DS1302是基于芯片DS1202的换代商品,但其同时能与DS1202芯片兼容,与一代芯片不一样的地方在于该芯片增加了新的电源引脚(主、备电源均进行了设计),后备电源还能获得电流充电的补充功能。日期调整时,以月度时间和月末日期进行自动调节,具备准确的闰年调整功能。同时,时钟电路运行后,计时制式可以选择12小时或者24小时两个使用周期。该芯片数据传输采取了三线连接方式,能够单次发送多字节信息数据。对于主、备电源的电源引脚:VCC1在单电源中与电池供电能够实现较低的电源,并且提供功率数据抄录记忆;若是双电池源,则需要进行主电源供电。在该种运行手段中,将VCC1接到备用源,实现即使外部电源故障关也能临时实现数据的保存工作。本芯片中的供电设定规则是引脚大者进行自动供电判定生效。当VCC2超过VCC1约0.2V数值时)时,由其供电,相反当VCC2小于VCC1时,供电端切换至VCC1。引脚示意如下图2-5所示。图2-5芯片DS1302引脚示意图DS1302在任何数据传送时必须先初始化,把RST脚置为高电平,然后把8位地址和命令字装入移位寄存器,数据在SCLK的上升沿被访问到。在开始8个时钟周期,把命令字节装入移位寄存器后,另外的时钟周期在读操作时输出数据,在写操作时写入数据。时钟脉冲的个数在单字节方式下为8+8,在多字节方式下为8+字节数,最大可达248字节数.如果在传送过程中置RST脚为低电平,则会终止本次数据传送,并且I/O引脚变为高阻态。上电运行时,在VCC≥2.5V之前,RST脚必须保持低电平。只有在SCLK为低电平时,才能将RST置为高电平。DS1302的控制字如图五所示。控制字节的最高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入到DS1302中。位6如果为0,则表示存取日历时钟数据;为1则表示存取RAM数据。位5~1(A4~A0)指示操作单元的地址。最低有效位(位0)如果为0,则表示要进行写操作;位1表示进行读操作。控制字节总是从最低位开始输入/输出。图5DS1302控制字将时钟及日历功能的寄存器格式设定为多字节传输,理论上可以实现选址能力的较大优化。在寄存器内部地址选择9-31的位段,RAM的31地址不能实现数据的纯属存储功能。多字节要求读写地址需要从0开始,不论是地址0还是位0均是数据的起点。按照数据格式生成从位0或地址0的8个寄存器,进行RAM写入时,31个地址位码将自动填补,不论写入了多少位数据,将对31个地址进行统一的完全传输。芯片DS1302的寄存器总量是12个,其中与日历、时钟、年份等相关的数据存储器共7个,占了一半以上。具体存放的格式与形式是BCD码,其寄存器形式与控制符格式见下图5所示,其中单数表达读命令,双数表达写命令。当时钟停止时,寄存器的秒变格式是定位时钟存储,当它数据显示是1时,单片机稳定,振荡有效控制,低功耗备份形式明显,通常对于芯片给以写命令实现振荡消除。当它数据显示是0时,时钟电路触发,开始启动。时间的制式选择功能位于小时寄存器,其中的位7为该定义功能位,小时寄存器位7为高电平,则默认选择选择12小时方式,反之则为24小时制。显示电路显示部分采用普通的12864液晶显示,如图5,以减少硬件电路。12864液晶模块的核心控制器采取了hd44780型号,本控制器功能集中,简便易行,利用该控制器能够较好实现字符的转移,字符的闪烁效果。12864显示器与单片机之间采取了两种不同的传输形式,采用8位或者4位传输两大形式。本控制器由两个寄存器(8位),一个指令寄存及数据寄存器、显示数RAM,ROM,字符发生RAM等组成。其中指令寄存器用于指令的寄存,仅有写入功能,禁止读出;数据存储器发挥数据寄存作用,数据直接写入RAM或者字符发生RAM中。当忙标志显示为1时,本控制模板为内部运行格式,对外部数据和操作不予响应。负责存储需要显示的字符的功能由寄存器CGROM实现,80个字符码能够构成5*7格式的点阵160种,也可以构成5*10格式的点阵32种.下图展示了8位编码同字符之间的对应关系结构。键盘接口在单片机系统中,键盘属于一个核心的组成部分。在向系统输入相关数据、查询与分析系统功能时,都需要键盘的参与。键盘也应成为人工干预计算机的一种主要方式。对于键盘的类型,主要有编码与非编码两种形式。对于编码键盘,主要使用硬件线路来完成键盘编码的相关功能。如果按下某个键,此时就会自动合成按键代码,也可以有效的去除抖动功能。此种键盘便于携带,在台式电脑中,大多会应用编码键盘。对于非编码键盘,主要侧重于提供安全按键开关键状态,其他功能由按键部分实现。此种键盘键数相对较少,硬件构造单一,大多数单片机系统中会应用此种键盘。所以,接下来将主要分析MCS—51型单片机与非编码键盘的接口。4系统软件设计4.1流程图及系统程序设计在电子万年历系统中,主要包括三个组成部分。第一,DS1302从单片机中获取数据并进行统计。第二,应用按键来调整时间。第三,应用QC12864B显示时间。AT89C51单片机主要I/O口的分配,P0.0~P0.3分别接增加、减少、清除键、功能键四个功能端,P2.2~P2.4分别接DS1302的SCLK,IO,RST端。4.1.1程序流程图图6程序流程图4..1.2时间控制流程图4.2系统程序设计4.2.1阳历程序设计对于阳历程序,只能从DSl302各寄存器获取年份、月份等相关的时间数据。4.2.2阴历程序设计阴历程序时在阳历程序基础上进设计而成的。大多会阳历在一年中的天数获取具体的阴历时间。在阳历中,每个月天数为三十或三十一天(2月除外,闰年2月为29天,平年为28天),阴历一年有12个月或13个月(含闰月).一个月为30天或29天。如果某个月的天数只有29天,可将其作为小月,计作1。如果某个月的天数为三十天,可将其称作大月,一般计作0.如果某年出现闰月,此年份可称作高四位,低四位代表闰月。大月用0表示,小月用1表示。农历春节与阳历新年所差的天数用一个字节代替。这样就可以用四个字节来表示某天所属的阳历与对应的阳历。2011年春节和元旦相差33天:2011年表示成为33,22H,65H,00H。2011—2050年的关系对应表3322H65H00H(2011)2221H25H41H(2012)4024H52H00H(2013)3052H42H9lH(2014)4955H05H00H(2015)3826H44HOOH(2016)2753H50H60H(2017)4653H24H00H(2018)3525H54HOOH(2019)2441H52H41H(2020)4245H25H00H(2021)3124H52H00H(2022)215lH12H21H(2023)4055H11HOOH(2024)2826H21H61H(2025)4726H61H00H(2026)3613H3lH00H(2027)2505H31H51H(2028)4312H54HOOH(2029)335lH25H00H(2030)2242H25H3lH(2031)4132H22H00H(2032)3055H02H7lH(203314955H22H00H(2034)3826H62H00H(2035)2713H64H60H(2036)4513H32H00H(2037)3412H55H00H(2038)2310H53H5lH(2039)4222H45H00H(2040)3152H22H00H(2041)2l52H44H2lH(2042)4055H44H00H(2043)2926H50H7lH(2044)4726H64H00H(2045)3625H32H00H(2046)2523H32H50H(2047)4444H55H00H(2048)3224H45H00H(2049)2255H11H30H(2050)根据以上数据和算法,可设计本系统程序。下图为计算阳历中任何一日在该年中为第几天的程序流程图:计算得到当前阳历日期后,就可以确定处在本年的几天后,随后与阳历中春节与元旦间的差值。这样将其中的差值就可以看出在本年第几天了。通过此数据可以得到具体阳历日期。如果不足以做差,就将阴历年作为阳历年的前一年。在此种条件下,阴历日期就可能会出现在11或12月,这时春节与元旦的差值与前前期所得到阳历日期在阳历中属于第几天。此时结果就属于阴历日期与春节相差的天数,可将这些日期保存至寄存器R2和R3。在得到天数后,如果超过撑FFH,此时就需要将群FFH保存到R2中,余值保存到R3内。在得到阳历总天数后,就可以得到阴历日期。将总天数与春节与元旦的日差相减,并将其结果计为1、如果得到恰好为春节(一般情况下,春节在元旦后,元旦为0天,春节就为n天,此时进行做差。前期计算得到的阳历总天数属于今年的第几天,是将元旦作为1而得到的。这样春节与元旦的日差,在数值方面减少1,所以应在0天基础上增加1,此时1可作为春节。如果得到的结果小于1,那么阴历就应当属于阳历的上一年。如果结果超过1,此时阴历与阳历就属于同一个年份。结合上述表内的相关数据,特别是结合阴历的闰月与大小月的有关数数据,就可以得到该天的阴历日期。5Proteus软件仿真5.1ProteusISIS简介由开发到今天,Proteus作为英国Labcenterelectronics公司自主研究的电脑软件,在相应的的行业中一直都是龙头。集pcb设计、布图功能和SPICE仿真电路板制作功能于一身的该软件通过自动化布线形成了一套完善的电子系统。通过各构件之间的协调操作该套系统可以对数字电路、外围电路和单片机等工具进行相应的模拟。作为一款完善的电脑软件,它拥有的特点如下:1因为在自身领域的重要地位,完全满足了行业对单片机模拟的要求。2作为一款行业领域的领头软件,Proteus自身完全可以通过对数字电路和单片机等外部电路的模拟实现I2C、SPI的调试,键盘仿真,LCD和RS-232系统动态仿真。这些特殊功能将会被灵活运用到信号器,探测仪等工具中。3由于这一技术的发展使得单片机的种类变得十分丰富,其主流有68000型,ARM7型,8051型,PIC12、PIC16、PIC18型和HC11等系列。4强大的功能来源于它自身拥有的巨大CPU兼外围芯片,从而能对PIC、51等进行功能模拟。5.2Proteus和KeilC51整合构建单片机实验仿真环境在Proteus和KeilC51两套工具的整合环境下,通常实现的方法有下几种:(1)Proteus和KeilC51在离线的情况下进行的综合使用。①通过KeilC51编辑、修改、编译源程序并生成HEX等单片机能识别的文件;②运行Proteus,将HEX文件与原理图中的单片机(MCU)进行绑定即可。KeilC51与Proteus7.0在线联合仿真调试①在计算机(Pc)上安装好TCP/IP协议;②下载并安装软件ProteusVSMaGDIDriver(即vd_magdi.exe),完成的文件目录下在新增的TOOLS.INI文件中输入TDRV2=BIN\VDM51.DLL(用于两个软件的联接)和BOOKl=HLP\VDhDkGDI.HLP(帮助文档);③进入KeilC51的开发环境建立一个工程文件,在选中“Target”的情况下选择Prodect—Optionsfortarget;④在“Debug”选项卡中选择左边的。Use”,在下拉框中选“ProteusVSMSimulator”,再点击Setting”设置生成新的连接链条,在Host的链条后加入i127.0.0.1”、数列,假使这一系列操作发生在拥有同一ID的电脑上,则不需要重新调试。⑤打开ProteusISIS,在菜单栏中选择“Debug—Useremotedebugmonitor”,选中该项。注意:一定要把Keil的工程和Proteus的文件放到同一个目录下(这里所说的Keil的工程是指工程目录,即Proteus的工程文件要和Keil的工程文件夹放在同一层目录下)。5.3Proteus对电子万年历的硬件电路设计针对数字仿真模拟系统VSM的研究,使得数字混合电路通过微型终端可以对外界原件进行完美的模拟。用PROTEUSISIS设计硬件电路的过程①选择设计图纸的到小正确选择合适的设计图,通过对电子原件数量的计算在相应的平台上进行操作,具体步骤是:双击菜单上的System进入SetSheetSize界面,在出现的如下图7所示的对话框中,确定图纸宽幅。同时,也可以在User中进行选择,整页面尺寸。图7②通过细致甄选确定仿真零件,具体操作为图8所示,点击“p”按键将对话框9引出。图8图9在这个界面左上方“Keywords”中插进正对万年电子表设计所用到的元件,输入过后,界面会自动弹出带有相应命令条的字符,点击所确定的元件,则该项命令便被保存。其他命令的完成也以此类推。③在系统还未形成成型的命令网络之前,将元件放在预先设定好的图纸的某些位置从而达到布线的效果,点击图5-4的元件AT89C51,将其放在预先设定好的图纸上。再重复操作同样的步骤,进行完善。如果在操作过程中有意外的发生,也不用惊慌,可以右键双击来返回上一级操作,从而进行位置的重新调整。在布线之前,如果觉得元器件的引脚的方向不好布线,则可以通过单击这四个按钮进行调整,这四按钮的意思分别是:顺时针旋转90°,逆时针旋转90°,沿Y轴对称,沿X轴对称。图10AT89C51与DS1302的连接5.4用Proteus对电子万年历进行仿真测试①添加Keil中编写的代码文件点击工具图标进行Source-Add/RemoveSourcefiles的操作,在一个全新的界面,选择“New”按键,将产生一个新的平台让机主进行数字电表和语言程序的编辑,工作完成过后,选择“OK”键,完成操作②在源代码的生成过程中需要创建出HEX目标文件才能达到目的:选择Source进入BuildAll菜单,在编程无误的状况下,下列对话框将会弹出。图11③运行HEX文件,在图12的界面中,确定生成目标文件,则编辑目标完成,6MHz的单片机设置成功。④单击按钮,进行对电子万年历的仿真测试,运行结果如图13所示。⑤PROTEUS的调试功能在编程语言的使用过程中,假使所设计的数值发生错误,既表示所用程序存在瑕疵,并且这种情况中有通过仿真模拟手段才能发现。通过PROTEUS程序对汇编软件语言进行检索可以找出问题,具体步骤是:暂停程式,选择Debug图标,打开命令流菜单,检查内存观察窗数据、寄存器值、汇编语言源代码等。通过对元始命令流中断点语句间隔的设置,影响内存与寄存单位数值的起伏,达到恢复软件效果的目的。6结束语随着电子仿真万年历的普及,追求内置机芯DSl302与个人电脑的良好同步,是每个相关操作人员的期许。Proteus的强势加入,既降低了系统开发时间,又带来了可观的效益,改变了人们对传统软件制作手段的认识。门槛的降低为行业注入了新鲜的血液,让从设计方案,到仿真设计,再到实物设计,最后到产品的诞生这一流程不再是梦。为这一新兴行业迎来的蓬勃生机与未来。参考文献[1]白驹衍.<<单片机计算机及应用>>.电子工业出版社.2007.[2]能元、孙有才、杨峰.<<Ms-51单片微型计算机原理与接口技术、应用实例>>科学出版社出版.2010.[3]周荷琴、吴秀清.<<微型计算机原理和接口技术>>.中国科技大学出版社.2008.[4]刘乐善.<<微型计算机接口技术及应用>>.华中科技大学出版社2011.[5]张剑锋、陈慕君.《万年历算法研究及实现》.2007.[6]杨河理、熊晓东.《电子万年历中公历农历互换算法研究》.2006.[7]李宏、张家田.《液晶显示器件应用技术》.机械工业出版社.2004.[8]陈立刚.《一种车用智能电子钟的设计与实现》.科技创新导报.2008.[9]张勇于.《制作基于DS1302的电子时钟的难点分析》.济南职业学院学报.2006.[10]广州周立功单片机发展有限公司.《DS1302芯片的基本资料》.[11]胡花.《单片机原理及应用技术》清华大学出版社.2009.[12]Dallas.《Thebasicfunctionoftheclockchip》.[13]Tietze.ch.Schenk.<<electronicscircuits-Designandapplication>>2011.[14]刘德全.LIUDequan可调家用万年历的单片机原理[期刊论文]-宁夏师范学院学报2008,29(3)[15]王文卿.李钟慎基于I2C总线电子万年历的设计与实现[期刊论文]-电子测试2011(3)[16]王来志.王小平基于AT89C51单片机的万年历设计与Proteus仿真[期刊论文]-知识经济2011(5)[17]鲁广英基于单片机电子万年历的设计与实现[期刊论文]-硅谷2010(12)[18]骆晓.张鑫龙.张亚超.刘垚.LuoXiao.ZhangXinlong.ZhangYachao.LiuYao单片机在万年历中的应用设计[期刊论文]-电子技术2010,37(10)致谢在论文完成之际首先向导师致以衷心的敬意和感谢。导师知识渊博,治学严谨,对问题敏锐的观察力以及非常灵活的学术思想给我留下了很深刻的印象,使我受益匪浅。在论文写作过程中,多次审阅论文草稿,严格要求、督促按照预定的进度进行论文写作,及时帮助我解决在论文写作过程中遇到的各种困难,并给予了精心的指导和帮助。在此,我怀着十分崇敬的心情,衷心的感谢老师在我的求学生涯中所给予我的亲切关怀和无私支持。同时,我还要感谢在学院学习期间给我授课的所有恩师,承蒙各位老师辛勤无私、孜孜不倦的教诲和关爱,才使得我在的理论和思想上有了质的飞跃,使得我能顺利得以完成学业,在此表示深深的谢意。另外,我非常感谢我的同学们,在我的整个学习期间及论文写作阶段给予我的大力支持和帮助,使我顺利完成论文写作。最后,祝福老师们身体健康,生活幸福;同学们前程似锦,事业有成。基于C8051F单片机直流电动机反馈控制系统的设计与研究基于单片机的嵌入式Web服务器的研究MOTOROLA单片机MC68HC(8)05PV8/A内嵌EEPROM的工艺和制程方法及对良率的影响研究基于模糊控制的电阻钎焊单片机温度控制系统的研制基于MCS-51系列单片机的通用控制模块的研究基于单片机实现的供暖系统最佳启停自校正(STR)调节器单片机控制的二级倒立摆系统的研究基于增强型51系列单片机的TCP/IP协议栈的实现基于单片机的蓄电池自动监测系统基于32位嵌入式单片机系统的图像采集与处理技术的研究基于单片机的作物营养诊断专家系统的研究基于单片机的交流伺服电机运动控制系统研究与开发基于单片机的泵管内壁硬度测试仪的研制基于单片机的自动找平控制系统研究基于C8051F040单片机的嵌入式系统开发基于单片机的液压动力系统状态监测仪开发模糊Smith智能控制方法的研究及其单片机实现一种基于单片机的轴快流CO〈,2〉激光器的手持控制面板的研制基于双单片机冲床数控系统的研究基于CYGNAL单片机的在线间歇式浊度仪的研制基于单片机的喷油泵试验台控制器的研制基于单片机的软起动器的研究和设计基于单片机控制的高速快走丝电火花线切割机床短循环走丝方式研究基于单片机的机电产品控制系统开发基于PIC单片机的智能手机充电器基于单片机的实时内核设计及其应用研究基于单片机的远程抄表系统的设计与研究基于单片机的烟气二氧化硫浓度检测仪的研制基于微型光谱仪的单片机系统单片机系统软件构件开发的技术研究基于单片机的液体点滴速度自动检测仪的研制基于单片机系统的多功能温度测量仪的研制基于PIC单片机的电能采集终端的设计和应用基于单片机的光纤光栅解调仪的研制气压式线性摩擦焊机单片机控制系统的研制基于单片机的数字磁通门传感器基于单片机的旋转变压器-数字转换器的研究基于单片机的光纤Bragg光栅解调系统的研究单片机控制的便携式多功能乳腺治疗仪的研制基于C8051F020单片机的多生理信号检测仪基于单片机的电机运动控制系统设计Pico专用单片机核的可测性设计研究基于MCS-51单片机的热量计基于双单片机的智能遥测微型气象站MCS-51单片机构建机器人的实践研究基于单片机的轮轨力检测基于单片机的GPS定位仪的研究与实现基于单片机的电液伺服控制系统用于单片机系统的MMC卡文件系统研制基于单片机的时控和计数系统性能优化的研究基于单片机和CPLD的粗光栅位移测量系统研究单片机控制的后备式方波UPS提升高职学生单片机应用能力的探究基于单片机控制的自动低频减载装置研究基于单片机控制的水下焊接电源的研究基于单片机的多通道数据采集系统基于uPSD3234单片机的氚表面污染测量仪的研制基于单片机的红外测油仪的研究96系列单片机仿真器研究与设计基于单片机的单晶金刚石刀具刃磨设备的数控改造基于单片机的温度智能控制系统的设计与实现基于MSP430单片机的电梯门机控制器的研制基于单片机的气体测漏仪的研究基于三菱M16C/6N系列单片机的CAN/USB协议转换器基于单片机和DSP的变压器油色谱在线监测技术研究基于单片机的膛壁温度报警系统设计基于AVR单片机的低压无功补偿控制器的设计基于单片机船舶电力推进电机监测系统基于单片机网络的振动信号的采集系统基于单片机的大容量数据存储技术的应用研究基于单片机的叠图机研究与教学方法实践基于单片机嵌入式Web服务器技术的研究及实现基于AT89S52单片机的通用数据采集系统基于单片机的多道脉冲幅度分析仪研究机器人旋转电弧传感角焊缝跟踪单片机控制系统基于单片机的控制系统在PLC虚拟教学实验中的应用研究基于单片机系统的网络通信研究与应用基于PIC16F877单片机的莫尔斯
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高效脱水工艺创新-洞察与解读
- 小学音乐一年级下册《老虎磨牙》欣赏教学设计与实施
- 初中数学九年级下册《三视图的识读、分析与空间想象》教学设计
- 聚焦核心素养 赋能高阶思维-六年级数学下册“圆柱与圆锥”单元整体教学设计
- 小学六年级英语下册Unit1 How tall are you Part A 教学设计
- 小学六年级英语(人教PEP)下册“同义句转换”核心素养导向教学设计
- 量子拓扑优化-第1篇-洞察与解读
- 防水键盘结构创新-洞察与解读
- 康复护理知识与技巧
- 2025年广西壮族自治区玉林市秋季期高一上学期期末教学质量监测化学试卷
- 新型电化学酶传感器的研制及其在酚类污染物快速检测中的应用与前景探索
- 安徽省市政设施养护维修工程计价定额2022 下册
- 2026年ica国际汉语教师考试试题
- 2025年通信工程施工企业安全员三类人员ABC证题库及答案
- 2026年工业数据集联合开发标注与封装标准
- 非ST段抬高型急性冠脉综合征指南解读
- 我国首个人形机器人与具身智能标准体系(2026版)全文深度解读
- 职业道德模拟考试题库及答案2025年
- 2025年健康管理师考试题库及答案
- (正式版)DB61∕T 2058-2025 《米脂谷子良种繁育技术规范》
- 4S店安全管理培训课件
评论
0/150
提交评论