《多点数字温度检测系统毕业论文.doc》由会员分享,可在线阅读,更多相关《多点数字温度检测系统毕业论文.doc(56页珍藏版)》请在三一办公上搜索。
1、摘 要随着时代的发展、社会的进步、科学技术的不断提高,对温度测量的范围要求不断增大,同时对温度测量的精度要求也不断提高。因此,对如何方便、精确、实时的测量温度的研究也成为一个重要的研究课题。本课题设计了一种基于单片机的具有多路采集通道的高精度的数字温度检测系统。通过对各种温度传感器的研究与比较,对不同实现方案的深入论证,设计了包括温度信号处理,液晶显示,报警设置等在内的完整系统。本设计的CPU采用以AT89C51为主控芯片的单片机系统,主要由18B20温度传感器作为信号采集装置,对8路温度信号进行采集后在LCD1602上显示。 本文主要使用C语言进行程序编写,通过程序与硬件仿真的配合,最终可以
2、实现具有正常监测,指定通道检测,循环通道检测,报警上下限设置、报警和时钟显示等功能的多路温度检测系统设计。关键字:AT89C51,18B20,LCD1602液晶显示,报警,时钟Multi point temperature detection system designAbstractThe continuous improvement of science and technology, the temperature measuring range requirements continue to increase, while the temperature measurement ac
3、curacy requirements are also rising.Therefore, on how convenient, precise, real-time measurement and control of temperature of the study also become an important research subject.This topic design based on single chip with multiplex acquisition channel of high precision, wide range of intelligent te
4、mperature control system.Through a variety of temperature sensor research and comparison of different scheme, argumentation, design including temperature signal processing, liquid crystal display, alarm settings including a complete system.The design of CPU using AT89C51as main control chip microcon
5、troller system, mainly by the 18B20temperature sensor as a signal collecting device, the8 way temperature signal acquisition in a LCD1602 display.This paper will mainly use the C language program, through the program and hardware simulation match, ultimately having normal monitoring, designated chan
6、nel monitoring, circulation channel monitoring, alarm limit settings, alarm and clock display function of multi channel temperature control system design. Keywords:AT89C51 18B20 LCD1602 Alarm Clock目 录1 绪 论11.1 系统背景11.2 系统概述11.3 本设计内容及性能指标22 方案的论证22.1 传感器的选择22.2 主控制部分的选择32.3 液晶显示方案简介32.3.1 1602LCD的基本
7、参数及引脚功能42.3.2 1602LCD的指令说明及时序62.3.3 1602LCD的RAM地址映射及标准字库表82.4 系统总体设计方案93 系 统 的 硬 件 电 路 设 计113.1 DS18B20温度传感器电路113.1.1 传感器原理113.1.2 温度传感器连接123.2 单片机电路133.2.1 MCS-51系列单片机内部结构与外部引脚说明133.2.2 复位电路153.2.3 时钟电路的设计163.3 报警电路163.4 显示电路173.5 键盘电路183.6 电源电路204 系 统 软 件 实 现 和 整 体 调 试224.1 软件环境介绍224.2 软硬件结合调试22结
8、论28致 谢27参考文献28附页一 protues仿真图29附页二 程序301 绪 论1.1 系统背景对物理量的测量是人类认识自然界的一种科学方法。通过对自然界中物理量的测量,人们能够更加准确的描述周围的物质世界,揭示现实生活中的自然规律,提高工农业生产效率,并且推动科学技术不断发展。随着社会经济的高速发展,电子技术在国民经济的建设生产中占有相当重要的地位,无论同人民生活,经济建设,还是国防建设和科学研究都有着紧密的关系。加强电子科学技术的研究,对于提高产品质量,改进工艺,实现标准化、系列化、自动化;对于保障安全生产、提高生产效率,降低能源消耗;对于企业生产自动化、科学化、提高科研水平,增加经
9、济效益都具有非常重要的作用。利用电子技术对温度进行测量,在社会经济发展的各个领域中都十分重要。人们的日常生活、工农业生产和科学技术试验等很多方面都与温度测量有着非常重要的关系。温度做为一个非常重要的物理量,是社会生产过程中最普遍也是最重要的测量参数之一。随着时代的进步、社会的发展、科技的不断更新,对温度测量范围的要求不断扩大,同时对温度测量的准确性要求不断增高。对温度监测的环境要求越来越广泛,测量的范围也越来越大,对温度监测的技术要求也越来越高。因而,对温度的监控和温度监控技术的研究也成为了一个十分重要的研究课题。1.2 系统概述本文将介绍数字温度传感器DS18B20的结构特征及控制方法,并对
10、以此传感器,89c51单片机为控制器构成的数字温度控制装置的工作原理及程序设计作了详细的介绍。其具有读数方便,方便控制,输出温度采用数字显示,本系统可以应用在大型工业及民用常温多点监测场合。如粮食仓储系统、楼宇自动化系统、温控制程生产线之温度影像检测、医疗与健诊的温度测试、空调系统的温度检测、石化、机械等。该设计控制器使用ATMEL公司的AT89c51单片机,测温传感器使用DALLAS公司DS18B20,用液晶来实现温度显示。1.3 本设计内容及性能指标本设计主要是介绍了单片机控制下的温度检测系统,详细介绍了其硬件和软件设计,并对其各功能模块做了详细介绍,其主要功能和指标如下:1、利用温度传感
11、器测量2组4点温度;2、温度测量范围:10105;3、显示分辨率:0.2;4、测温误差根据传感器误差范围小于0.5;5、轮显检测点的组、点号和对应的温度值;6、通过键盘可查询任一点的温度值;7、通过键盘可设置温度报警的上下限,具有报警功能;8、采用LCD(或LED数码管)显示,内置时钟,可显示时间、日期;9、交流220V10供电。2 方案的论证2.1 传感器的选择要求对温度与温度相关的参量进行检测,应该考虑用热电阻传感器。按照电阻的性质可以分为半导体热电阻和金属热电阻两大类,前者通常称为热敏电阻,后者称为热电阻。方案一:采用热敏电阻,这种电阻是利用对温度敏感的半导体材料制成,其电阻随温度变化有
12、明显的改变。负温度系数热敏电阻器通常是由锰,钴的氧化物烧制成半导体陶瓷制成。其特点是,在工作温度范围内电阻阻值随温度的升高而降低。可满足测试范围,但热敏电阻精度,重复性,可靠性较差,不适用与检测小于1 的信号;而且线性度很差,不能直接用于单片机上,应该用硬件或软件对其进行线性化补偿。方案二:采用集成温度传感器,如DS18B20数字温度控制器。单线数字温度传感器DS18B20简介新的“一线器件”体积更小、适用电压更宽、更经济,数字化。一线总线独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。DS18B20“一线总线”数字化温度传感器,支持“一线总线”接口,测量温度范
13、围为 -55C+125C,现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性。适合于各种环境的现场温度测量,如:环境控制、设备或过程控制、测温类消费电子产品等。DS18B20可以程序设定912位的分辨率,分辨率设定,及可以设定的报警温度存储在 EEPROM中,掉电后依然保存。DS18B20使电压,特性及封装有更多的选择,让我们可以构建适合自己的经济的测温系统。并且应用电路电但便于设计。方案选择:选择方案二。理由:满足本毕业设计对温度测量范围,分辨率,误差范围的要求。且为单总线的数据传输,不需要A/D直接可以有单片机相连,电路简单可靠。2.2 主控制部分的选择方案一:此方案采用P
14、C机实现。它可在线编程,可在线仿真的功能,这让调试变得方便。且人机交互友好。但是PC机输出信号不能直接与DS18B20通信。需要通过RS232电平转换兼容,硬件的合成在线调试,较为繁琐,很不简便。而且在一些环境比较恶劣的场合,PC机的体积大,携带安装不方便,性能不稳定,给工程带来很多麻烦!方案二:此方案采用AT89C51八位单片机实现。单片机软件编程的自由度大,可通过编程实现各种各样的算术算法和逻辑控制。而且体积小,硬件实现简单,安装方便。既可以单独对多DS18B20控制工作,还可以与PC机通信.运用主从分布式思想,由一台上位机(PC微型计算机),下位机(单片机)多点温度数据采集,组成两级分布
15、式多点温度测量的巡回检测系统,实现远程控制。另外AT89C51在工业控制上也有着广泛的应用,编程技术及外围功能电路的配合使用都很成熟。方案选择:选择方案二。理由:AT89C51八位单片机可完成多点温度检测的巡检,切其编程技术及外围功能电路的配合使用都很成熟,符合设计要求。2.3 液晶显示方案简介字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式LCD,目前常用16*1,16*2,20*2和40*2行等的模块。下面以长沙太阳人电子有限公司的1602字符型液晶显示器为例,介绍其用法。一般1602字符型液晶显示器实物如图2.1所示:图2.1 1602字符型液晶显示器实物图2.3.1 160
16、2LCD的基本参数及引脚功能LCD1602分为带背光和不带背光两种,基控制器大部分为HD44780,带背光的比不带背光的厚,是否带背光在应用中并无差别,两者尺寸差别如下图2.2所示:图2.2 LCD1602尺寸图1602LCD主要技术参数:显示容量:162个字符芯片工作电压:4.55.5V工作电流:2.0mA(5.0V)模块最佳工作电压:5.0V字符尺寸:2.954.35(WH)mm引脚功能说明1602LCD采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如表1所示:表1:引脚接口说明表编号符号引脚说明编号符号引脚说明1VSS电源地9D2数据2VDD电源正极10D3数据3VL液
17、晶显示偏压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为高电平时可以
18、读忙信号,当RS为高电平R/W为低电平时可以写入数据。第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。第714脚:D0D7为8位双向数据线。第15脚:背光源正极。第16脚:背光源负极。2.3.2 1602LCD的指令说明及时序1602液晶模块内部的控制器共有11条控制指令,如表2所示:表2:控制命令表序号指令RSR/WD7D6D5D4D3D2D1D01清显示00000000012光标返回000000001*3置输入模式00000001I/DS4显示开/关控制0000001DCB5光标或字符移位000001S/CR/L*6置功能00001DLNF*7置字符发生存贮器地址00
19、01字符发生存贮器地址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:控制整体显示的开与关,高电平表示开
20、显示,低电平表示关显示 C:控制光标的开与关,高电平表示有光标,低电平表示无光标 B:控制光标是否闪烁,高电平闪烁,低电平不闪烁。指令5:光标或显示移位 S/C:高电平时移动显示的文字,低电平时移动光标。指令6:功能设置命令 DL:高电平时为4位总线,低电平时为8位总线 N:低电平时为单行显示,高电平时双行显示 F: 低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符。指令7:字符发生器RAM地址设置。指令8:DDRAM地址设置。指令9:读忙信号和光标地址 BF:为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。指令10:写数据。指令11:读数据。与HD4
21、4780相兼容的芯片时序表如表3下:表3:基本操作时序表读状态输入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=高脉冲输出无读写操作时序如图2.4和2.5所示:图2.4读操作时序图2.5 写操作时序2.3.3 1602LCD的RAM地址映射及标准字库表液晶显示模块是一个慢显示器件,所以在执行每条指令之前一定要确认模块的忙标志为低电平,表示不忙,否则此指令失效。要显示字符时要先输入显示字符地址,也就是告诉模块在哪里显示字符
22、,8是1602的内部显示地址。图2.6 1602LCD内部显示地址例如第二行第一个字符的地址是40H,那么是否直接写入40H就可以将光标定位在第二行第一个字符的位置呢?这样不行,因为写入显示地址时要求最高位D7恒定为高电平1所以实际写入的数据应该是01000000B(40H)+10000000B(80H)=11000000B(C0H)。在对液晶模块的初始化中要先设置其显示模式,在液晶模块显示字符时光标是自动右移的,无需人工干预。每次输入指令前都要判断液晶模块是否处于忙的状态。1602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,如图10-58所示,这些字符有:
23、阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是01000001B(41H),显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“A”2.4 系统总体设计方案根据以上的论证,确定本设计的总体设计方案。其是一个基于AT89C51单片机为主控芯片,DS18B20为温度传感器的职能多路监控检测系统,并加以复位电路,电源电路,时钟电路,键盘电路和报警电路共同构成了本设计,其整体框图如下图2.7所示:起振电路键盘电路LCD1602液晶显示单片机报警电路LED指示电路时钟电路温度检测电路图2.7:系统总体框图3 系 统 的
24、 硬 件 电 路 设 计3.1 DS18B20温度传感器电路3.1.1 传感器原理DS18B20数字温度传感器接线方便,封装成后可应用于多种场合,如管道式,螺纹式,磁铁吸附式,不锈钢封装式,型号多种多样,有LTM8877,LTM8874等等。主要根据应用场合的不同而改变其外观。封装后的DS18B20可用于电缆沟测温,高炉水循环测温,锅炉测温,机房测温,农业大棚测温,洁净室测温,弹药库测温等各种非极限温度场合。耐磨耐碰,体积小,使用方便,封装形式多样,适用于各种狭小空间设备数字测温和控制领域。DS18B20的测温原理如图7所示。图中低温度系数晶振的振荡频率受温度的影响很小,用于产生固定频率的脉冲
25、信号送给减法计数器1;高温度系数晶振随温度变化其振荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入。图中还隐含着记数门,当记数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲进行记数,进而完成温度测量。记数门的开启时间由高温度系数振荡器来决定,每次测量前首先将-55所对应的一个基数分别置入减法计数器1、温度寄存器中,减法计数器1和温度寄存器被预置在-55所对应的一个基数值。减法计数器1对低温度系数晶振产生的脉冲信号进行减法记数,当减法计数器1的预置值减到0时,温度寄存器的值将加1,减法计数器1的预置值将重新被装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行记数,如此
26、循环直到减法计数器2记数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值就是所测温度值。图3.1中的斜率累加器用语补偿和修正测温过程中的非线形性,其输出用于修正减法计数器的预置值,只要记数门仍未关闭就重复上述过程,直到温度寄存器值达到被测温度值。斜率累加器计数器1低温度系数振荡器预置比较=0温度寄存器计数器2=0高温度系数振荡器预置停止 图3.1: DS18B20的测温原理图3.1.2 温度传感器连接DS18B20最大的特点是单总线数据传输方式,DS18B20的数据I/O均由同一条线来完成硬件连接电路如图3.2所示:AT89C51DS18B201#DS18B202#DS18B203#DS
27、18B2020#VCC=5V4.7K1WIRE图3.2 温度测试连接电路本系统为多点温度测试。DS18B20采用外部供电方式,理论上可以在一根数据总线上挂256个DS18B20,但时间应用中发现,如果挂接25个以上的DS18B20仍旧有可能产生功耗问题。另外单总线长度也不宜超过80M,否则也会影响到数据的传输。在这种情况下我们可以采用分组的方式,用单片机的多个I/O来驱动多路DS18B20。在实际应用中还可以使用一个MOSFET将I/O口线直接和电源相连,起到上拉的作用。2. 对DS18B20的设计的注意事项(1)对硬件结构简单的单线数字温度传感器DS18B20 进行操作,需要用较为复杂的程序
28、完成。编制程序时必须严格按芯片数据手册提供的有关操作顺序进行,读、写时间片程序要严格按要求编写。尤其在使用DS18B20 的高测温分辨力时,对时序及电气特性参数要求更高。(2)有多个测温点时,应考虑系统能实现传感器出错自动指示,进行自动DS18B20 序列号和自动排序,以减少调试和维护工作量。(3)测温电缆线建议采用屏蔽4 芯双绞线,其中一对线接地线与信号线,另一组接VCC和地线,屏蔽层在源端单点接地。DS18B20 在三线制应用时,应将其三线焊接牢固;在两线应用时,应将VCC与GND接在一起,焊接牢固。若VCC脱开未接,传感器只送85.0 的温度值。(4)实际应用时,要注意单线的驱动能力,不
29、能挂接过多的DS18B20,同时还应注意最远接线距离。另外还应根据实际情况选择其接线拓扑结构。3.2 单片机电路3.2.1 MCS-51系列单片机内部结构与外部引脚说明51系列单片机的内部结构框图如图3.3所示。图3.3 MCS-51单片机内部结构框图从图3.4中可看出,1单片机组成结构中包含运算器、控制器、片内存储器、4个I/O口、串行口、定时器/计数器、中断系统、振荡器等功能部件。图中SP是堆栈指针寄存器,PC是程序计数器,PSW是程序状态字寄存器,DPTR是数据指针寄存器。图3.4 单片机的外部引脚图AT89C51单片机的外部引脚图如图3.3。1主电源引脚VCC(40脚):接+5 V电源
30、正端。GND(20脚):接电源地端。2外接晶体引脚XTAL1(19脚):接外部石英晶体的一端。在单片机内部,它是一个反相放大器的输入端,这个放大器构成了片内振荡器。当采用外部时钟时,对于HMOS单片机,该引脚接地;对于CHMOS单片机,该引脚作为外部振荡信号的输入端。3输入 / 输出引脚(1) P0口(3932脚):P0.0P0.7统称为P0口。在不接片外存储器与不扩展I/O口时,可作为准双向输入/输出口。在接有片外存储器或扩展I/O口时,P0口分时复用为低8位地址总线和双向数据总线。(2) P1口(18脚):P1.0P1.7统称为P1口,可作为准双向I/O口使用。对于51子系列,P1.0与P
31、1.1还有第二功能:P1.0可用作定时器/计数器2的计数脉冲输入端T2,P1.1可用作定时器/计数器2的外部控制端T2EX。(3) P2口(2128脚):P2.0P2.7统称为P2口,一般可作为准双向I/O口使用;在接有片外存储器或扩展I/O口且寻址范围超过256字节时,P2口用作高8位地址总线。(4) P3口(1017脚):P3.0P3.7统称为P3口。除作为准双向I/O口使用外,还可以将每一位用于第二功能,而且P3口的每一条引脚均可独立定义为第一功能的输入输出或第二功能。3.2.2 复位电路当5l系列单片机的复位引脚RST(全称RESET)出现2个机器周期以上的高电平时,单片机就执行复位操
32、作。如果RST持续为高电平,单片机就处于循环复位状态。具体电路如图3.5所示:图3.5:复位电路3.2.3 时钟电路的设计 图3.6 MCS-5l系列单片机时钟电路(a)内部时钟电路 (b)外部振荡源本系统采用内部时钟方式来为系统提供时钟信号。单片机内部有一个用于构成振荡器的高增益反向放大器,该放大器的输入输出引脚为XTAL1和XTAL2,它们跨接在晶体振荡器和用于微调的电容,便构成了一个自激励振荡器。如图3.6所示:本设计的时钟电路如图3.7所示:图3.7:时钟电路3.3 报警电路在微型计算机控制系统中,为了安全生产,对于一些重要的参数或系统部位,都设有紧急状态报警系统,以便提醒操作人员注意
33、,或采取紧急措施。其方法就是把计算机采集的数据或记过计算机进行数据处理、数字滤波,标度变换之后,与该参数上下限给定值进行比较,如果高于上限值(或低于下限值)则进行报警,否则就作为采样的正常值,进行显示和控制。硬件电路如图3.8所示:图3.8:报警电路3.4 显示电路在日常生活中,我们对液晶显示器并不陌生。液晶显示模块已作为很多电子产品的通过器件,如在计算器、万用表、电子表及很多家用电子产品中都可以看到,显示的主要是数字、专用符号和图形。在单片机的人机交流界面中,一般的输出方式有以下几种:发光管、LED数码管、液晶显示器。发光管和LED数码管比较常用,软硬件都比较简单,液晶显示器的主要有1286
34、4和1602,由于本系统设计不需要显示过多的字符,所以用1602足以,LCD1602液晶屏仿真电路如图3.9所示:图3.9:显示硬件电路3.5 键盘电路键盘在单片机应用系统中,实现输入数据、传送命令的功能,是人工干预的主要手段。键盘分两大类:编码键盘和非编码键盘。 编码键盘:由硬件逻辑电路完成必要的键识别工作与可靠性措施。每按一次键,键盘自动提供被按键的读数,同时产生一选通脉冲通知微处理器,一般还具有反弹跳和同时按键保护功能。这种键盘易于使用,但硬件比较复杂,对于主机任务繁重之情况,采用8279可编程键盘管理接口芯片构成编码式键盘系统是很实用的方案。 非编码键盘:只简单地提供键盘的行列与矩阵,
35、其他操作如键的识别,决定按键的读数等仅靠软件完成,故硬件较为简单,但占用CPU较多时间。有:独立式按键结构、矩阵式按键结构。本设计键盘电路主要包括温度和日历时钟的切换电路,循环显示和查询显示的切换电路和按键的查询电路以及上下限的设定电路构成,其中温度和日历时钟的切换电路如图3.10所示:图3.11:温度时钟切换及调整电路查询和轮流循环显示切换电路如图3.12所示:图3.12; 查询和轮流循环显示切换电路上下限设定电路如图3.13所示:图3.13:上下限的切换和设定电路3.6 电源电路220V交流电转5V稳压电源设计如图3.14所示:图3.14:电源电路设计从图上看,变压器输入端经过一个保险连接
36、电源插头,如果变压器或后面的电路发生短路,保险内的金属细丝就会因大电流引发的高温溶化后断开。变压器后面由4个二极管组成一个桥式整流电路,整流后就得到一个电压波动很大的直流电源,所以在这里接一个330uF/25V的电解电容。 变压器输出端的9V电压经桥式整流并电容滤波,在电容C1两端大约会有11V多一点的电压,假如从电容两端直接接一个负载,当负载变化或交流电源有少许波动都会使C1两端的电压发生较大幅度的变化,因此要得到一个比较稳定的电压,在这里接一个三端稳压器的元件。 三端稳压器是一种集成电路元件,内部由一些三极管和电阻等构成,在分析电路时可简单的认为这是一个能自动调节电阻的元件,当负载电流大时
37、三端稳压器内的电阻自动变小,而当负载电流变小时三端稳压器内的电阻又会自动变大,这样就能保持稳压器的输出电压保持基本不变。 因为我们要输出5V的电压,所以选用7805,7805前面的字母可能会因生产厂家不同而不同。LM7805最大可以输出1A的电流,内部有限流式短路保护,短时间内,例如几秒钟的时间,输出端对地(2脚)短路并不会使7805烧坏,当然如果时间很长就不好说了,这跟散热条件有很大的关系。 三端稳压器后面接一个105的电容,这个电容有滤波和阻尼作用。最后在C2两端接一个输出电源的插针,可用于与其它用电器连接,比如MP3等,本设计就是就可以用本电路的供电电压。通过本章的介绍,基本上完成了本设
38、计的硬件设计和所用芯片的准备工作,下面将用Protues仿真硬件,keil编写软件,共同完成系统的仿真设计。4 系 统 软 件 实 现 和 整 体 调 试4.1 软件环境介绍AT89C51具有在线调试和下载功能,它由支持AT89C51的开发工具包Keil uVersion2.0开发系统来提供。Keil uVersion2.0编译器可在Windows操作系统下直接使用,编译汇编源程序,并生成16进制文件和列表文件。串行下载器是一个软件程序,它允许通过标准PC机上的串口串行下载汇编程序到片内8kB的闪速程序存储器中。调试器采用Windows系统,允许用户使用AT89C51的UART串行接口在芯片上
39、调试代码执行。Protues软件是英国Labcenter electronics公司出版的EDA工具软件。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿真单片机及外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、P
40、IC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年即将增加Cortex和DSP系列处理器,并持续增加其他系列处理器模型。所以,本设计在、用protues对硬件及外围电路进行仿真,用keil C51作为软件平台,编写程序,与protues一起联合调试。4.2 软硬件结合调试本设计软件流程图如图4.1所示:初始化键盘扫描在液晶上一组4个温度循环显示根据查询结果显示YN键盘扫描,日历时钟调整是否低于最低温/高于高温?键盘扫描?Y时钟温度切换标志循环/查询切换标志YN日历时钟显示报警N图4.1:软件流程图通过上述准备工作后,在protues硬件
41、仿真平台和keil软件仿真平台上联合调试,效果如下所示:当按键处于温度显示状态,并且要求循环显示时,仿真图如图4.2所示:图4.2:循环显示状态效果图当按键处于温度显示状态,并且要求查询显示时,假设现在要查询的是第一路的信号,仿真图如图4.3所示:图4.3:查询显示状态效果图点击进入上下限设定界面,其中temp1为设定温度的上限,temp2为设定温度的下限,设定界面如图4.4所示:图4.4:温度上下限设定当按键处于日历时钟状态时,仿真效果如图4.5所示:图4.5:日历时钟显示效果图当温度正常的情况下,绿灯亮,表示温度在正常范围内,此时蜂鸣器不响,仿真效果如图4.6所示:图4.6:正常状态下仿真
42、效果图当温度高于上限或者低于下限,绿灯灭,表示温度不正常,此时蜂鸣器响,仿真效果如图4.7所示:图4.7:非正常状态下仿真效果图本设计的整体设计电路图如图4.8所示:图4.9:本设计整体框图通过本章的设计仿真,表明本设计真实可行,可以实现日期时钟的显示,并且可以调整时钟和时间,可以实现对8点温度的测量,并且可以实现8点的循环显示和单点的查询显示,可以设定温度的上下限,温度测量范围10105,显示分辨率0.1,测温误差根据传感器误差范围小于0.5,达到了设计要求具有很好的实际应用价值。结 论本系统研制历时近半年,通过和老师、同学充分合作共同努力已完成并验收。在进行毕业设计的时间里,主要完成的内容
43、有,在领悟设计任务的基础上查找并学习文献资料,借鉴已有是设计思路,逐渐构思出设计的各个模块,然后进行元器件的比较与选择,在对不同实现方案的论证与比较中选择合适的方案进行详细设计,最终确定设计以AT89C51单片机和18B20温度传感器为基础的温度监控系统,并运用C语言进行单片机编程,最后通过软硬件的配合实现了具有报警功能的基于单片机的多路温度监控系统设计。本系统能对多点温度进行检测,具有的功能有:1、度测量范围:10105;2、 测量误差较小;3、轮显检测点的组、点号和对应的温度值;4、通过键盘可查询任一点的温度值;5、通过键盘可设置温度报警的上下限,具有报警功能,6、采用LCD(或LED数码
44、管)显示,内置时钟,可显示时间、日期同时也由于能力和时间的关系,还有很多不尽人意可以进一步改进的地方,比如功能简单,设计粗糙,程序代码不规范等一系列问题,这些都有待于提高和改进。在此过程中,要衷心感谢导师的精心指导,同学舍友的无私帮助和朋友家人的关心照顾。这次毕业论文的设计经历同样使我受益匪浅,其中的收获与体验将激励我在今后的学习工作中不断进步。致 谢历时将近半年的时间终于将这篇论文写完,在论文的写作过程中遇到了无数的困难和障碍,都在同学和老师的帮助下度过了。尤其要强烈感谢我的论文指导老师xx老师,他对我进行了无私的指导和帮助,不厌其烦的帮助进行论文的修改和改进。另外,在校图书馆查找资料的时候
45、,图书馆的老师也给我提供了很多方面的支持与帮助。在此向帮助和指导过我的各位老师表示最中心的感谢!感谢这篇论文所涉及到的各位学者。本文引用了数位学者的研究文献,如果没有各位学者的研究成果的帮助和启发,我将很难完成本篇论文的写作。感谢我的同学和朋友,在我写论文的过程中给予我了很多你问素材,还在论文的撰写和排版灯过程中提供热情的帮助。由于我的学术水平有限,所写论文难免有不足之处,恳请各位老师和学友批评和指正!参考文献1 徐大诚,微型计算机控制技术及应用.高等教育出版社,2003年2 李朝青,单片机原理及接口技术.北京航空航天大学出版社,2003年3 康华光,电子技术基础模拟部分(第五版), 2006年4 姜忠良,陈秀云 .温度的测量与控制.清华大学出版社.2005:232-2465 Doebelin,F.O.Measurement Systems Application and Design.机械工业出版社,20056 何希才,任力颖,杨静