基于Proteus多功能电子万年历的设计与实现本科毕业论文(31页).doc
《基于Proteus多功能电子万年历的设计与实现本科毕业论文(31页).doc》由会员分享,可在线阅读,更多相关《基于Proteus多功能电子万年历的设计与实现本科毕业论文(31页).doc(30页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-基于Proteus多功能电子万年历的设计与实现本科毕业论文-第 25 页基于Proteus多功能电子万年历的设计与实现摘 要本文基于Proteus多功能电子万年历的设计并实现了其功能。主要是借助电路仿真软件Proteus,在硬件方面主要采用AT89S51单片机作为主控核心,由LCD1点阵液晶显示屏显示。可以对年、月、日、星期、时、分、秒进行计时,还具有闰年补偿等多种功能,可以同时显示年、月、日、时、分、秒等信息。在软件方面,主要包括日历程序、时间调整程序和显示程序。关键词:Proteus ;AT89S51;单片机;电子万年历Design and Realization of multi fu
2、nction electronic calendar based on ProteusAbstractIn this paper, the design of multi function electronic calendar based on Proteus and the realization of its function. By means of circuit simulation software Proteus, in terms of hardware using AT89S51 microcontroller as the main control center, by
3、LCD dot matrix LCD display. For years, month, day, week, hour, minutes and seconds for time, but also has a leap year compensation and other functions, can display year, month, day, time, minutes, seconds and other information. In the software aspect, mainly includes calendar program time to adjust
4、procedures and display program.Key words:Proteus;AT89S51;Single chip microcomputer;Electronic calendar目录1 综 述11.1 单片机及多功能电子万年历的发展简述11.2 单片机及电子万年历国内外发展状况22 开发平台32.1 KeiluVision3介绍32.2 单片机仿真软件Proteus43 硬件设计53.1 AT89S51引脚及功能53.2 AT89S51的内部结构63.2.1 电路设计框图73.2.2 主要单元电路设计83.2.3 单片机中断93.3 LCD液晶显示器93.4 按键系统
5、114 程序设计124.1 定时器模块124.2 外部中断响应模块134.3 主函数模块144.4 判断闰年每月天数154.5 时间调整165 系统仿真与调试185.1 系统仿真185.1.1 系统原理电路图绘制185.1.2 Keil 工程的建立195.2 系统调试205.2.1 LCD液晶显示调试205.2.2 定时器调试215.2.3 中断函数调试216 测试结果与分析226.1 代码的功能226.2 测试结果分析257 实验总结28致 谢29参考文献30附 录31绪论随着科技的快速发展,自从观太阳、摆钟到现在电子钟,在人们的不断研究,不断创新之下一步步进步。本次课题主要介绍了基于Pro
6、teus的多功能电子万年历的设计与实现,多功能电子万年历是这一发展趋势中的代表,它顺应了时代的进步,符合人们对时间方面的要求。它的出现给人们的日常生活带来的诸多方便,在时间极显宝贵的现代已经广泛应用于各个领域,其作用更是不言而喻。而且多功能电子万年历采用直观的数字显示,可以同时显示年、月、日、时、分、秒等信息,还具有时间校准等功能。本次课题主要研究液晶显示器LCD与单片机之间的硬件互联及通信,对数种硬件连接方案进行了详尽的比较,在软件方面对日历算法也进行了论述。其功耗小,可选用46V电压为其供电,更符合消费者的生活需求。1.1 单片机及多功能电子万年历的发展简述单片微型计算机简称单片机,是典型
7、的嵌入式微控制器,其英文缩写为MCU,它最早是用在工业控制领域。从1972年至今单片机经历了四个阶段的发展,从Inter公司推出的MCS-8为代表的单片机到第二阶段的部分功能优化,再到8位至16的转变,衍生到今天的单片机用于生活和各个工业用途。自从观太阳、摆钟到现在电子钟,人类不断研究,不断创新纪录,科学技术的不断提高,计算机科学技术的日渐成熟,为人类的高品质生活提供了强有力的后盾。科学技术介入人类的生活,这是社会发展的必然趋势,而万年历是这一发展趋势中的代表,万年历顺应了人们对时间方面的要求,它的出现给人们的生活带来的诸多方便,在时间极显宝贵的现代生活中,已经广泛应用于各个领域,其作用更是不
8、言而喻。相比起传统的时间工具,本系统有着精确显示时间计算,清晰、全面的显示信息界面,没有厌余数据,且具有温度、农历显示等功能,这些是传统时间工具无法达到的。而相比市场出售的其他高科技时间工具,本系统有着制作简单,成本低廉等市场优势。1.2单片机及电子万年历国内外发展状况随着微电子技术的高速发展,单片机在国民经济的个人领域得到了广泛的运用。单片机开发技术已成为电子信息、电气、通信、自动化、机电一体化等专业技术人员必须掌握的技术。在国内:单片机的学习呈上升趋势,但很多人学习是无头绪,不知道从何入手,行业发展迅速,国内生产技术不断提升。国内企业为了获得更大的投资收益,在生产规模和产品质量上不断提升,
9、开发单片机呈必然趋势。我国生产的多功能电子万年历有很多,总体上来说是研究多功能电子万年历为主,商家生产的电子万年历更从质量、价格、实用上考虑不断改变电子万年历的设计,使其更有市场。在科技发达的今天,智能化必将是以后的发展趋势,所以开发活和学习单片机是社会发展的必然需求。在国外:最具有代表性的计时产品就是电子万年历,它是近代世界钟表业界的第三次革命。前两次革命是摆和摆轮游丝的发明,以及石英晶体振荡器的应用,第三次革命就是单片机数码计时技术的应用,使得从原来传统指针计时的方式发展为人们日常更为熟悉的夜光数字显示方式,直观明了,并增加了全自动日期,星期,温度以及农历等显示功能,它更符合消费者的生活需
10、求。因此,电子万年历的出现带来了钟表计时业界跨越性的进步。当前,电子万年历技术已经进入了优化人-家庭-环境的整体关系的阶段,它向着超微型、超高效以及集成电路的微型化方向发展,并为电子万年历上的集中控制提供了基础。目前,市场上出售的万年历品种很多,其中大部分是基于单片机技术设计的电子系统。当今,数字万年历主要还是用于计时、自动报时、定时、日期查询以及自动控制等方面。由于单片机技术以及数字集成电路技术的发展和采用了先进的石英技术,使得如今的数字万年历系统具有体积小、耗电省、计时准确、性能稳定、维护方便、走时准确、携带方便等优点,此外,现在市场上已有现成的数字万年历集成电路芯片出售,而且价格便宜、使
11、用也很方便。2 开发平台本节主要介绍开发平台,兼容单片机C语言软件开发系统Keil uVision3软件和单片机仿真软件Proteus。2.1 KeiluVision3介绍 图2.1Keil uVision3软件Keil uVision3是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部分组合在一起。KeiluVision3工具包为forDo
12、s的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用IDE本身或其它编辑器编辑C或汇编源文件。然后分别由C51及C51编译器编译生成目标文件(.OBJ)。目标文件可由LIB51创建生成库文件,也可以与库文件一起经L51连接定位生成绝对目标文件(.ABS)。ABS文件由OH51转换成标准的Hex文件,以供调试器dScope51或tScope51使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如EPROM中。相比起其他单片机的开发软件,KeiluVision3生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理
13、解。在开发大型软件时更能体现高级语言的优势。编译后能生成.hex文件,能直接为ISIS7Professional仿真软件所使用。2.2单片机仿真软件Proteus 图2.2 Proteus单片机仿真软件在Proteus是英国Labcenter公司开发的电路及点偏激系统设计与仿真软件。它可以实现数字电路,模拟电路及为控制器系统与外设的混合电路系统的电路仿真、软件仿真、 系统协同仿真和PCB设计等功能。它能对各种处理器进行实时仿真、调试与测试的EDA工具,真正实现了再没有目标原型是就可以对系统进行调试测试与验证。Proteus提供了30多个元件库和7000余个元器件。元件涉及电阻、电容、二极管、三
14、极管、变压器、放大器、各种激励源等等。SIS 7 Professional能完成原理图设计的仿真平台,用于电路原理图的设计以及交互式仿真。通过Keil uVision3编译生成的.hex文件能直接用于Proteus所设计的电路图上。3 硬件设计微机处理系统中硬件的选择直接影响系统的功能及稳定性。选择功能适合,少发生偶合的硬件设备,是整个系统设计的关键部分,所以本次设计选择AT89S51进行实验。3.1 AT89S51引脚及功能AT89S51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非
15、易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,AT89S51在众多嵌入式控制应用系统中得到广泛应用。AT89S51采用的是40只引脚的双列直插式封装,如图3.1所示。图3.1 AT89S51引脚图(1) 电源及晶振引脚 Vcc(第40脚):+5V电源引脚;Vss(第20脚):接地引脚;XTAL1、XTAL2(第19、18脚):外接晶振的两个引脚。(2) 控制引脚RST/Vpd(第9脚):复位/备用电源引脚;ALE/PROG(第30脚):地址锁存使能输出/编程脉冲输入;PSEN(第29脚):输出访问片外程序存储器
16、读选通信号;EA/Vpp(第31脚):外部ROM允许访问/编程电源输入。(3) 并行I/O口引脚并行I/O口共有32只引脚,其中:P0.0P0.7(第3932脚)统称为P0口;P1.0P1.7(第1-8脚)统称为P1口;P2.0P2.7(第2128脚)统称为P2口;P3.0P3.7(第1017脚)统称为P3口,作为一般I/O口使用。3.2 AT89S51的内部结构其内部结构包含了作为微型计算机所必需的基本功能部件,如CPU、RAM、ROM、定时/计数器和可编程并行I/O口、可编程串行口等。这些功能部件通常都挂靠在单片机内部总线上,通过内部总线传送数据信息和控制信息。其内部基本结构如图3.2所示
17、。图3.2 硬件系统组成结构框图1.中央处理器(CPU):整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二进制数据或代码,CPU负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。2.数据存储器(RAM):片内有128个8位用户8个据存储单元和128个专用寄存器单元,它们是统一编址的,专用寄存器只能用于存放控制指令数据,用户能访问,而不能用于存放用户数据,所以,用户能使用的RAM只有128个,可存放读写的数据、运算的中间结果或用户定义的字型表,3.程序存储器(ROM):共有4096个8位掩膜ROM,用于存放用户程序、原始数据或表格。4.中断系统:具备较完善的
18、中断功能,有两个外中断、两个定时/计数器中断和一个串行中断,可满足不同的控制要求,并与2级的优先级别选择。5.定时器/计数器:片内有2个16位的可编程定时器/计数器,以实现定时或计数产生中断,用于控制程序转向。6.串行口:内置1个全双工的串行通信口,用于与其它设备间的串行数据传送,该串行口既可以用作异步通信接发器,也可以当同步移位器使用。7.并行输入/输出(I/O)口:共有4组8位并行I/O口(P0、P1、P2、P3),每个口都由1个锁存器和1个驱动器组成。并行I/O口主要是用于实现与外部设备中数据的并行输入/输出,有些I/O口还具有其他功能。8.特殊功能寄存器:共有21个,用于对片内的各功能
19、的部件进行管理、控制、监视。实际上是一些控制寄存器和状态寄存器,是一个具有特殊功能的RAM区。3.2.1 电路设计框图本系统的电路系统框图如图2.1.3所示。AT89S51单片机对DS18B20写入控制字并读取相应的数据,继而控制LCM1602作出对应的显示。键盘控制模块AT89S51主控模块LCD1液晶显示模块 图3.3 电路设计框图3.2.2主要单元电路设计(1) AT89S51单片机主控制模块的设计AT89S51是一个低功耗,高性能CMOS 8位单片机,其具有如下特点:40个引脚,4kBytes Flash片内程序存储器,128Bytes的随机存取数据存储器(RAM),32个外部双向输入
20、/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求。AT89S51单片机为40引脚双列直插芯片,有四个I/O口P0,P1,P2,P3,MCS-51单片机共有4个8位的I/O口(P0、P1、P2、P3),每一条I/O线都能独立地作输出或输入。(2) P0口P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
21、在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。(3) P1口P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 (4) P2口P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于
22、内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 (5) P3口P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。3.2.3 单片机中断典型的8051单片机有5个中断源,可分为两个优先级,实现中断服务嵌套。用户可
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 Proteus 多功能 电子 万年历 设计 实现 本科毕业 论文 31
限制150内