




已阅读5页,还剩48页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于单片机的数字时钟设计与仿真摘 要 随着电子技术的迅速发展,特别是随大规模集成电路出现,给人类生活带来了根本性的改变。由其是单片机技术的应用产品已经走进了千家万户。电子万年历的出现给人们的生活带来的诸多方便。本文首先描述系统硬件工作原理,并附以系统结构框图加以说明,着重介绍了本系统所应用的各硬件接口技术和各个接口模块的功能及工作过程,其次,详细阐述了程序的各个模块和实现过程。本设计以数字集成电路技术为基础,单片机技术为核心。本文编写的主导思想是软硬件相结合,以硬件为基础,来进行各功能模块的编写。本系统以单片机的C语言进行软件设计,增加了程序的可读性和可移植性,为了便于扩展和更改,软件的设计采用模块化结构,使程序设计的逻辑关系更加简洁明了。系统通过点阵式液晶为载体显示数据,所以具有人性化的操作和美观的页面效果。可以显示年月日、星期、温度等关键词 单片机;万年历;DS1302;LCM1602;DS18B20Based on mcu digital clock design and simulation.(college of Information Science and Engineering,Jishou University,Jishou,Hunan)AbstractAlong with the rapid development of electronic technology, especially with large scale integrated circuit appear, give mankind living has brought the fundamental change. By its is the application of single-chip computer technology product has entered innumberable families. Electronic calendar appear to the life of people bring many convenient.This paper firstly describes the system hardware working principle, each accompanied by a diagram of the system structure of the elucidation, introduces this system by the application of the hardware interface technology and the function of each interface module and the working process, and secondly, expounded the program modules and realization process. This design with digital integrated circuit technology as the foundation, microcontroller technology as the core. In this paper the compiling principle is combining software with hardware, based on the preparation of the functional modules.The system takes microcontroller C language software design, increased the readability of our programs and portability, to facilitate the expansion and change, the design of software modular structure, make the program design of logical relationship more concise. System through dot-matrix LCD display data for carrier, so has the humanized operate and beautiful page effect. Can display the time, and lunar dates, week, temperature, solar term, tian gan earthly branches and the day sunrise sunset time, and has alarm and intelligent control household appliances function.Keywords microcontroller; calendar; DS1302;LCM1602;DS18B20目录AbstractII目录III引 言IV第1章系统电路设计21.1系统总体设计思路21.2 设计方案选择21.3 功能介绍31.4 工作原理3第2章 单元电路设计32.1单片机电路设计32.2时钟电路设计62.3 温度传感器电路设计:72.4 实时时钟电路设计:82.4.1 DS1302的工作原理102.4.2 DS1302的寄存器和控制命令:102.4.3 与单片机接口电路原理图:112.4.4 1602字符型LCD简介:112.4.5 1602LCD的指令说明及时序13第3章 程序流程图173.1 中断时钟流程图173.2温度子程序流程图183.3 万年历流程图19第4章 操作与调试254.1 KEIL uVision3简介254.1.1 8051开发工具 254.1.2 uVision3集成开发环境 254.2 Proteus简介264.2.1进入Proteus ISIS274.2.2 工作界面274.3软件调试28结 论29致 谢30参 考 文 献27附录1 仿真电路图28附录2 程序29引 言随着电子技术的不断发展,单片机技术在设计中所体现在出来的优势越来越明显,它不仅是电子信息类专业的一个重要部分,而且在其它类专业工程中也是不可缺少的。广泛地应用于家电、工业过程控制、仪器仪表、智能武器、航空和空间飞行器等领域发展更是迅速,已成为新一代一些电子设备不可缺少的核心部件。目前世界上单片机年产量已达十多亿片,通常是当年微处理器产量的4-5倍以上。用最少的芯片就能实现最强大的功能。可以想见,这是将来电子产品的主流方向,它将无可置疑地一步步取代其它同类产品,其数量之大和应用面之广,是其它任何类型的计算机所无法比拟的。单片机是应工业测控需要而诞生的。它把计算机最基本的功能电路,如CPU、程序存储器、数据存储器、I/O接口、定时、计数器、中断系统等集成到一块芯片上,形成单片形态的计算机。单片机通常以最小系统运行,在家用电器中和常用的智能仪器仪表中常常可以“单片”工作,同时单片机在我们日常生活中也经常见到,如电子表、舞厅里的一些灯光的控制、一些招牌灯光的控制、工厂一些自动控制等。将来只要有自动控制方面的都会离不开单片机的开发和使用,对于现代的自动化控制起着举足轻重的作用。为了顺应形势发展的需要,我们学习了单片机课程,此次用液晶显示万年历和时间设置以及显示测温度的数据对单片机的学习起到了很好的巩固作用,尤其是对C语言程序的设计。 在此次课程设计的编写过程中得到了向老师的大力支持和指导。以及参考了电子设计资料如MSC-51系列单片机原理及实用技术(第二版),单片机原理与应用及C51程序设计(第二版)等。在编写此次毕业设计的过程中由于时间的仓促和本人的水平有限,在设计和制作的过程中难免出现缺点和不足之处,还请各位老师批评和指正。第1章 系统电路设计1.1系统总体设计思路此设计即液晶上显示年、月、日、时、分、秒及星期原理框图如图(1.1),电路以下几个部分组成:键盘、单片机、温度传感器及显示电路。图1.1 单片机实现液晶显示万年历以及温度总框图对于各部分:(1) 为使时钟走时与标准时间一致,校时电路是必不可少的,键盘用来校正液晶上显示的时间。(2) 单片机通过输出各种电脉冲信号来驱动控制各部分正常工作。(3) 温度传感器用来显示当天的确定温度值。(4) 单片机发送的信号经过显示电路通过译码最终在液晶上显示出来。1.2 设计方案选择方案一 可以利用单片机内部的定时器作为时间的计算,再用不同的地址单元记录。这种设计误差较大,因为单片机的读取程序的时候会产生误差,其二程序编写起来也比较复杂。所以不采用此方案。方案二 用C语言编程来控制单片机让它在液晶上显示数据及文字。由于单片机结构简单、控制功能强、可靠性高、体积小、价格低等优点,以及液晶屏幕可以完整的同时显示数据及文字等内容,综合上述方案的选择与比较,选择方案二。主要是由于电器元件的熟悉程度以及市场的供求关系。在方案二中,大部分的电器元件我们较熟悉并且更容易获得。1.3 功能介绍本次设计主要用单片机控制程序让它在液晶上显示年、月、日、时、分、秒及星期,同时用18B20温度传感器来接受外面的信号,让单片机来接受它,且也让它在液晶上显示测的温度。时、分、秒的计数结果经过数据处理可直接送显示器显示。当计时发生误差的时候可以用校时电路进行校正。时计数器计满24小时后自动向日计数器进一,日计数器由平年、闰年的28/30/31对大、小月和二月的判断应与当月相应的日期相一致,当日计数器计满时,向月计数器进位,月计数器计满12月向年计数器进位,当年计数器计满100时所以计数器清零。设计采用的是年、月、日和时、分、秒、星期以及温度同时显示。1.4 工作原理设计的电路主要由四大模块构成:温度传感器电路,单片机控制电路,显示电路以及校正电路。当温度传感器接受到外面的信号,送入单片机,单片机将接受到的信号输出,让它在液晶上显示。同时由单片机控制的万年历以及时间显示,当时间及秒计数计满60时就向分进位,分计数器计满60分后向时计数器进位,小时计数器按“24翻1”规律计数。时、分、秒的计数结果经过数据处理可直接送显示器显示。当计时发生误差的时候可以用校时电路进行校正。时计数器计满24小时后自动向日计数器进一,日计数器由平年、闰年的28/30/31对大、小月和二月的判断应与当月相应的日期相一致,当日计数器计满时,向月计数器进位,月计数器计满12月向年计数器进位,当年计数器计满100时所以计数器清零。设计采用的是年、月、日和时、分、秒、星期显示,所以在单片机通过对数据处理进行同时在液晶上显示。第2章 单元电路设计2.1单片机电路设计AT89C51的简介AT89C51是一种带4K字节FLASH存储器(FPEROMFlash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除1000次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。主要特性如下:与MCS-51 兼容 4K字节可编程FLASH存储器 寿命:1000写/擦循环 数据保留时间:10年 全静态工作:0Hz-24MHz 三级程序存储器锁定 1288位内部RAM 32可编程I/O线 两个16位定时器/计数器 5个中断源 可编程串行通道 低功耗的闲置和掉电模式 片内振荡器和时钟电路AT89C51 提供以下标准功能:4k 字节Flash 闪速存储器,128字节内部RAM,32 个I/O 口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。 AT89C51芯片的管脚、引线与功能AT89C51芯片图如图2.1所示。VCC:供电电压。 GND:接地。 P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P0口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的低八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须接上拉电阻。 P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为低八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。 P3口也可作为AT89C51的一些特殊功能口,如下表所示: 口管脚 备选功能 P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 /INT0(外部中断0) P3.3 /INT1(外部中断1) P3.4 T0(记时器0外部输入) P3.5 T1(记时器1外部输入) P3.6 /WR(外部数据存储器写选通) P3.7 /RD(外部数据存储器读选通) P3口同时为闪烁编程和编程校验接收一些控制信号。 RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。 ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。 /EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。 图2.1 AT89C51芯片图2.2时钟电路设计时钟电路用于产生单片机工作所需要的时钟信号,而时序所研究的是指令执行中各信号之间的相互关系。单片机本身就如一个复杂的同步时序电路,为了保证同步工作方式的实现,电路应在唯一的时钟信号控制下严格地作。(1)时钟信号的产生图2.3 时钟振荡电路单片机内部有一个高增益反相放大器,其输入端为芯片引脚XTAL1,其输出端为引脚XTAL2。而在芯片的外部,XTAL1和XTAL2之间跨接晶体振荡器和微调电容,从而构成一个稳定的自激振荡器。电容器C1和C2的作用是稳定频率和快速起振,电容值的范围在5pF30pF,典型值为30pF。晶振的频率通常选择两种6MHz和12MHz。只要在单片机的XTAL1和XTAL2引脚外接晶体振荡器就构成了自激振荡器并在单片机内部产生时钟脉冲信号。(2)时钟振荡电路如图2.3所示:2.3 温度传感器电路设计:温度传感器的种类众多,在应用与高精度、高可靠性的场合时DALLAS(达拉斯)公司生产的DS18B20温度传感器当仁不让。超小的体积,超低的硬件开消,抗干扰能力强,精度高,附加功能强,使得DS18B20更受欢迎。对于我们普通的电子爱好者来说,DS18B20的优势更是我们学习单片机技术和开发温度相关的小产品的不二选择。了解其工作原理和应用可以拓宽您对单片机开发的思路。 DS18B20的主要特征: u 全数字温度转换及输出。 u 先进的单总线数据通信。 u 最高12位分辨率,精度可达土0.5摄氏度。 u 12位分辨率时的最大工作周期为750毫秒。 u 可选择寄生工作方式。 u 检测温度范围为55C +125C (67F +257F) u 内置EEPROM,限温报警功能。 u 64位光刻ROM,内置产品序列号,方便多机挂接。 u 多样封装形式,适应不同硬件系统。 DS18B20芯片封装结构:DS18B20引脚功能: GND 电压地 DQ 单数据总线 VDD 电源电压 NC 空引脚 DS18B20工作原理及应用:DS18B20的温度检测与数字数据输出全集成于一个芯片之上,从而抗干扰力更强。其一个工作周期可分为两个部分,即温度检测和数据处理。在讲解其工作流程之前我们有必要了解18B20的内部存储器资源。18B20共有三种形态的存储器资源,它们分别是: ROM 只读存储器:用于存放DS18B20ID编码,其前8位是单线系列编码(DS18B20的编码是19H),后面48位是芯片唯一的序列号,最后8位是以上56的位的CRC码(冗余校验)。数据在出产时设置不由用户更改。DS18B20共64位ROM。 RAM 数据暂存器:用于内部计算和数据存取,数据在掉电后丢失,DS18B20共9个字节RAM,每个字节为8位。第1、2个字节是温度转换后的数据值信息,第3、4个字节是用户EEPROM(常用于温度报警值储存)的镜像。在上电复位时其值将被刷新。第5个字节则是用户第3个EEPROM的镜像。第6、7、8个字节为计数寄存器,是为了让用户得到更高的温度分辨率而设计的,同样也是内部温度转换、计算的暂存单元。第9个字节为前8个字节的CRC码。EEPROM 非易失性记忆体,用于存放长期需要保存的数据,上下限温度报警值和校验数据,DS18B20共3位EEPROM,并在RAM都存在镜像,以方便用户操作。DS18B20芯片与单片机的接口: 如图所示,DS18B20只需要接到单片机的一个I/O口上,由于单总线为开漏所以需要外接一个4.7K的上拉电阻。如要采用寄生工作方式,只要将VDD电源引脚与单总线并联即可。但在程序设计中,寄生工作方式将会对总线的状态有一些特殊的要求。 2.4 实时时钟电路设计:DS1302是美国DALLAS公司推出的一种高性能、低功耗的实时时钟芯片,附加31字节静态RAM,采用SPI三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号和RAM数据。实时时钟可提供秒、分、时、日、星期、月和年,一个月小与31天时可以自动调整,且具有闰年补偿功能。工作电压宽达2.55.5V。采用双电源供电(主电源和备用电源),可设置备用电源充电方式,提供了对后背电源进行涓细电流充电的能力。DS1302的外部引脚分配如图1所示及内部结构如图2所示。DS1302用于数据记录,特别是对某些具有特殊意义的数据点的记录上,能实现数据与出现该数据的时间同时记录,因此广泛应用于测量系统中。图1 DS1302的外部引脚分配 图2 DS1302的内部结构 各引脚的功能为: Vcc1:主电源;Vcc2:备份电源。当Vcc2Vcc1+0.2V时,由Vcc2向DS1302供电,当Vcc2 Vcc1时,由Vcc1向DS1302供电。 SCLK:串行时钟,输入,控制数据的输入与输出; I/O:三线接口时的双向数据线; CE:输入信号,在读、写数据期间,必须为高。该引脚有两个功能:第一,CE开始控制字访问移位寄存器的控制逻辑;其次,CE提供结束单字节或多字节数据传输的方法。 2.4.1 DS1302的工作原理 DS1302工作时为了对任何数据传送进行初始化,需要将复位脚(RST)置为高电平且将8位地址和命令信息装入移位寄存器。数据在时钟(SCLK)的上升沿串行输入,前8位指定访问地址,命令字装入移位寄存器后,在之后的时钟周期,读操作时输出数据,写操作时输出数据。时钟脉冲的个数在单字节方式下为8+8(8位地址+8位数据),在多字节方式下为8加最多可达248的数据。2.4.2 DS1302的寄存器和控制命令: DS1302有关日历、时间的寄存器共有12个,其中有7个寄存器(读时81h8Dh,写时80h8Ch),存放的数据格式为BCD码形式,如图3所示。图 3 DS1302有关日历、时间的寄存器DS1302内部的RAM分为两类,一类是单个RAM单元,共31个,每个单元为一个8位的字节,其命令控制字为COHFDH,其中奇数为读操作,偶数为写操作;再一类为突发方式下的RAM,此方式下可一次性读写所有的RAM的31个字节,命令控制字为FEH(写)、FFH(读)。2.4.3 与单片机接口电路原理图: 电路原理图如图,DS1302与单片机的连接也仅需要3条线:CE引脚、SCLK串行时钟引脚、I/O串行数据引脚,Vcc2为备用电源,外接32.768kHz晶振,为芯片提供计时脉冲。2.5 显示电路设计 液晶显示原理液晶显示的原理是利用液晶的物理特性,通过电压对其显示区域进行控制,有电就有显示,这样即可以显示出图形。液晶显示器具有厚度薄、适用于大规模集成电路直接驱动、易于实现全彩色显示的特点,目前已经被广泛应用在便携式电脑、数字摄像机、PDA移动通信工具等众多领域。液晶显示的分类方法有很多种,通常可按其显示方式分为段式、字符式、点阵式等。除了黑白显示外,液晶显示器还有多灰度有彩色显示等。如果根据驱动方式来分,可以分为静态驱动(Static)、单纯矩阵驱动(Simple Matrix)和主动矩。阵驱动(Active Matrix)三种12.4.4 1602字符型LCD简介:字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式LCD,目前常用16*1,16*2,20*2和40*2行等的模块。下面以长沙太阳人电子有限公司的1602字符型液晶显示器为例,介绍其用法。一般1602字符型液晶显示器实物如图10-53:1602LCD主要技术参数: 显示容量:162个字符 芯片工作电压:4.55.5V 工作电流:2.0mA(5.0V) 模块最佳工作电压:5.0V 字符尺寸:2.954.35(WH)mm引脚功能说明:1602LCD采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如表10-13所示:编号符号引脚说明编号符号引脚说明1VSS电源地9D2数据2VDD电源正极10D3数据3VL液晶显示偏压11D4数据4RS数据/命令选择12D5数据5R/W读/写选择13D6数据6E使能信号14D7数据7D0数据15BLA背光源正极8D1数据16BLK背光源负极第1脚:VSS为地电源。第2脚:VDD接5V正电源。第3脚:VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。第5脚:R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。第714脚:D0D7为8位双向数据线。第15脚:背光源正极。第16脚:背光源负极。2.4.5 1602LCD的指令说明及时序1602液晶模块内部的控制器共有11条控制指令,如表所示:序号指令RSR/WD7D6D5D4D3D2D1D01清显示00000000012光标返回000000001*3置输入模式00000001I/DS4显示开/关控制0000001DCB5光标或字符移位000001S/CR/L*6置功能00001DLNF*7置字符发生存贮器地址0001字符发生存贮器地址8置数据存贮器地址001显示数据存贮器地址9读忙标志或地址01BF计数器地址10写数到CGRAM或DDRAM)10要写的数据内容11从CGRAM或DDRAM读数11读出的数据内容1602液晶模块的读写操作、屏幕和光标的操作都是通过指令编程来实现的。(说明:1为高电平、0为低电平)指令1:清显示,指令码01H,光标复位到地址00H位置。指令2:光标复位,光标返回到地址00H。指令3:光标和显示模式设置 I/D:光标移动方向,高电平右移,低电平左移 S:屏幕上所有文字是否左移或者右移。高电平表示有效,低电平则无效。指令4:显示开关控制。 D:控制整体显示的开与关,高电平表示开显示,低电平表示关显示 C:控制光标的开与关,高电平表示有光标,低电平表示无光标 B:控制光标是否闪烁,高电平闪烁,低电平不闪烁。指令5:光标或显示移位 S/C:高电平时移动显示的文字,低电平时移动光标。指令6:功能设置命令 DL:高电平时为4位总线,低电平时为8位总线 N:低电平时为单行显示,高电平时双行显示 F: 低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符。指令7:字符发生器RAM地址设置。指令8:DDRAM地址设置。指令9:读忙信号和光标地址 BF:为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。指令10:写数据。指令11:读数据。与HD44780相兼容的芯片时序表如下:读状态输入RS=L,R/W=H,E=H输出D0D7=状态字写指令输入RS=L,R/W=L,D0D7=指令码,E=高脉冲输出无读数据输入RS=H,R/W=H,E=H输出D0D7=数据写数据输入RS=H,R/W=L,D0D7=数据,E=高脉冲输出无单片机与LCD的接口电路如图2.5所示。图2.5 接口电路第3章 程序流程图3.1 中断时钟流程图中断服务程序流程图如图3.1所示。流程图分析:由中断查询当有中断请求时,及进行现场保护,保护断点,将定时器赋初值,且开定时器便于计数,且赋值50000,当中断进行20次刚好一秒,当秒计数60时便向分进位,当分计数60时,向时进位,当时到24时,清零,及恢复现场。 图3.1中断流程图3.2温度子程序流程图温度显示流程图如图3.2所示。流程图分析:开始进入初始化DS18B20,就是通过主机拉低单线产生复位脉冲然后释放该线,如果有应答脉冲,及发起ROM命令当成功的执行操作命令后,就使用内存操作命令,即温度转换等,当转换完后,又初始化DS18B20是否有应答脉冲,若有,就发起读时隙命令,既同时读出第1,2个字节,既为温度的数据。图3.2 温度显示流程图3.3 万年历流程图万年历流程如图3.3所示。流程图分析:开始既当日加一天,同时星期也就相应的加1,看星期是否加到7,若加到了7,就返回到1,若没有就返回到时钟状态,当日加到相应的最大数时,月分就相应的加1,看月份是否加到了13, 若没有到13,就一直等待,若到了13就返回1,且年份就加1,当年份到2099时就清到2005年,若没有,就一直等待,直到2099为止。图3.3 万年历流程图第4章 操作与调试4.1 KEIL uVision3简介4.1.1 8051开发工具 KEIL C51标准C编译器为8051微控制器的软件开发提供了C语言环境,同时保留了汇编代码高效,快速的特点。C51编译器的功能不断增强,使你可以更加贴近CPU本身,及其它的衍生产品。C51已被完全集成到uVision3的集成开发环境中,这个集成开发环境包含:编译器,汇编器,实时操作系统,项目管理器,调试器。uVision3 IDE可为它们提供单一而灵活的开发环境。 C51 V7版本是目前最高效、灵活的8051开发平台。它可以支持所有8051的衍生产品,也可以支持所有兼容的仿真器,同时支持其它第三方开发工具。因此,C51 V7版本无疑是8051开发用户的最佳选择。 4.1.2 uVision3集成开发环境 (1)、项目管理 工程(project)是由源文件、开发工具选项以及编程说明三部分组成的。 一个单一的uVision3工程能够产生一个或多个目标程序。产生目标程序的源文件构成“组”。开发工具选项可以对应目标,组或单个文件。 uVision3包含一个器件数据库(device database),可以自动设置汇编器、编译器、连接定位器及调试器选项,来满足用户充分利用特定 微控制器的要求。此数据库包含:片上存储器和外围设备的信息,扩展数据指针(extra data pointer)或者加速器(math accelerator)的特 性。 uVision3可以为片外存储器产生必要的连接选项:确定起始地址和规模。 (2)、集成功能: uVision3的强大功能有助于用户按期完工。 1.集成源极浏览器利用符号数据库使用户可以快速浏览源文件。用详细的符号信息来优化用户变数存储器。 2.文件寻找功能:在特定文件中执行全局文件搜索。 3.工具菜单:允许在V3集成开发环境下启动用户功能。 4.可配置SVCS接口:提供对版本控制系统的入口。 5.PCLINT接口:对应用程序代码进行深层语法分析。 6.Infineon的EasyCase接口:集成块集代码产生。 7.Infineon的DAVE功能:协助用户的CPU和外部程序。DAVE工程可被直接输入uVision3。4.2 Proteus简介Proteus ISIS是英国Labcenter公司开发的电路分析与实物仿真软件。它运行于Windows操作系统上,可以仿真、分析(SPICE)各种模拟器件和集成电路,该软件的特点是:实现了单片机仿真和SPICE电路仿真相结合。具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS232动态仿真、I2C调试器、SPI调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。支持主流单片机系统的仿真。目前支持的单片机类型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各种外围芯片。提供软件调试功能。在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须具有这些功能;同时支持第三方的软件编译和调试环境,如Keil C51 uVision3等软件。具有强大的原理图绘制功能。总之,该软件是一款集单片机和SPICE分析于一身的仿真软件,功能极其强大。本章介绍Proteus ISIS软件的工作环境和一些基本操作。4.2.1进入Proteus ISIS双击桌面上的ISIS 6 Professional图标或者单击屏幕左下方的“开始”“程序”“Proteus 6 Professional” “ISIS 6 Professional”,出现如图4.1所示屏幕,表明进入Proteus ISIS集成环境。Proteus ISIS集成环境4.2.2 工作界面Proteus ISIS的工作界面是一种标准的Windows界面,如图4.2所示。包括:标题栏、主菜单、标准工具栏、绘图工具栏、状态栏、对象选择按钮、预览对象方位控制按钮、仿真进程控制按钮、预览窗口、对象选择器窗口、图形编辑窗口。图4.2 Proteus ISIS的工作界面4.3软件调试软件调试的任务是利用ISIS开发工具进行仿真调试,发现和纠正程序错误,同时也能发现仿真结果故障。 试运行后,检查是否能开始正确显示时间、温度。比如说,时钟显示不稳定,易乱跳,显示乱码,是由于单片机的运行与程序的执行不能同步进行造成的,应该尽量减少跳转指令的使用。修改万年历显示缓冲区内容为2012年5月18日,运行进位键,检验能否正确进位,以及试调时间看能否正确的进位,以及调温度是否能显示。结 论从这次的论文设计中,让我们更加了解和掌握单片机结构以及液晶内部的结构,提高我们编程的能力,理解软件对硬件的控制以及硬件对软件的制约。本次设计的重点在于定时中断的合理使用,各相互独立的程序通过有机的组合,来完成所需功能则是本次设计的精妙之所在,也正是因为此,深刻领悟到“实践出真知”这句俗语。其实有好多的知识需要在一步一步的实际动手当中慢慢地体会,慢慢地学习。不能只是想当然怎样就会怎样,还要靠自己亲手去验证它才行在设计的过程中还是会学到不少东西,但是经过这次实验使我对它们有了一定的了解。经过这一次论文设计我们认识到实际动手才是一门能够提高个人能力的课程,同时也帮助了我们,怎么样把书本上理论的知识应用到实践中去。通过这次的锻炼,我们不仅动手能力得到了加强,更重要的是学到了很多新的专业技能知识,经验也更加丰富了。我觉得我还有很多不足的地方,如:基本知识掌握不牢固、动手能力不强、知识面不够宽。我争取在以后的学习当中弥补它,不断的完善自己。虽然期间我们遇到了不少的难题,但是经过努力,再大的困难也被我们给一一的解决了。本设计还有很多做的不够好的地方,还望老师批评指正。致 谢大学阶段的学习生活即将结束,这篇论文作为我在校期间学习的最后一份答卷,敬礼给各位老师。在大学这几年的学习和生活,我不仅学到了丰富的专业知识,更学到了老师认真工作、爱岗敬业、为人师表的优良品质。在此,谨向老师表示深深的敬意和谢意!尤其感谢我的指导老师,他在毕业设计过程中给予我极大的关心和帮助。从硬件制作、调试以及论文的完成都投入了他大量的心血。在课余时间还给我们讲解有关硬件的重要知识,使我们在不仅掌握了自己的所设计东西的同时,还对其它的知识有了更深的了解。老师对待学生有如此的态度,令人敬佩。同时也感谢在毕业设计过程中给予我精神上的鼓励和支持的同学,在我遇到困难时尽其所能地为我排忧解难。感谢学校提供的优越实验环境,使我能全身心的投入到我的设计中。当查阅大量参考文献后设计原理图时,感谢指导老师向老师给我的仔细检查和改正。在向老师的帮助下对系统的方案进行了论证,并对本系统不足进行了修改。在论文修改过程中,衷心的感谢指导老师尽心尽力的对论文进行了仔细的修改,无论是在论文格式还是论文内容上,都要求的较为严格,使我在设计过程中学到了很多东西。参 考 文 献1 余锡存,曹国华.单片机原理及接口技术M.西安电子科技大学出版社,2004年2 张志良, 主编 :单片机原理及控制技术(第2版)北京:机械工业出版社,20053 余永权, MCS-51系列单片机实用接口技术M.北京:北京航空航天大学出版,19934 余西存, 曹国华.单片机原理及接口技术M.西安:西安电子科技大学出版,2000年 5 求是科技,单片机典型模块设计实例导航M.北京:人民邮电出版社,2004年5月6 张振荣, 晋明武.MSC-51系列单片机原理及实用技术. 人民邮电出版社,2000年7 吉雷,主编 :Protel99从入门到精通.西安:西安电子科技大学出版社,2004 8徐爱钧,彭秀华Keil Cx51 V7.0 单片机高级语言编程与uVision2应用实践北京:电子工业出版社200469 何立民MCS-51系列单片机应用系列设计M北京:航空航天大学出版社10 G.Y. Xu,Electronic design,2000年 11 Microcontroller handbook. Inter Corp.198612 MCS-51 Family of Single Chip Microcomputers Users Manual. Inter Corp. 1981 附录1 仿真电路图1、完整电路图 2、键盘电路 3、温度传感器电路附录2 程序#include#includeDS18B20_3.H#define uint unsigned int#define uchar unsigned charuchar a,miao,shi,fen,ri,yue,nian,week,flag,key1n,temp;/flag用于读取头文件中的温度值,和显示温度值#define yh 0x80 /LCD第一行的初始位置,因为LCD1602字符地址首位D7恒定为1(100000000=80)#define er 0x80+0x40 /LCD第二行初始位置(因为第二行第一个字符位置地址是0x40)/液晶屏的与C51之间的引脚连接定义(显示数据线接C5
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 人生小满胜万全 教学设计-2023-2024学年高中下学期心理健康主题班会
- 专利实施许可合同常用范文6篇
- 2025合同管理的关键注意事项
- 2025年个人私人车位租赁合同
- 第六课 温故知新说课稿-2025-2026学年高中心理健康北师大版2015高中二年级全一册-北师大版2015
- 大同事业单位笔试真题2025
- 2025混凝土购销合同
- 2025企业停薪留职员工合同
- 人教部编版道德与法治九年级上册5.2凝聚价值追求说课稿
- 油墨厂咬底控制制度
- 国际伤口治疗师汇报
- 《电工基础(第2版)》中职全套教学课件
- 河道清淤与水生态恢复方案
- 2024-2025大学英语考试六级汉译英中英对照
- 铂类化疗药物配置
- 2024-2025学年广东省深圳实验学校高中园高一(上)第一次段考数学试卷(含答案)
- 2024-2025学年天津市和平区双菱中学七年级(上)第一次月考数学试卷
- ISO9001-2015质量管理体系内审培训课件
- 《无线电失效程序》课件
- 新生儿注射用药并发症防治及管理课件
- 泸州市专业技术人员年度考核登记表
评论
0/150
提交评论