LCD电子万年历设计.doc_第1页
LCD电子万年历设计.doc_第2页
LCD电子万年历设计.doc_第3页
LCD电子万年历设计.doc_第4页
LCD电子万年历设计.doc_第5页
已阅读5页,还剩74页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

沈阳航空工业学院北方科技学院毕业设计(论文)1 任务和目标1.1 设计的内容和要求电子万年历具有读取方便、显示直观、功能多样、电路简洁、成本低廉等诸多优点,符合电子仪器仪表的发展趋势,具有广阔的市场前景。本课题研究的目的就是设计出一种基于单片机的LCD电子万年历。功能要求:(1) 显示公历年、月、日、星期、小时、分钟和秒;(2) 可随时可以调校年、月、日或时、分、秒;(3) 能显示农历时间,并能体现是否是闰年;(4) 具有时间提醒功能;(5) 附带秒表功能;(6) 可动态完整显示年份,实现真正的万年历;(7) 能够显示温度。1.2 设计的目的、意义在当代繁忙的工作与生活中,时间与每一个人都有非常密切的关系,每个人都受到时间的影响。时间对于每个人来说都很重要,为了更好地利用时间,就必须对时间有一个度量,因此产生了电子万年历。阴历对于农业的耕作也很重要,本设计以此为出发点,集年、月、日、星期、时间、阴历、准点闹铃和温度显示各种功能为一体,根据AT89S52单片机固有的机器周期和强大的可编程和处理能力,同时利用温度传感器采集温度,从而实现各种功能。万年历是采用数字电路实现对时、分、秒等信息进行数字显示的计时装置。广泛用于个人、家庭,车站,码头办公室等公共场所,成为人们日常生活中不可少的必需品,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表, 钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,但是所有这些,都是以钟表数字化为基础的。因此,研究万年历及扩大其应用,有着非常现实的意义。1.3 国内外现状、发展随着电子技术的迅速发展,特别是随大规模集成电路出现,给人类生活带来了根本性的改变。尤其是单片机技术的应用产品已经走进了千家万户。电子万年历的出现给人们的生活带来的诸多方便。市场上有许多电子万年历的专用芯片,如:LM8363、LM8365等,但它们功能单一,电路连接复杂,不便于调试制作。因此本系统采用了以广泛使用的单片机AT89S52技术为核心,直接采用单片机定时计数器,配合AD590。软硬件结合,使硬件部分大为简化,提高了系统稳定性,并采用LCD显示电路、键盘电路,使人机交互简便易行,此外结合音乐闹铃电路,本方案设计出的数字钟可以显示时间、设置闹铃功能。LCD的应用很广泛,简单如手表上的液晶显示屏,仪表仪器上的液晶显示器或者是电脑笔记本上的液晶显示器,都使用了LCD。在一般的办公设备上也很常见,如传真机,复印机,以及一些娱乐器材玩具等也常常见到LCD的足迹。字符型液晶显示模块是一种专门用于显示字母,数字,符号等的点阵式液晶显示模块。在显示器件上的设计,它是由若干个57或511等点阵符位组成。每一个点阵字符位都可以显示一个字符。点阵字符位之间有一空点距的间隔起到了字符间距和行距的作用。目前市面上常用的有16字1行,16字2行,20字2行和40字2行等的字符模块组。这些LCD虽然显示字数各不相同,但是都具有相同的输入输出界面。本次设计使用OCMJ4X8C_3型液晶显示屏。792 总体方案设计2.1 系统基本方案选择和论证2.1.1 单片机芯片的选择方案和论证方案一: 采用89C51芯片作为硬件核心,89C51是一种带4K字节闪烁可编程可擦除只读存储器,采用Flash ROM,内部具有4KB ROM 存储空间,能于3V的超低压工作,而且与MCS-51系列单片机完全兼容,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,89C51是一种高效微控制器,51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案但是运用于电路设计中时由于不具备在线编程(ISP)技术,当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,对芯片的多次拔插会对芯片造成一定的损坏。方案二: 采用AT89S52, AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8KB在系统可编程Flash 存储器。使用Atmel 公司高密度非易失性存储器技术制造,与工业89C51 产品指令和引脚完全兼容。片内ROM全都采用Flash ROM;亦适于常规编程器。能以3V的超低压工作,该芯片内部存储器为8KB ROM 存储空间,同样具有89C51的功能,且具有在线编程可擦除技术,当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,不需要对芯片多次拔插,所以不会对芯片造成损坏。使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。经过综合比较最终选择方案2,即选择AT89S52作为主控制器。2.1.2 显示模块的选择方案和论证方案一:系统使用OCMJ4X8C_3型液晶显示屏(奥可拉中文集成模块)。此模块可以显示字母、数字符号、中文字型及图形,具有绘图及文字画面混合显示功能。提供三种控制接口,分别是8位微处理器接口,4位微处理器接口及串行接口(OCMJ4X16A/B无串行接口)。所有的功能,包含显示RAM,字型产生器,都包含在一个芯片里面,只要一个最小的微处理系统,就可以方便操作模块。方案二:系统采用LED显示。LED应用可分为两大类:一是LED单管应用,包括背光源LED,红外线LED等;另外就是LED显示屏,目前,中国在LED基础材料制造方面与国际还存在着一定的差距,但就LED显示屏而言,中国的设计和生产技术水平基本与国际同步。LED显示屏是由发光二极管排列组成的显示器件。它采用低电压扫描驱动,具有:耗电少、使用寿命长、成本低、亮度高、故障少、视角大、可视距离远等特点。采用LED数码管动态扫描.价格上比较经济实惠,但不能显示文字,性价比不是很高,操作起来比较液晶显示来说略显繁琐,所以也不用此种作为显示.经过综合比较最终选择方案1,即选择LCD液晶显示屏。2.1.3 时钟芯片的选择方案和论证方案一:采用单片机定时。单片机集成度高、功能强、可靠性高、体积小、功耗低、使用方便、价格低廉等一系列优点,单片机的应用领域已从面向工业控制、通讯、交通、智能仪表等迅速发展到家用消费产品、办公自动化、汽车电子、PC机外围以及网络通讯等广大领域。按照内部数据通道的宽度,单片机可分为4位、8位、16位及32位等。单片机的中央处理器(CPU)和通用微处理器基本相同,只是增设了“面向控制”的处理功能。例如:位处理、查表、多种地址访问方式、多种跳转、乘除法运算、状态监测、中断处理等,增强了实时性。单片机有两种基本结构形式:一种是在通用微型计算机中广泛采用的,将程序存储器和数据存储器合用一个存储器空间的结构,称为普林斯顿(Princeton)结构。另一种是将程序存储器和数据存储器截然分开,分别寻址的结构,一般需要较大的程序存储器,目前的单片机以采用程序存储器和数据存储器截然分开的结构为多。直接采用单片机定时计数器提供秒信号,计数的脉冲由外部提供,定时的脉冲由外部晶振提供,定时加1的周期为一个机器周期;定时时间与初值和晶振频率有关。使用程序实现年、月、日、星期、时、分、秒计数。采用此种方案减少芯片的使用,节约成本,且简单易行。方案二:采用DS1302时钟芯片定时。DS1302 是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V5.5V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个318的用于临时性存放数据的RAM寄存器。并且时钟芯片成本高,略显繁琐。故不再额外用时钟芯片实现时钟。经过综合比较最终选择方案1,即直接采用单片机定时计数器。2.1.4 温度传感器的选择方案和论证方案一:采用热敏电阻作为温度传感器。热敏电阻是开发早、种类多、发展较成熟的敏感元器件。热敏电阻由半导体陶瓷材料组成,利用的原理是温度引起电阻变化。热敏电阻的主要特点是:灵敏度较高,其电阻温度系数要比金属大10100倍以上;工作温度范围宽,常温器件适用于-55315,高温器件适用温度高于315(目前最高可达到2000)低温器件适用于-27355;体积小,能够测量其他温度计无法测量的空隙、腔体及生物体内血管的温度;使用方便,电阻值可在0.1100k间任意选择;易加工成复杂的形状,可大批量生产;稳定性好、过载能力强。由于半导体热敏电阻有独特的性能,所以在应用方面它不仅可以作为测量元件(如测量温度、流量、液位等),还可以作为控制元件(如热敏开关、限流器)和电路补偿元件。热敏电阻广泛用于家用电器、电力工业、通讯、军事科学、宇航等各个领域,发展前景极其广阔。使用热敏电阻作为传感器,用热敏电阻与一个相应阻值电阻相串联分压,利用热敏电阻阻值随温度变化而变化的特性,采集这两个电阻变化的分压值,并进行A/D转换。此设计方案需用A/D转换电路,增加硬件成本而且热敏电阻的感温特性曲线并不是严格线性的,会产生较大的测量误差。方案二:采用AD590作为温度传感器。集成温度传感器具有线性好、精度适中、灵敏度高、体积小、使用方便等优点,得到广泛应用。集成温度传感器的输出形式分为电压输出和电流输出两种。电压输出型的灵敏度一般为10mV/K,温度0时输出为0,温度25时输出2.982V。AD590测量热力学温度、摄氏温度、两点温度差、多点最低温度、多点平均温度的具体电路,广泛应用于不同的温度控制场合。由于AD590精度高、价格低、不需辅助电源、线性好,常用于测温和热电偶的冷端补偿。电流输出型的灵敏度一般为1mA/K。经过综合比较最终选择方案2,即选择温度传感器AD590。2.2 电路设计最终方案确定综上各方案所述, 最终选择单片机AT89S52作为主控制器;选择OCMJ4X8C_3型液晶显示屏作为显示模块,此模块可以显示字母、数字符号、中文字型及图形,具有绘图及文字画面混合显示功能;选择直接采用单片机定时计数器实现定时功能,直接采用单片机定时计数器提供秒信号,计数的脉冲由外部提供,定时时是由外部晶振提供,定时时间与初值和晶振有关。使用程序实现年、月、日、星期、时、分、秒计数。采用此种方案减少芯片的使用,节约成本,且简单易行;选择温度传感器AD590,AD590具有线性好、精度适中、灵敏度高、体积小、使用方便等优点,得到广泛应用,且具有测量精度高、测量范围广等优点。3 系统硬件设计3.1 硬件单元模块设计本电路设计采用AT89S52单片机作为主控制器。大致可分为4个模块:LCD显示模块、键盘控制模块、温度采集模块、铃声选择模块。采用点阵式LCD液晶显示屏为载体显示数据;单片机系统中,晶振频率为12MHz。对于时间的设置通过键盘控制来实现调时的功能;温度采集通过传感器AD590来实现;铃声选择通过直流电压供电的蜂鸣器来实现。电路设计整体框图如图3.1所示:键盘控制模块LCD液晶显示模块AT89S52主控制模块 铃声选择模块温度采集模块 图3.1 电路设计整体框图3.2 各单元模块功能分析及模块电路设计3.2.1 单元主控制模块设计主控制模块采用AT89S52单片机。AT89S52为40引脚双列直插芯片,有四个I/O口P0、P1、P2和P3,每一条I/O线都能独立地作输出或输入。AT89S52是一种低功耗、高性能CMOS工业、8位微控制器,具有8K 在系统可编程Flash存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业89C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。使得AT89S52为众多嵌入式控制应用系统提供灵活、有效的解决方案。定时器/计数器实质上就是一个加1计数器,其控制电路受软件控制、切换。当定时器/计数器为定时工作方式时,计数器的加1信号由振荡器的12分频信号产生,即每过一个机器周期,计数器加1,直至计满溢出为止。显然,定时器的定时时间与系统的振荡频率有关。因一个机器周期等于12个振荡周期,所以计数频率fcount=1/12osc。如果晶振为12MHz,则计数周期为:T=1/(12106)Hz1/12=1s 这是最短的定时周期。若要延长定时时间,则需要改变定时器的初值,并要适当选择定时器的长度(如8位、13位、16位等)。 当定时器/计数器为计数工作方式时,通过引脚T0和T1对外部信号计数,外部脉冲的下降沿将触发计数。计数器在每个机器周期的S5P2期间采样引脚输入电平。若一个机器周期采样值为1,下一个机器周期采样值为0,则计数器加1。此后的机器周期S3P1期间,新的计数值装入计数器。所以检测一个由1至0的跳变需要两个机器周期,故外部事年的最高计数频率为振荡频率的1/24。 当CPU用软件给定时器设置了某种工作方式之后,定时器就会按设定的工作方式独立运行,不再占用CPU的操作时间,除非定时器计满溢出,才可能中断CPU当前操作。CPU也可以重新设置定时器工作方式,以改变定时器的操作。由此可见,定时器是单片机中效率高而且工作灵活的部件。 综上所述,已知定时器/计数器是一种可编程部件,所以在定时器/计数器开始工作之前,CPU必须将一些命令(称为控制字)写入定时/计数器。将控制字写入定时/计数器的过程叫定时器/计数器初始化。在初始化过程中,要将工作方式控制字写入方式寄存器,工作状态字(或相关位)写入控制寄存器,赋定时/计数初值。定时器/计数器T0和T1有2个控制寄存器TMOD和TCON,它们分别用来设置各个定时器/计数器的工作方式,选择定时或计数功能,控制启动运行,以及作为运行状态的标志等。其中,TCON寄存器中另有4位用于中断系统。 单片机的最小系统如下图所示,18引脚和19引脚接时钟电路,XTAL1接外部晶振和微调电容的一端,在片内它是振荡器倒相放大器的输入,XTAL2接外部晶振和微调电容的另一端,在片内它是振荡器倒相放大器的输出。第9引脚为复位输入端,接上电容,电阻及开关后够上电复位电路,20引脚为接地端,40引脚为电源端。主控制系统如图3.2所示: 图3.2 主控制系统3.2.2 显示模块设计系统使用OCMJ4X8C_3型液晶显示屏(奥可拉中文集成模块)。此模块可以显示字母、数字符号、中文字型及图形,具有绘图及文字画面混合显示功能。提供三种控制接口,分别是8位微处理器接口,4位微处理器接口及串行接口(OCMJ4X16A/B无串行接口)。所有的功能,包含显示RAM,字型产生器,都包含在一个芯片里面,只要一个最小的微处理系统,就可以方便操作模块。内置2M-位中文字型ROM(CGROM)总共提供8192个中文字型(1616点阵),16K位半宽字型ROM(HCGROM)总共提供126个符号字型(168点阵),6416位字型产RAM(CGRAM),另外绘图显示画面提供一个64256点的绘图区域(GDRAM),可以和文字画面混和显示。提供多功能指令:画面清除(Display clear)、光标归位(Return home)、显示打开/关闭(Display on/off)、光标显示/隐藏(Cursor on/off)、显示字符闪烁(Display character blink)、光标移位(Cursor shift)、显示移位(Display shift)、垂直画面卷动(Vertical line scroll)、反白显示(By-line reverse display)、待命模式(Stand by mode)。OCMJ4X8C_3的引脚说明如下表所示:引脚名称方向说明1VSS_GND(0)V2VDD_Supply Voltage For Logic (+5V) 3NC_Supply Voltage For LCD (悬空)4RS(CS)IH: Data L: Instruction Code5R/W(STD)IH: Read L: Write6E(SCLK)IEnable Signal, 高电平有效7DB0I/O数据08DB1I/O数据19DB2I/O数据210DB3I/O数据311DB4I/O数据412DB5I/O数据513DB6I/O数据614DB7I/O数据715PSBIH: Parallel Mode L: Serial Mode 16NC_空脚17/RSTIReset Signal, 低电平有效采用12864点阵式LCD液晶显示屏为载体显示数据,液晶显示屏的显示功能强大,可显示大量文字、图形,显示多样、清晰可见, 对于显示文字比较适合,具有人性化的操作和美观的页面效果。实验步骤为:系统各跳线器处在初始设置状态,JT2B 跳线器的两只短路帽置位上端;用导线对应连接液晶显示模块的RS、R/W、E、PSB、RST 引脚到CPU 模块的P10P14。将LCD D0D7引脚接到单片机的P0口上。启动PC机,通过A/D转换将模拟量转化为数字量将显示字符和汉字及图形显示在LCD上。液晶显示电路如图3.3所示:图3.3 液晶显示电路3.2.3 键盘控制模块设计键盘和八段显示器可以直接使用单片机89C51的并行口,或者用74LS273和74LS244、并行接口芯片8255或多功能接口芯片8155与微型计算机接口。8255是可编程的并行输入/输出接口芯片,通用性强且使用灵活。8255共有三个八位口,其中A口和B口是单纯的数据口,供数据I/O口使用。C口可分为两个4位端口(C口的上半部分和下半部),不仅可以作数据I/O口使用,还能用作控制线,配合A口和B口使用。8255与单片机系统连接方式简单,工作方式由程序设定。8255内部有4个寄存器:分别为寄存器A、B、C和控制寄存器。A、B、C寄存器的数据就是引脚PA7PA0、PB7PB0、PC7PC0上输入或输出的数据。而控制寄存器的数据则表明PA、PB、PC的工作方式。通过CS、A0、A1、RD和WR对4个寄存器进行操作。1CS为低电平时选通8255;2A1、A0为地址选通;3RD和WR为读、写信号:RD为低、WR为高时为读方式,RD为高、WR为低时为写方式。4D0D7为数据口。向控制寄存器写入不同的数据可以使8255工作在三种不同的方式下。这里只介绍应用最多的方式0。方式0下8255的PA、PB及PC口上半部分(PC7PC4)和下半部分(PC3PC0)中任何一个端口都可以设定为输入或输出,PC口还可以进行位操作。用8位数据线对应连接8255模块的JD3C(PA口)到8279模块的JD3E,用导线连接8255模块的CS_8255到地。系统各跳线器处在初始设置状态,S11E 和S12E 红开关全部打到下方(OFF)。将8255的D0D7引脚接到单片机的P0口,P0口作为数据线使用。采用8255的A口,A口为输入,C口为输出。方式选择控制字格式如下图3.4所示,因此按上述方法,8255的控制字为:90H。键盘电路如图3.5和图3.6所示: 图3.4 方式选择控制字格式图3.5 键盘电路 图3.6 8255电路3.2.4 温度采集模块设计系统使用集成电路温度传感器AD590作为测温器,AD590是AD公司生产的一种精度和线性度较好的双端集成温度传感器,其输出电流与绝对温度有关。AD590将温度变化量转换成电压值变化量,经过OP07一级跟随后输入到电压放大电路,放大后的信号输入到A/D转换器将模拟信号转换成数字信号,利用CPU 采集并存储采集到的数据。将温度传感器输出的小信号跟随放大45倍左右后,送至8位A/D转换器换成数字量。设定温度为0时变换放大电路送出的模拟量为0V,此时A/D 输出的数字量为00H;温度为67时变换放大电路送出4.98V电压,此时A/D输出的数字量为0FFH,即每0.3对应1LSB 变化量。当温度超过报警温度报警67,此时,输出电压约为5.0V左右。通过电压比较器接通硬件报警电路报警。输入A/D的模拟信号有过压保护,不会损坏A/D转换器。在实验平台硬件中,已有安全设计,即加热温度不会超过80。由于热惯性的影响及温度计显示的滞后因素,若要精确观察某温度点的测量值,在加热到观察温度点后,应停止加热,等待温度计示值稳定后,再观察记录结果。若选区观察点温度较高,还应相应延长等待时间。需要说明的是,由于温度计和温度采样芯片AD590的采样点不同,理论计算值同显示略有差。ADC0809是采样频率为8位的、以逐次逼近原理进行模数转换的器件。其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8个单断模拟输入信号中的一个进行A/D转换。引脚功能:ADC0809芯片有28条引脚,采用双列直插式封装 IN0IN7:8路模拟量输入端。D7D0:为数字量输出线。ADDA、ADDB、ADDC:3位地址输入线,用于选通8路模拟输入中的一路。ALE:地址锁存允许信号,输入,高电平有效。START:A/D转换启动信号,输入,高电平有效。EOC:A/D转换结束信号,输出,当A/D转换结束时,此端输出一个高电平。OE:数据输出允许信号,输入,高电平有效。当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。CLK:时钟脉冲输入端。要求时钟频率不高于640KHZ。REF(+)、REF(-):基准电压。Vcc:电源,单一5V。GND:地。ADC0809的工作过程是:首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。此地址经译码选通8路模拟输入之一到比较器。START上升沿将逐次逼近寄存器复位。下降沿启动 A/D转换,之后EOC输出信号变低,指示转换正在进行。直到A/D转换完成,EOC变为高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。当OE输入高电平时,输出三态门打开,转换结果的数字量输出到数据总线上。用导线连接温度与控制模块的T-Detect到并行模数转换模块的IN-0;用导线对应连接并行模数转换CS_0809到CPU模块的8100H。ADC0809的D0D7引脚接到单片机的P0口,电位器模块的输出端接并行模数转换模块的IN-0。温度传感部分电路和ADC0809并行模数转换电路如图3.7和图3.8所示: 图3.7 温度传感部分电路图3.8 ADC0809并行模数转换电路3.2.5 铃声选择模块设计铃声选择模块通过直流电压供电的蜂鸣器来实现。时间和设定的定时时间相同时,单片机输出高电平,蜂鸣器发出声音。使用I/O口输出音频脉冲,脉冲经放大滤波后,驱动扬声器发声。要产生音频脉冲,只要算出某一音频的周期(1/频率),然后将此周期除以2,即为半周期的时间。利用定时器定时这个半周期时间,每当定时到后就将输出脉冲的I/O口反相,然后重复定时此半周期时间再对I/O反相,就可在I/O脚上得到此频率的脉冲。利用内部定时器使其工作在计数器模式,改变计数值TH0及TL0以产生不同的频率。预置时间是由键盘读入报时电路实现的,软件设计方案是通过键盘读入预置的时间实现的,然后通过判断语句判断现在的时间是否和预置的时间相等。如果相等,则置P1.1口为高电平,蜂鸣器开始工作;如果不相等,则利用跳转语句进行计时。当计时返回时,再次判断,通过这样的方式就可以实现报时的功能。利用定时器定时功能,每当定时到后就将输出脉冲的I/O口反相,然后重复定时此半周期时间再对I/O反相,就可在I/O脚上得到此频率的脉冲。利用内部定时器使其工作在计数器模式,改变计数值TH0及TL0以产生不同的频率。将P1.5用导线连接语音接口模块的VOICE;C3模块的JT3C短路帽接至右端、JT2C短路帽接至1、2端。音频驱动电路如图3.9所示:图3.9 音频驱动电路4 系统软件设计通过各模块的确定来进一步的设计软件。运用计算机进行仿真逐步实现LCD电子万年历的各项性能指标。LCD电子万年历的软件设计包括显示程序、8255键盘显示程序、温度采集程序、铃声选择程序。在程序设计中采用模块化设计思想,能使程序可读性加强,而且编写时很方便,将要实现的功能分成几部分,由于某些功能使用不只一次,将它编成一个子程序,既可随时多次调用,修改时也不会影响其他程序。具体程序见附录。4.1 程序总体流程图如图4.1所示:YNY主程序数据初始化 显示初始化 Y键盘子程序N温度采集子程序定时铃声子程序星期转换和阴历转换子程序 刷新显示界面图4.1 主程序流程图4.2 温度采集子程序流程图如图4.2所示:温度采集子程序判断是否进行温度采集NY采集数据将采集到的数据累计到5次求和,再进行除5转换返回图4.2 温度采集子程序流程图4.3 键盘子程序流程图如图4.3所示:键盘扫描 输入数据延时获取数据判断数据是否变化 化NY判断是否为一号键Y一号键N判断是否为二号键二号键YNY判断是否为三号键三号键N返回图4.3 键盘子程序流程图4.4 定时铃声子程序流程图定时子程序如图4.4所示:NY 判断是否开铃声YN判断是否到年YN判断是否到月YN判断是否到日YN判断是否到时YN判断是否到分打开铃声标志返回图4.4 定时铃声子程序流程图5 系统硬件及软件的调试5.1 硬件调试 硬件调试工作的主要任务是排除故障,其中主要包括解决设计方案上的缺陷和焊接工艺上的工艺性故障。毕业设计使用的硬件设备为学校实验室实验箱器件,硬件无任何元件损坏。电子万年历的电路系统较大,涉及到的不见比较多,因此连接时要认真检查硬件器件及导线,以免出现错误。在电子万年历的设计调试中遇到了一些问题。回想这些问题只要认真多思考都是可以避免的,以下为主要的问题:1LCD液晶显示不亮,原因出于JT2B跳线器的两只短路帽没有置位上端。解决:将JT2B跳线器的两只短路帽置位上端。LCD不亮现象即可解决。2对万年历修改时间或日期时,有时LCD出现乱码现象。原因出于没有复位。解决:根据仪器的测试,发现重新修改时间或日期时按下复位键,即可重新调时间。5.2 软件调试单片机的显示电路、键盘电路、传感器电路、铃声电路是本次设计的主要硬件电路。在搭接实物之前要检查各器件的性能是否符合要求。如导线是否导通,芯片是否性能完好等。这样可以减少硬件调试中不必要的麻烦。在搭接过程中要按照一定的顺序逐步的对每一电路进行搭接。这样可以避免导线过多后,多连接或少连接某一部分电路。电子万年历是多功能的数字型设备,可以观察当前日期(阴、阳历)、时间,还有温度等信息。电子万年历功能很多,所以对于它的程序也较为复杂,所以在编写程序和调试时出现了相对较多的问题。最后经过多次的模块子程序的修改,一步一步的完成,最终解决了软件问题。在软件的调试过程中主要遇到的问题如下:1下载程序后,LCD显示屏不亮。解决:首先对调用的延时进行逐渐修改,可以解决显示屏不亮的问题。2修改时间、日期时没有农历没有自动对应上。解决:把不相关的程序暂时屏蔽,农历的子程序独立调试,发现在调用农历自动更新时,对十进制和十六进制处理不好,所以会造成错乱。最后把相应的十进制进行修改,使得可以与十六进制对应,最后解决了此问题。5.3 软、硬件联调要设计好一个完整的电子万年历系统是一个相对复杂的过程。在调试当中不可以急于求成,应该按照一定的步骤来分步执行。在本次课程设计中分三步来完成。首先,进行硬件电路的调试。可以先采用某种信号作为激励,然后通过检查电路能否得到预期的响应来验证电路是否正常。通常采用的方法是通过编制一些小的调试程序分别对相应各硬件单元电路的功能进行检查。其次,进行软件的调试。先验证子程序的正确性,再将这些子程序连接起来进行整体的调试。逐渐的发现错误并改正错误。最后进行软硬件结合调试。检查硬件电路与软件编程是否匹配。软硬结合来进行联合调试。利用天煌三合一综合实验系统仿真器及其自带软件来实现一个模拟仿真系统。 第一部分进行显示电路的调试,观察LCD的显示。检查屏幕画面,以及能否正确的显示。在调试过程中有时候出现了乱码,通过不断的调整直到能够清晰准确显示为止。 第二部分对采集电路进行调试,先接入一个通道。并给该通道一个电压信号看是否真够正常采集。用电压表来测量电压值与所显示的电压值相比较观察是否相等。如果相等则表示采集成功,不相等则表示采集有错误。 第三部分对电路进行整体的调试。接好整体的硬件电路,并且配合汇编好的软件程序行,观察LCD液晶屏幕的显示。在调试中进一步的完善系统的设计。结 论本次毕业设计按要求完成了LCD电子万年历的设计。但是通过结果来看本次设计还存在着一定的缺陷。将电压表测得的结果与所显示的结果相比较不难发现本次设计存在一些误差。温度采集方面,为了提高测量的精度,就要减少随机误差。随机误差是由于测量过程中一系列随机因素的影响所造成的。就一次测量而言,随机误差无一定的规律,但在多次测量中随机误差服从统计规律。我们可以通过多次测量取平均的方法来得到精确的结果。在软件编程中可以让采样的每个通道采集五次,再将五次采样取平均值后再将结果显示出来。这样,温度的显示值就会精确。单片机应用技术飞速发展,纵观我们现在生活的各个领域,从导弹的导航装置,到飞机上各种仪表的控制,从计算机的网络通讯与数据传输,到工业自动化过程的实时控制和数据处理,以及我们生活中广泛使用的各种智能IC卡、电子宠物等,这些都离不开单片机。单片机是集CPU ,RAM ,ROM ,定时,计数和多种接口于一体的微控制器。它体积小,成本低,功能强,广泛应用于智能产业和工业自动化上。这次毕业设计通过对单片机的学习,应用,从而达到学习、设计、开发软、硬的能力。电子万年历作为电子类小设计不仅是市场上的宠儿,也是单片机的典型应用之一。因为它有很好的开放性和开发性,因此对作者的要求比较高,不仅考察了对单片机的掌握能力,更加强调了对单片机扩展的应用。而且在操作的设计上要力求简洁,功能上尽量齐全,显示界面也要出色。万年历还可以增加防御报警功能,这样就更加完善了万年历的功能。经过多次的反复测试与分析,可以对电路的原理及功能更加熟悉,同时提高了设计能力与及对电路的分析能力。同时在软件的编程方面得到提高,编程能力得到加强,并且巩固了所学的知识。参考文献1 张俊谟. 单片机中级教程.M北京航天航空大学出版社.20062 杨子文. 单片机原理及应用.M西安电子科技大学出版社.20063 王法能. 单片机原理及应用,M.科学出版社.20044 胡健. 单片机原理机接口技术实践教程,M.机械工业出版社.20045 沈红卫. 基于单片机的智能系统设计与实现,M.电子工业出版社.20046 张专成,赵怀勋. 单片机测控系统中的监视定时器.武警技术学院学报.19977 张景元. 基于单片机的多用途定时器的设计与实现.电子工程师第8期. 20008 ATMEL. Microcontroller Data book,20029 Mark1. Montrose, PRINTED Circuit Board Design Techniques for EMC compliance.IEE Press series.200010 Maxim.Newreleases Data Book.1996 致 谢历经19周的毕业设计结束了,过程的曲折可谓一言难尽。从开始时满怀热情到最后汗水背后的复杂心情,点点滴滴无不令我回味无长。本次毕业设计中我设计了一个LCD电子万年历。通过不断的翻阅资料对于单片机及接口技术,以及利用汇编语言对单片机进行结构化编程的一般方法和技巧有了很多的理解。对于智能仪器的设计方法有了新的认识。在设计的过程中也经历了很多自己没有想到的困难。在不断研读程序中,学习到了不少编程知识。这些对于我以后的学习有很大的帮助。在这些日子里我得到了指导教师的悉心指导和同学们的热心帮忙,在此向我们的指导教师致以诚挚的谢意。感谢提供相关技术帮助的老师和同学,你们的支持和鼓励使我们对这次的作品完成有了信心和动力,也给了我们很多无私的帮助和支持,我们在此深表谢意。毕业设计的结束也意味着我将走出校园,结束学生生涯,走入社会,不管有多么的不舍,但该面对的还是要面对。总之,这19周的毕业设计真的让我成长很多,在今后的工作中我也要尽可能的多学东西,不断的完善自己!沈阳航空工业学院北方科技学院毕业设计(论文)附录 硬件连线图附录 程序清单CS BIT P1.0SID BIT P1.1SCLK BIT P1.2START EQU 48H ;起始字节COM EQU 49H ;命令/数据HDATA EQU 4AH ;命令/数据字节高位LDATA EQU 4BH ;命令/数据字节低位ASC EQU 4CH ;ASCII数据单元XPOS EQU 4DHYPOS EQU 4EHD0809 EQU 8100HD8255A EQU 8000H ;8255 PA 口地址D8255B EQU 8001H ;8255 PB 口地址D8255C EQU 8002H ;8255 PC 口地址 D8255 EQU 8003H ;8255 状态/命令口地址KEYVAL EQU 4FH year DATA 6FH month DATA 6EH week DATA 6DH day DATA 6CH hour DATA 6BH mintue DATA 6AH second DATA 69H ORG 0000H LJMP MAIN ORG 000BH LJMP INTT0;=初始化MAIN: MOV SP,#80H MOV 20H,#00000001B MOV 60H,#0AH MOV 10H,#14H MOV 21H,#01H MOV 22H,#00000000B MOV 24H,#04H SETB 25H.1 MOV 26H,#01H MOV 70H,#00H ;是否开闹铃 MOV 71H,#00H ;秒 MOV 72H,#00H ;分 MOV 73H,#00H ;时 MOV 74H,#08H ;日 M

温馨提示

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

评论

0/150

提交评论