




已阅读5页,还剩46页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
南京邮电大学 毕 业 设 计(论 文)题 目温度监控报警系统的设计与实现专 业电气工程及其自动化学生姓名宋少卿班级学号B080503 B08050321指导教师车晶 房春光指导单位电子科学与工程学院 日期: 年 月 日至 年 月 日毕业设计(论文)原创性声明本人郑重声明:所提交的毕业设计(论文),是本人在导师指导下,独立进行研究工作所取得的成果。除文中已注明引用的内容外,本毕业设计(论文)不包含任何其他个人或集体已经发表或撰写过的作品成果。对本研究做出过重要贡献的个人和集体,均已在文中以明确方式标明并表示了谢意。 论文作者签名: 日期: 年 月 日摘 要 目前,无论是在工业生产中还是在科研实验中通过对温度测量来进行自动控制的设备越来越普及,应用场合也越来越多。随之而来的问题是,如何能够测得精确的温度以保证自动控制设备能够正确地发出控制指令来控制生产过程。另一方面,如果温度过高可能会对一些设备中的一些半导体元器件造成损坏。因此,对于自动温度报警的需求也在逐渐增加。本课题设计了一个基于AT89C51单片机的温度监控报警系统,该系统以AT89C51为主控制器,以DS18B20芯片为温度测量单元,对温度信息进行采集、传输,并通过LCD1602进行实时显示。此外,可以通过键盘对报警温度值进行设定,当测试温度达到报警温度值或超出温度测量范围,系统能够给出报警指示。关键词:AT89C51;温度监控;报警;DS18B20;LCD1602;ABSTRACTNow the temperature measurement to automatic control equipment is becoming more and more popular, and has more and more applications. How to measure the accurate temperature to ensure that the automatic control device can correctly send instructions to control the production process. On the other hand, if the temperature is too high it will damage a number of devices in the semiconductor components possiblely . Therefore, the automatic temperature alarm system based on AT89C51 is researched in this paper.This temperature monitoring alarm system used AT89C51 as main controller, DS18B20 chip as the temperature measuring unit, which collect and transmit the temperature information, and display the information through the LCD1602 in real time. In addition, the system can set the alarm temperature value through the keyboard,and when the testing temperature reaches the alarm temperature value or exceeds the range of temperature measurement, the system can give the alarm.Key words:AT89C51;Temperature monitoring;alarming;DS18B20;LCD1602;目 录第一章 绪论11.1单片机的概述11.2单片机研究现状11.3温度控制的研究意义和目的21.4毕业设计任务和要求21.5论文内容及结构3第二章 系统方案选择和论证42.1设计要求42.1.1基本要求42.1.2发挥部分42.2系统组成42.3方案比较52.3.1主控制方案52.3.2温度传感方案52.3.3显示方案52.3.4电源方案6第三章 单元电路设计73.1数据采集模块73.2复位模块103.3AT89C51单片机系统103.4显示模块133.5按键模块163.6报警模块17第四章 软件设计184.1整体程序概述184.2温度显示子程序设计184.3温度设定子程序设计194.4报警子程序设计20第五章 系统调试与测试225.1硬件调试225.1.1硬件电路故障及解决方法225.1.2硬件调试方法225.2测定传感器温度值标定235.3软件调试235.3.1软件电路故障及解决方法235.3.2软件调试方法24结束语26致 谢27参考文献28附录A29南京邮电大学2012届本科生毕业设计(论文)第1章 绪论1.1单片机的概述 随着现代工业的逐步发展,在工业生产中,温度、压力、流量和液位是四种最常见的过程变量。其中,温度是一个非常重要的过程变量。例如:在冶金工业、化工工业、电力工业、机械加工和食品加工等许多领域,都需要对各种加热炉、热处理炉、反应炉和锅炉的温度进行控制。然而,用常规的控制方法,潜力是有限的,难以满足较高的性能要求。采用单片机来对它们进行控制不仅具有控制方便、简单和灵活性大的优点,而且可以大幅度提高被测温度的技术指标,从而能够大大提高产品的质量和数量。因此,单片机对温度的控制问题是一个工业生产中经常会遇到的控制问题。在人类的生活环境中,温度扮演着极其重要的角色。 单片微型计算机是随着超大规模集成电路技术的发展而诞生的,由于它具有体积小、功能强、性价比高等特点,所以广泛应用于电子仪表、家用电器、节能装置、军事装置、机器人、工业控制等诸多领域,使产品小型化、智能化,既提高了产品的功能和质量,又降低了成本,简化了设计。1.2单片机研究现状 纵观我们现在生活的各个领域,从导 弹的导航装置,到飞机上各种仪表的控制,从计算机的网络通讯与数据传输,到工业自动化过程的实时控制和数据 处理,以及我们生活中广泛使用的各种智能IC 卡、电子宠物等,这些都离不开单片机。以前没有单片机时,这些 东西也能做,但是只能使用复杂的模拟电路,然而这样做出来的产品不仅体积大,而且成本高,并且由于长期使用, 元器件不断老化,控制的精度自然也会达不到标准。在单片机产生后,我们就将控制这些东西变为智能化了,我们 只需要在单片机外围接一点简单的接口电路,核心部分只是由人为的写入程序来完成。这样产品的体积变小了,成 本也降低了,长期使用也不会担心精度达不到了。所以,它的魔力不仅是在现在,在将来将会有更多的 人来接受它、使用它。据统计,我国的单片机年容量已达13 亿片,且每年以大约16%的速度增长,但相对于世界市场我国的占有率还不到1%。特别是沿海地区的玩具厂等生产产品多数用到单片机,并不断地辐射向内地。 所以,学习单片机在我国是有着广阔前景的。1.3温度控制的研究意义和目的 二十一世纪是科技高速发展的信息时代,电子技术、微型单片机技术的应用更是空前广泛,伴随着科学技术和生产的不断发展,需要对各种参数进行温度测量。因此温度一词在生产生活之中出现的频率日益增多,与之相对应的,温度控制和测量也成为了生活生产中频繁使用的词语,同时它们在各行各业中也发挥着重要的作用。如在日趋发达的工业之中,利用测量与控制温度来保证生产的正常运行。在农业中,用于保证蔬菜大棚的恒温保产等。 温度是表征物体冷热程度的物理量,温度测量则是工农业生产过程中一个很重要而普遍的参数。温度的测量及控制对保证产品质量、提高生产效率、节约能源、生产安全、促进国民经济的发展起到非常重要的作用。由于温度测量的普遍性,温度传感器的数量在各种传感器中居首位。而且随着科学技术和生产的不断发展,温度传感器的种类还是在不断增加丰富来满足生产生活中的需要。 在单片机温度测量系统中的关键是测量温度、控制温度和保持温度,温度测量是工业对象中主要的被控参数之一。因此,单片机温度测量则是对温度进行有效的测量,并且能够在工业生产中得到了广泛的应用,尤其在电力工程、化工生产、机械制造、冶金工业等重要工业领域中,担负着重要的测量任务。在日常生活中,也可广泛实用于地热、空调器、电加热器等各种家庭室温测量及工业设备温度测量场合。但温度是一个模拟量,如果采用适当的技术和元件,将模拟的温度量转化为数字量虽不困难,但电路较复杂,成本较高。1.4毕业设计任务和要求 本文所要研究的课题是基于单片机温度控制及报警系统的设计,介绍了对温度的显示、控制及报警,实现了温度的实时显示及控制。温度控制部分,提出了用DS18B20、89C51单片机及LED的硬件电路完成对温度的实时检测及显示,利用DS18B20与单片机连接由软件与硬件电路配合来实现实时控制及超出设定的上下限温度的报警系统。课题设计的目的: 1.掌握用51单片机控制LCD显示字符的方法。 2.掌握用单片机进行显示系统开发的方法。 3.掌握单片机软件、硬件调试技术。 4.了解单线器件DS18B20的驱动方法。 5.了解LCD显示器的一般驱动原理。1.5论文内容及结构 本设计是根据温度监控报警系统的设计与实现的要求,完成其硬件电路板的设计和实现。技术要求:温度监控报警系统系统包括温度测量、实时显示和报警三部分,根据各个模块的设计要求,完成温度监控报警系统硬件电路的设计制作。 本文的结构安排如下:第一章绪论是对课题的总体调研。第二章是系统方案选择和论证是对元件的调研和选择。第三章是单元电路设计是各单元电路的接线情况。第四章是软件设计是个模块的流程。第五章是系统调试与测试。第二章 系统方案选择和论证2.1设计要求2.1.1基本要求 (1)温度测量范围:-55125,误差0.001; (2)可通过键盘设定报警温度值并在LCD液晶屏上显示设定值,液晶屏显示精度 0.001; (3)LCD液晶屏实时显示测量温度值,其中液晶屏显示精度0.001; (4)设定温度值与实际温度值保持一致,误差1; (5)当温度超出测量范围时,能实现报警。2.1.2发挥部分 (6)能实现GSM短信发送或通过射频模块无线发送(发射距离100 m); (7)可以有其它功能改进和实现特色创新。2.2系统组成 经过方案的比较与论证,最终确定的系统框图如2-1所示。 图2-1 系统原理框图2.3方案比较2.3.1主控制方案 方案一:采用单片机控制。主控制芯片AT89C51是一种低功耗、高性能CMOS 8位微控制器,具有8KB在系统可编程 Flash 存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89C51为众多嵌入式控制应用系统提供了灵活有效的解决方案。 方案二:采用FPGA(现场可编程门阵列)控制。利用FPGA来控制可以充分利用FPGA的资源,将系统的多个部件整合在一块FPGA芯片上,可大大减小系统的体积,提高系统的稳定性和抗干扰性能。但实施相当困难,出现问题不易查找。 很显然,采用方案一易于系统的控制实现和功能拓展。2.3.2温度传感方案 方案一:采用集成温度传感器。集成温度传感器一般且有具有线性好、精度高、灵敏度高、体积小、使用方便等优点。根据实验室现有材料可选取AD590。AD590的测温范围为-55+150 ,能满足本设计的090测量要求。此外,AD590线性电流输出为1 A/K,正比于绝对温度,电源电压范围为430 V,可承受44 V正向电压和20 V反向电压,因而器件反接也不易被损坏。 方案二:采用热敏电阻。热敏电阻价格便宜,对温度灵敏,原理简单,但线性度不好,如不进行线性补偿,对于本设计输出的精度要求难于达到;如要对非线性进行补偿,则电路结构复杂,难于调整。故不采用。 方案三:采用广泛使用的DS18B20温度传感器。DS18B20温度传感器是一种数字温度感测器,内部已经集成相应的电路,直接即可输出相对应的温度数据。 DS18B20抗干扰能力强,精度高,附加功能强,相应速度很快,测温范围是55C +125C。 综合汇总方案,选择了简单易行的方案三。2.3.3显示方案 方案一:采用LED数码管显示。使用多个数码管动态显示,由于采用轮流显示增加了控制难度,再者数码管的连线较多,电路也就相当复杂,功耗比较大。 方案二:采用液晶显示。液晶显示器LCD1602显示质量高,由于液晶显示器每一个点在收到信号后就一直保持那种色彩和亮度,恒定发光,而不像阴极射线管显示器(CRT)那样需要不断刷新新亮点。因此,液晶显示器画质高且不会闪烁。液晶显示器都是数字式的,和单片机系统的接口更加简单可靠,操作更加方便。液晶显示器通过显示屏上的电极控制液晶分子状态来达到显示的目的,在重量上比相同显示面积的传统显示器要轻得多。相对而言,液晶显示器的功耗主要消耗在其内部的电极和驱动IC上,因而耗电量比其它显示器要少得多。 综合汇总方案,选择了较为人性化更贴近生活的方案二。2.3.4电源方案 系统需要单个电源,主控制器AT89S52、液晶屏LCD1602和DS1820均采用5 V稳压电源。 方案一:采用L7805CV芯片,输出电压:4.75-5.25V,最大输入电压:35V。不需外接补偿元件,内含限流保护电流,防止负载短路烧毁元件,内含高温过热保护电路,防止结温过热烧毁器件,内含功耗限制电路,防止烧毁输出驱动器晶体管。 方案二:采用三节干电池串联获得4.5V电压。 此处选用更符合规格的方案一。第三章 单元电路设计3.1数据采集模块 前面已经叙述过,我们采用的是DS18B20温度传感器,其外形及相应的管脚定义如图3-1所示。 图3-1 DS18B20管脚图 DS18B20温度传感器是一种数字温度感测器,内部已经集成相应的电路,直接即可输出相对应的温度数据。 DS18B20抗干扰能力强,精度高,附加功能强,相应速度很快,测温范围是55C +125C。如图3-2所示,DS18B20的DQ脚接到单片机P1.3口。 图3-2 数据采集模块接线图 由于DS18B20是在一根I/O线上读写数据,因此,对读写的数据位有着严格的时序要求。DS18B20有严格的通信协议来保证各位数据传输的正确性和完整性。该协议定义了几种信号的时序:初始化时序、读时序、写时序。所有时序都是将主机作为主设备,单总线器件作为从设备。而每一次命令和数据的传输都是从主机主动启动写时序开始,如果要求单总线器件回送数据,在进行写命令后,主机需启动读时序完成数据接收。数据和命令的传输都是低位在先。 DS18B20的复位时序 DS18B20的读时序 对于DS18B20的读时序分为读0时序和读1时序两个过程。 对于DS18B20的读时隙是从主机把单总线拉低之后,在15秒之内就得释放单总线,以让DS18B20把数据传输到单总线上。DS18B20在完成一个读时序过程,至少需要60us才能完成。 DS18B20的写时序 对于DS18B20的写时序仍然分为写0时序和写1时序两个过程。 对于DS18B20写0时序和写1时序的要求不同,当要写0时序时,单总线要被拉低至少60us,保证DS18B20能够在15us到45us之间能够正确地采样IO总线上的“0”电平,当要写1时序时,单总线被拉低之后,在15us之内就得释放单总线。 使用的是单片机的一引脚读取DS18B20的16位温度数据,由于采用的是8位的单片机,所以只能分为低8位和高8位分别来读取,DS18B20允许通过程序对传感器的分辨率,温度报警的上、下限等参数进行配置。它的内部存储器包括一个高速暂存存储器和一个非易失性可擦除EPROM。速暂存存储器共有8个字节(byte),每个字节8位(bit)。 根据温度的计算方法如下: S S S S S = 11111 b 温度值: T = (MSB and 7) 256 + LSB 0.0625 SSSSS = 00000 b 温度值: T = - (256 - MSB) 256 - LSB 0.0625 如果,存储器高位寄存器MS的S S S S S 均为1 ,则被测温度为正值,用上面第1个公式来计算温度。如果存储器高位寄存器MSB的S S S S S均为0,则被测温度为负值,用上面第2个公式来计算温度。在这里,有两点应当注意:一是公式中中括号内的数值为二进制,在计算口号内计算完成后应转化为十进制;二是这里的7与0.0625是假设传感器的分辨率设置0.0625时的计算值。如果分辨率的设置值不是0.0625,那么就应当作相应的变化。第3和第4个字节分别用来存放温度报警的上限(TH)和下限值(TL)。DS18B20在完成温度变换后,会将所测温度值与贮存在TH和TL内的上下限值相比较,如果测温结果高于TH或低于TL,DS18B20内部的告警标志就会被置位,表示温值超出了测量范围。并且该值在掉电后不会丢失,而是记忆其设定的上下限值。第5字节是配置寄存器,该寄存器用于对温度转换值的分辨率进行设置。其中,最高位用于设置传感器是工作模式还是测试模式,是生产厂家为便于检验使用。其出厂时的默认值为0,为工作模式(即用户使用时的模式)。并且在用户使用中,该位总是保持为0。R1与R0确定传感器的分辨率,DS18B20有4种分辨率可供选择。使用时可以根据实际需要来设置,出厂时的默认设置是12位。最后5位总保持为1,然后根据图3-3的方法可以写出温度计算公式:摄氏温度值=(高8位数据(MSB)*16+低8位数据(LSB)*0.0625。 图3-33.2复位模块 RST引脚是复位信号的输入端,高电平有效。其有效时间应持续24个振荡周期(即两个机器周期)以上。RESET/Vpd复位信号复用脚,当8051通电,时钟电路开始工作,在RESET引脚上出现24个时钟周期以上的高电平,系统即初始复位。8051的复位方式可以是自动复位,也可以是手动复位,见下图3-4。此外,RESET/Vpd还是一复用脚,Vcc掉电期间,此脚可接上备用电源,以保证单片机内部RAM的数据不丢失。 复位操作有上电自动复位和手动按键复位两种方式。只要电源的上升时间不超过1ms,就可以完成自动上电复位,即接通电源时就完成了复位操作。3.3AT89C51单片机系统 AT89C51是一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,功能强大的AT89C51单片机可为您提供许多较复杂系统控制应用场合。 AT89C51有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,AT89C52可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。51系列单片机最小系统接线如图3-4所示。 图3-4 最小系统接线图 单片机共40管脚,这40脚大致可分为:电源(VCC、VSS、VDD、VPD),时钟(XTAL1、XTAL2),I/O(P0P3),地址总线(P0、P2),数据总线(BUS)和控制总线(ALE、RST、)6大部分。 它们的功能简述如下:(1)电源线 VSS:引脚号20,电源地线。 VCC:引脚号40,芯片的主电源,接+5V。(2)控制总线 ALE/:引脚号30,地址锁存有效信号,在它的下降沿用于外部程序存储器的低8位地址锁存,使BUS(P0)分时用作地址总线低8位和数据总线。此信号每机器周期出现2次,只在访问外部数据存储器期间才不输出ALE。所以在任何不使用外部数据存储器的系统中,ALE以1/6振荡频率的固定速率输出,因而它能用作外部时钟或定时器。在8751片内EPROM编程时,此段输入编程脉冲信号()。 :引脚号29,外部程序存储器选择信号,并在外部程序存储器读取指令时产生,指令内容读到数据总线上。此信号在每个机器周期产生2次有效,在执行内部程序存储器取指时无效。 RST/VPD:引脚号9,复位输入信号。在振荡器工作时,该引脚上2个机器周期的高电平可实现复位操作。在掉电情况下(VCC降到操作允许限度以下),VPD将为芯片内的RAM提供备用电源。 /VDD:引脚号31,访问外部程序存储器控制信号输入端。当为低电平时,单片机都到外部程序存储器取指。当为高电平且PC值小于0FFFH时,CPU执行内部程序存储器程序。在8751片内EPROM编程时,此端为21V编程电源(VDD)输入端。(3)I/O线 P0(BUS):引脚号3239,单片机的双向数据总线和低8位地址总线。在分时操作时,先用作地址总线,在ALE信号的下降沿,地址被锁存,然后作为数据总线;也可以作为双向并行I/O口。在程序校验期间,它用于数据输出。 P1:引脚号18,准双向I/O口。在编程校验期间,用于输入低8位地址。 P2:引脚号2128,准双向I/O口。在访问外部存储器时,用作高8位地址总线;在作编程校验时,用于输入高8位地址和控制信息。 P3:引脚号1017,准双向I/O口。P3的每一根线还有特殊的第二功能,如表3-5示。引脚第二功能标记第二功能P3.0RXD串行输入口P3.1TXD串行输出口P3.2外部中断0输入P3.3 外部中断1输入P3.4T0定时/计数器0外部输入P3.5T1定时/计数器1外部输入P3.6外部数据存储器写选通P3.7外部数据存储器读选通表3-5 P3口的第二功能(4)振荡器和时钟电路 XTAL1:引脚号19,内部振荡器外接晶振的一个输入端。在使用外部振荡源时,此端必须接地。 XTAL2:引脚号18,内部振荡器外接晶振的另一个输入端。在使用外部振荡源时,此端用于输入外部振荡信号。XTAL2也是内部时钟发生器的输入端。当访问外部程序器时,ALE(地址锁存)的输出用于锁存地址的低位字节。而访问内部程序存储器时,ALE端将有一个1/6时钟频率的正脉冲信号,这个信号可以用于识别单片机是否工作,也可以当作一个时钟向外输出。 如果单片机是EPROM,在编程其间, 将用于输入编程脉冲。当访问外部程序存储器时,此脚输出负脉冲选通信号,PC的16位地址数据将出现在P0和P2口上,外部程序存储器则把指令数据放到P0口上,由CPU读入并执行。EA/Vpp程序存储器的内外部选通线,8051和8751单片机,内置有4kB的程序存储器,当EA为高电平并且程序地址小于4kB时,读取内部程序存储器指令数据,而超过4kB地址则读取外部指令数据。如EA为低电平,则不管地址大小,一律读取外部程序存储器指令。3.4显示模块 在日常生活中,我们对液晶显示器并不陌生。液晶显示模块已作为很多电子产品的通用器件,如在计算器、万用表、电子表及很多家用电子产品中都可以看到,显示的主要是数字、专用符号和图形。我们的显示模块采用的是LCD1602液晶屏,配合单片机的相应程序,通过数据口,向1602中写入命令和数据。如图3-7是1602液晶屏的接线图。RS接P1.0,R/W接P1.1,E接P1.2。8位双向数据线一次接到P2口。第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脚:背光源负极。 图3-7 LCD1602接线图在单片机系统中应用晶液显示器作为输出器件有以下几个优点:(1)显示质量高 由于液晶显示器每一个点在收到信号后就一直保持那种色彩和亮度,恒定发光,而不像阴极射线管显示器(CRT)那样需要不断刷新新亮点。因此,液晶显示器画质高且不会闪烁。(2)数字式接口 液晶显示器都是数字式的,和单片机系统的接口更加简单可靠,操作更加方便。(3)体积小、重量轻 液晶显示器通过显示屏上的电极控制液晶分子状态来达到显示的目的,在重量上比相同显示面积的传统显示器要轻得多。(4)功耗低 相对而言,液晶显示器的功耗主要消耗在其内部的电极和驱动IC上,因而耗电量比其它显示器要少得多。(1)液晶显示原理 液晶显示的原理是利用液晶的物理特性,通过电压对其显示区域进行控制,有电就有显示,这样即可以显示出图形。液晶显示器具有厚度薄、适用于大规模集成电路直接驱动、易于实现全彩色显示的特点,目前已经被广泛应用在便携式电脑、数字摄像机、PDA移动通信工具等众多领域。(2)液晶显示器的分类 液晶显示的分类方法有很多种,通常可按其显示方式分为段式、字符式、点阵式等。除了黑白显示外,液晶显示器还有多灰度有彩色显示等。如果根据驱动方式来分,可以分为静态驱动(Static)、单纯矩阵驱动(Simple Matrix)和主动矩阵驱动(Active Matrix)三种。(3)液晶显示器各种图形的显示原理:1.线段的显示 点阵图形式液晶由MN个显示单元组成,假设LCD显示屏有64行,每行有128列,每8列对应1字节的8位,即每行由16字节,共168=128个点组成,屏上6416个显示单元与显示RAM区1024字节相对应,每一字节的内容和显示屏上相应位置的亮暗对应。例如屏的第一行的亮暗由RAM区的000H00FH的16字节的内容决定,当(000H)=FFH时,则屏幕的左上角显示一条短亮线,长度为8个点;当(3FFH)=FFH时,则屏幕的右下角显示一条短亮线;当(000H)=FFH,(001H)=00H,(002H)=00H,(00EH)=00H,(00FH)=00H时,则在屏幕的顶部显示一条由8段亮线和8条暗线组成的虚线。这就是LCD显示的基本原理。2.字符的显示 用LCD显示一个字符时比较复杂,因为一个字符由68或88点阵组成,既要找到和显示屏幕上某几个位置对应的显示RAM区的8字节,还要使每字节的不同位为“1”,其它的为“0”,为“1”的点亮,为“0”的不亮。这样一来就组成某个字符。但由于内带字符发生器的控制器来说,显示字符就比较简单了,可以让控制器工作在文本方式,根据在LCD上开始显示的行列号及每行的列数找出显示RAM对应的地址,设立光标,在此送上该字符对应的代码即可。3.汉字的显示 汉字的显示一般采用图形的方式,事先从微机中提取要显示的汉字的点阵码(一般用字模提取软件),每个汉字占32B,分左右两半,各占16B,左边为1、3、5右边为2、4、6根据在LCD上开始显示的行列号及每行的列数可找出显示RAM对应的地址,设立光标,送上要显示的汉字的第一字节,光标位置加1,送第二个字节,换行按列对齐,送第三个字节直到32B显示完就可以LCD上得到一个完整汉字。 液晶显示模块是一个慢显示器件,所以在执行每条指令之前一定要确认模块的忙标志为低电平,表示不忙,否则此指令失效。要显示字符时要先输入显示字符地址,也就是告诉模块在哪里显示字符,图3-6是1602的内部显示地址。图3-6 1602LCD内部显示地址 例如第二行第一个字符的地址是40H,那么是否直接写入40H就可以将光标定位在第二行第一个字符的位置呢?这样不行,因为写入显示地址时要求最高位D7恒定为高电平1所以实际写入的数据应该是01000000B(40H)+10000000B(80H)=11000000B(C0H)。在对液晶模块的初始化中要先设置其显示模式,在液晶模块显示字符时光标是自动右移的,无需人工干预。每次输入指令前都要判断液晶模块是否处于忙的状态。3.5按键模块 键盘电路采用2个按键组成独立式键盘如图3-7,在单片机程序中扫描按键电平情况,判断按钮通断情况。用两个按键设定报警温度。 图3-7 按键模块接线图3.6报警模块 报警电路采用发光二级管报警,当测试温度达到报警温度值或超出温度测量范围,系统能够给出报警指示。报警电路如图3-8所示 图3-8 报警模块接线图第四章 软件设计4.1整体程序概述 我们的整个程序共分为这样几个模块:液晶显示程序、键盘扫描程序、温度采集程序和报警程序等。其中,不同的程序模块置于不同的位置。这样,程序的实时性和效率就得到了提高。图4-1是主函数的流程图: 图4-1 主函数流程图4.2温度显示子程序设计 温度监控报警系统系统可以通过液晶屏显示温度信息,图4-2所示为温度设定子程序流程图。图4-2 LCD1602流程图4.3温度设定子程序设计 温度监控报警系统是一个智能化的系统,系统可以通过灯光报警报告温度超标信息,也即需要设定一个温度报警范围,图4-3所示为温度设定子程序流程图。 图4-3 温度设定子程序流程图 4.4报警子程序设计 在设定温度监控报警程序中,只要采集的温度超过设定的上下限值就算有有效信号进来,系统就会立刻启动报警程序,同时在液晶屏上显示温度,温度监控报警系统流程如图4-4所示。 图4-4 报警子程序流程图第五章 系统调试与测试5.1硬件调试 单片机应用系统的硬件和软件调试是交叉进行的,但通常是先排除样机中明显的硬件故障,尤其是电源故障,才能安全地和仿真器相连,进行综合调试。5.1.1硬件电路故障及解决方法1错线、开路、短路:由于设计错误和加工过程中的工艺性错误所造成的错线、开路、短路等故障。 解决方法:在画原理图时仔细检查、校正即可解决。2元器件损坏:由于对元器件使用要求的不熟悉及制作调试过程中操作不当致使器件损坏。 解决方法:在设计过程中要明确各元器件的工作条件,严格按照制作要求进行操作,损坏的元器件要及时更换,以免损坏其他元件或影响电路功能的实现。3电源故障:设计中存在电源故障,即上电后将造成元器件损坏、无法正常供电,电路不能正常工作。电源的故障包括:电压值不符和设计要求,电源引出线和插座不对应,各档电源之间的短路,变压器功率不足,内阻大,负载能力差等。 解决方法:电源必须单独调试好以后才能加到系统的各个部件中。本设计中就出现电源故障经过一个稳压电路才使其正常工作。5.1.2硬件调试方法 本设计调试过程中所用的调试方法有:静态测试、联仿真器在线调试等。1静态测试 在样机加电之前,首先用万用表等工具,根据硬件电器原理图和装配图仔细检查样机线路的正确性,并核对元器件的型号、规格和安装是否符合要求。应特别注意电源的走线,防止电源之间的短路和极性错误,并重点检查扩展系统总线(地址总线、数据总线和控制总线)是否存在相互间的短路或与其它信号线的短路。第二步是加电后检查各个插件上引脚的电位,仔细测量各点电位是否正常,尤其应注意单片机插座上的各点电位,若有高压,联机时将会损坏仿真器。第三步是在不加电情况下,除单片机以外,插上所有的元器件,最后用仿真适配器将样机的单片机插座和仿真器的仿真接口相连,为联机调试做准备。 2联仿真器在线调试 测试RAM存储器:用仿真器写命令将一批数据写入样机中扩展的RAM,然后用读命令读出其内容,若对任意单元读出和写入内容一致,则扩展RAM和单片机的连接没有逻辑错误。若读出写入内存不一致,则可能是地址数据线短路,试写入不同的数据观察读出结果,或缩小对RAM的读写范围,检查对RAM中其它区域的影响,这样可初步对地址数据线短路错误定位,再用万用表、示波器等进一步确诊。5.2测定传感器温度值标定 为了考察所设计的系统的性能,做了不少的测试,方案是使用家用水银温度计作为对比,对不同的温度设定值和温度差,考察系统的测定值的准确性。 测试条件:室温27,一个标准大气压。使用家用水银温度计测试DS18B20测定温度的准确度水银温度计49.949.048.144.843.140.2DS18B20返回504948454340 误差分析:由于液晶显示的是DS18B20测到温度的整数值,存在一定的小数位误差,同时家用水银温度计的误差存在。综合考虑测量的误差在合理范围之内。5.3软件调试5.3.1软件电路故障及解决方法设计软件部分出现这种错误的现象:1当以断点或连续方式运行时,目标系统没有按规定的功能进行操作或什么结果也没有,这是由于程序转移到意外之处或在某处死循环所造成的。 解决方法:这类错误的原因是程序中转移地址计算错误、堆栈溢出、工作寄存器冲突等。在采用实时多任务操作系统时,错误可能在操作系统中,没有完成正确的任务调度操作,也可能在高优先级任务程序中,该任务不释放处理器,使CPU在该任务中死循环。通过对错误程序的修改使其实现预期的功能。2不响应中断 CPU不响应中断或不响应某一个中断这种错误的现象是连续运行时不执行中断任务程序的规定操作,当断点设在中断入口或中断服务程序中时碰不到断点。错误的原因有:中断控制寄存器(IE,IP)的初值设置不正确,使CPU没有开放中断或不许某个中断源请求;或者对片内的定时器、串行口等特殊功能寄存器和扩展的I/O口编程有错误,造成中断没有被激活;或者某一中断服务程序不是以RETI指令作为返回主程序的指令,CPU虽已返回到主程序但内部中断状态寄存器没有被清除,从而不响应中断;或由于外部中断源的硬件故障使外部中断请求无效。 解决方法:修改中断控制寄存器(IE,IP)的初值设置。3结果不正确 目标系统基本上已能正常操作,但控制有误动作或者输出的结果不正确。这类错误大多是由于计算程序中的错误引起的。错误原因没有查明,没有解决。5.3.2软件调试方法 软件调试所使用的方法有:计算程序的调试方法、I/O处理程序的调试法、综合调试法等。1计算程序的调试方法 计算程序的错误是一种静态的固定的错误,因此主要用单拍或断点运行方式来调试。根据计算程序的功能,事先准备好一组测试数据。调试时,用防真器的写命令,将数据写入计算程序的参数缓冲单元,然后从计算程序开始运行到结束,运行的结果和正确数据比较,如果对有的测试数据进行测试,都没有发生错误,则该计算程序调试成功;如果发现结果不正确,改用单步运行方式,即可检查出错误所在。计算程序的修改视错误性质而定。若是算法错误,那是根本性错误,应重新设计该程序;若是局部的指令有错,修改即可。如果用于测试的数据没有全部覆盖实际计算的原始数据的类型,调试没有发现错误可能在系统运行过程中暴露出来。2I/O处理程序的调试 对于A/D转换一类的I/O处理程序是实时处理程序,因此一般用全速断点运行方式或连续运行方式进行调试。3综合调试 在完成了各个模块程序(或各个任务程序)的调试工作以后,便可进行系统的综合调试。综合调试一般采用全速断点运行方式,这个阶段的主要工作社排除系统中遗留的错误以提高系统的动态性能和精度。在综合调试的最后阶段,应在目标系统的晶振频率工作,使系统全速运行目标程序,实现了预定功能技术指标后,便可将软件固化,然后在运行固化的目标程序,成功后目标系统便可脱机运行。一般情况下,这样一个应用系统就算研制成功了。结束语 经过几个月的不断学习和努力,基于单片机的温度测控系统的毕业设计即将结束,基本完成了老师所规定的各项工作任务。 本报告介绍了用单片机AT89C51控制DS18B20以及着重分析各单元电路的设计,以及各电路与单片机的接口技术。最后还给出系统的软件的设计过程,使用了C语言进行程序设计。本文是采用模块化的方式进行叙述,对各模块的设计进行了比较详细地阐述。 通过本次温度监控系统的设计,我大有收获,在制作过程中,一定要注意的每个工骤的检查,确保制作成功。比如在合理选择模块,检查装配无误的情况下,如果还出现电路无输出的情况,那么可以肯定是原理图错误,这时就要回到原理图进行检查。从整体来说这是一个复杂的过程,要细心谨慎,沉着冷静,反复检查,直到找到原因为止。 经过四年学习的积累,在已经掌握相关专业方面知识及其它各方面知识的情况下,我认真严肃的完成了我的毕业实践报告。 从得到题目到查找资料,从对题目的研究设定到程序的调试,从电路图的仿真调试到失败后再一次全部重新开始在这一个充满挑战伴随挫折,充满热情伴随打击的过程中,我感触颇深,它已不仅是一个对我学习知识情况和我的应用动手能力的检验,而且还是对我的钻研精神,面对困难的心态,做事的毅力和耐心的考验。我在这个过程中深刻的感受到了做毕业设计的意义所在,和我一样真正投入了身心去做的人也一定会有同样的感触。 本课题的重点、难点是: (1)初步接触温度传感器,要对传感器的原理、结构、应用等各方面; (2)考虑从非电量信号到电量信号的电路实现原理以及与单片机的接口; (3)熟悉编程的技术; (4)考究调整电路的实现过程以及怎么样通过单片机来间接的控制。通过做本课题,我了解并掌握了传感器的基本理论知识,更深入的掌握单片机的开发应用和PC编程控制。为以后从事单片机软硬件产品的设计开发、PC软件开发打下了良好的基础,树立独立从事产品研发的信心,并在这种能力上得到了比较充分的锻炼。致 谢 本设计论文在电子科学与工程学
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中班上学期班级工作总结
- 职场压力疏导团体辅导方案
- 仿古建筑木工施工方案
- 银行从业 风险管理考试及答案解析
- 拇指及手功能重建患者的护理
- 应急车道工程施工方案
- 公建空间设计讲解
- 新入职护士转正述职报告
- 餐饮宿舍招标方案范本
- 培训安全员题库试题及答案解析
- GB/T 8165-2025不锈钢复合钢板和钢带
- 氧疗实施中的安全监测与护理
- 2024年江苏省连云港市辅警协警笔试笔试模拟考试(含答案)
- 2024年北京大兴区招聘社区工作者真题
- 清运合同协议书模板模板
- 企业知识管理培训课件
- 机电安装安全措施方案
- 2025-2030中国日用陶瓷行业发展趋势及前景预测分析报告
- 林业用地审批管理办法
- 2025年湖北省武汉市【国家公务员】公共基础知识真题含答案
- 2024法律职业资格(主观题)真题带解析
评论
0/150
提交评论