欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    基于PROTUES的多点测温设计.doc

    • 资源ID:2884808       资源大小:491.50KB        全文页数:41页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    基于PROTUES的多点测温设计.doc

    摘 要环境温度对工业、农业、商业和人们的日常生活都有很大的影响,而温度的测量也就成为人们生产生活中一项必不可少的工作。传统的测温仪测量费时,准确度也较低,数字温度计与传统的温度计相比,具有读数方便,测温范围广,测温准确,其输出温度采用数字显示。本文介绍了PROTEUS软件进行单片机系统开发的过程,并在PROTEUS 环境下完成了基于DS18B20 的多路温度采集系统的仿真设计。该系统可以完成温度的测量和显示以及限报警等功能。本研究证明,在PROTEUS环境下可以完成单片机系统的硬件设计和软件调试,测试系统的性能,在实际应用中可以降低设计成本,缩短开发周期,提高效率。关键词:单片机;DS18B20;PROTEUS;多点数字温度计AbstractThe ambient temperature has a great impact on industry, agriculture, business and people's daily lives, and temperature measurement has become an essential work for people to produce life. Traditional thermometer measuring time-consuming,accuracy is also low,digital thermometer compared with the traditional thermometer,with easy reading,temperature wide range, accurate temperature measurement, the output temperature digital display.The development of MCU system includes hardware designs and software designs. The traditional method is directly use simulators to test on hardware. Hardware circuits need to be changed and retested when hardware circuits do not meet the requirements of the design. By using PROTEUS , the simulation and design of MCU systems can be realized , by which the design costs can be much more decreased , development cycles could be shorted too , and efficiency is enhanced. Under the PROTUER circumstances, this paper successful finished the simulation and design of 4-channel temperature acquisition system based on PROTUES, which tested the advantages of the development of MCU system based on PROTUES.Key words: MCU; DS18B20; PROTEUS; Multi-point digital thermometer目 录第1章 概 述31.1 选题背景41.2课题相关技术的发展41.3课题研究的必要性51.4 课题研究的内容51.5 编译开发软件51.6 PROTEUS仿真软件6第2章 系统总体方案设计72.1引言72.2系统概述82.3硬件电路介绍82.3.1单片机82.3.2复位电路92.3.3时钟振荡电路102.3.4显示电路102.3.5数字温度传感器DS162111第3章 系统软件设计143.1温度检测程序153.2 LCD显示模块程序163.3报警模块程序18第4章 系统调试与仿真184.1 程序编译194.2 Proteus原理图绘制194.3仿真结果224.4总结22结论23参考文献24致 谢26附 录26第1章 概 述单片机是一种集成电路芯片,现代人类生活中所用的几乎每件有电子器件的产品中都会集成有单片机。手机、计算器、家用电器、电子玩具、掌上电脑以及鼠标等电子产品中都含有单片机。现代工业设计快速发展对产品的设计研发需求越来越大,质量要求越来越高。电子设计自动化(electronic design automatic,EDA)技术则解决了上述的问题。本设计采用的Proteus软件是英国Lab Center Electronics公司出版的EDA工具软件。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前比较好的仿真单片机及外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。它具有仿真与分析功能,可将产品开发中存在的问题消灭在萌芽中;从而减少开发风险;软硬件的交互仿真与测试大大减少后期测试工作量;便利项目管理与团队开发等优点。温度是一个和人们生活环境有着密切关系的物理量,也是一种在生产、科研、生活中需要测量和控制的重要物理量。随着现代计算机和自动化技术的发展,作为各种信息的感知、采集、转换、传输相处理的功能器件,温度传感器的作用日益突出,尤其是多点测温已经成为自动检测、自动控制系统和计量测试中不可缺少的重要技术工具,其应用已遍及工农业生产和日常生活的各个领域。本设计就是为了满足人们在生活生产中对多点温度测量系统方面的需求。1.1 选题背景本文将从PROTEUS软件与多点测温系统的设计出发,通过对该技术发展状况的了解,以及课题本身的需要,指出研究基于PROTEUS软件的多点测温系统的设计与实现的必要性。1.2课题相关技术的发展当今电子产品正向功能多元化,体积最小化,功耗最低化的方向发展,单片机的大量应用使产品的性能提高,体积缩小,功耗降低。同时广泛运用现代计算机技术,提高产品的自动化程度和竞争力,缩短研发周期。EDA技术正是为了适应现代电子技术的要求,吸收众多学科最新科技成果而形成的一门新技术。英国Labcenter公司开发的电路分析与仿真软件Proteus自1989 年问世至今,经历了近20年的发展历史,功能得到了不断的完善,性能越来越好,全球的用户也越来越多。PROTEUS之所以在全球得到应用,原因是它具有自身的特点和结构。PROTEUS电子设计软件由原理图输入模块(简称ISIS)、混合模型仿真器、动态器件库、高级图形分析模块、处理器仿真模型及PCB板设计编辑(简称ARES)六部分组成,具有系统的测试简便、交互仿真、硬件设计的改动容易等优点。本设计利用PROTEUS软件进行硬件仿真,并在电脑上直接得到仿真结果结果。许多人在学习单片机时是直接利用硬件进行学习,耗时费力,且花费昂贵,往往一个步进电机或者一个传感器就价格不菲,还有损坏的风险。而利用PROTEUS就能避免这些问题。它具有易学,方便,新颖,有趣,直观,设计与实验项目成功率高,理论与实践结合紧密,不受硬件限制等特点,并且它还具有开放的界面,丰富的元件库等优良性能,应用非常方便。因此,本设计的实验结果采用PROTEUS实现。1.3课题研究的必要性本文主要是对多点测温系统进行设计和研究,主要利用单片机、DS18B20温度传感器进行对四个点的温度测量,利用LCD1602液晶显示屏直观的显示出来,具有上下限的温度报警功能。并利用Keil软件对单片机程序进行编译,并在PROTEUS软件里进行仿真,分析多点测温系统的优势。1.4 课题研究的内容本设计主要研究基于PROTEUS仿真模拟的多点测温系统,要求对4个温度不同的点进行测量,并用LCD1602液晶在显示屏同时显示出来,四个测温点可以设定温度报警的最高值和最低值,当任意一检测点的温度超过限额的温度就会进行报警。1.5 编译开发软件Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部分组合在一起。Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。下面详细介绍Keil C51开发系统各部分功能和使用。C51工具包的整体结构,uVision与Ishell分别是C51 for Windows和for Dos的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用IDE本身或其它编辑器编辑C或汇编源文件。然后分别由C51及C51编译器编译生成目标文件(.OBJ)。目标文件可由LIB51创建生成库文件,也可以与库文件一起经L51连接定位生成绝对目标文件(.ABS)。ABS文件由OH51转换成标准的Hex文件,以供调试器dScope51或tScope51使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如EPROM中。Keil的优点在于Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。并且与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用C来开发,体会更加深刻。Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。1.6 PROTEUS仿真软件本次设计使用的是 Proteus 仿真软件。Proteus 是英国Labcenter 公司开发的电路分析与仿真软件,用于仿真、分析各种模拟器件和集成电路,该软件的特点是:1、实现了单片机仿真和Spice电路仿真相结合。具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS232动态仿真、I2C 调试器、SPI 调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。2、支持主流单片机系统的仿真。目前支持的单片机类型有:68000 系列、8051系列、AVR 系列、PIC12 系列、PIC16 系列、PIC18 系列、Z80 系列、HC11 系列以及各种外围芯片。3、提供软件调试功能。在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须具有这些功能; 同时支持第三方的软件编译和调试环境, 如Keil等软件。4、具有强大的原理图绘制功能。启动Proteus 后将出现ISIS 的设计窗口。包括:标题栏、主菜单、标准工具栏、绘图工具栏、状态栏、对象选择按钮、预览对象方位控制按钮、仿真进程控制按钮(最下面一行)、预览窗口、对象选择器窗口、图形编辑窗口。Proteus与其它单片机仿真软件不同的是,它不仅能仿真单片机CPU 的工作情况, 也能仿真单片机外围电路或没有单片机参与的其它电路的工作情况。因此在仿真和程序调试时, 关心的不再是某些语句执行时单片机寄存器和存储器内容的改变, 而是从工程的角度直接看程序运行和电路工作的过程和结果。对于这样的仿真实验, 从某种意义上讲, 是弥补了实验和工程应用间脱节的矛盾和现象。同时, 当硬件调试成功后, 利用Proteus ARES 软件, 很容易获得其PCB 图,为今后的制造提供了方便。第2章 系统总体方案设计2.1引言随着计算科学的迅速发展,设计一个数字温度计的方法也变的多种多样。可以用ARM,有的基于数字电路,有的则是利用CPLD设计温度计,像这样的设计很多,而本设计所选择的方案是利用单片AT89C52 来设计一个简单的多点数字温度计。2.2系统概述此设计介绍的数字温度计与传统的温度计相比,具有读数方便,测温范围广,单片机时钟电路LCD显示温度检测电路复位电路测温准确的优点。控制器使用的是单片机AT89C52,测温传感器使用的是DS18B20,LCD液晶显示屏实现温度显示。系统构成如图:图 2-1 系统框图2.3硬件电路介绍2.3.1单片机单片机采用美国ATMEL公司生产的AT89C52 单片机。AT89C52是一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程Flash 存储器。AT89C52使用Atmel 公司高密度非易失性存储器技术制造,与工业89C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,AT89C52拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。AT89C52主要功能参数:1、兼容MCS51指令系统2、8k可反复擦写(大于1000次)Flash ROM;3、32个双向I/O口;4、256x8bit内部RAM;5、3个16位可编程定时/计数器中断;6、时钟频率0-24MHz;7、2个串行中断,可编程UART串行通道;8、2个外部中断源,共8个中断源;9、2个读写中断口线,3级加密位;10、低功耗空闲和掉电模式,软件设置睡眠和唤醒功能;11、有PDIP、PQFP、TQFP及PLCC等几种封装形式,以适应不同产品的需求。AT89C52 的引脚图如图2.1所示:图2-2 AT89C52引脚示意图2.3.2复位电路复位电路采用RC充电电路组成上电复位单片机电路,当系统上电时,在上电初期,电容C充电,使复位脚持续高电平,当C充电到达一定程度复位脚电位会慢慢变低,最后被电阻R 完全拉低,高电平复位的时间由充电的时间决定,充电时间又由R 与C 的阻值和容值之积决定。在复位输入端出现高电平的时候实现单片机复位和初始化。在振荡器运行的情况下,要实现复位操作,必须使复位脚至少保持两个机器周期(24 个振荡周期)的高电平。CPU 在第二个机器周期内执行内部复位操作,以后每个机器周期重复一次,直到复位端电平变低。复位期间不产生ALE 和PSEN 信号。内部复位操作使得堆栈指示器SP 为07H,各端口都为1(P0P3 口全部都是0FFH)。特殊功能寄存器都复位为0,但不影响内部RAM 的状态,当RST 脚返回低电平以后,CPU 从0 地址开始执行程序。加电瞬间复位端的电位与 VCC 相同,随着RC 电路充电电流减小,复位端的电位逐渐下降。只要复位端保持10 豪秒以上的高电平就能使AT89C52 单片机有效的复位。复位电路中的RC 参数通常都由实验调整,当振荡频率选用12M 的时候,C选用20u电容,R选用1k,便能可靠地实现加电自动复位。若采用RC电路接斯密特电路的输入端,斯密特电路输出端接AT89C52 单片机和外围电路的复位端,能使系统可靠的同步复位。图 2-3 复位电路2.3.3时钟振荡电路AT89C52内部有一个用于构成震荡器的高增益反向放大器,此放大器的输入端和输出端分别是XTAL1和XTAL2,在XTAL1和XTAL2上外接晶振可构成时钟电路。时钟电路在单片机系统中起着非常重要的作用,是保证系统正常工作的基础。晶振频率的大小决定了单片机系统工作的快慢。本次设计采用内部方式的外部时钟接法。为达到振荡周期是12MHZ的要求,这里要采用12MHZ的晶振,电容C2、C3对频率有微调作用,故外接晶振时,C2和C3在本设计中选择20pF,振荡频率取12MHz。晶振的两个引脚分别连到XTAL1和XTAL2振荡脉冲输入引脚。具体连接图如图所示:图2-4 时钟振荡电路2.3.4显示电路显示屏是最常用的输出设备。特别是发光二极管显示器(LED)和液晶显示器(LCD),由于结构简单,价格便宜,接口容易等特点得到广泛的应用。尤其是单片机系统中大量使用。本设计选用的LCD1602液晶显示屏,1602LCD微功耗、体积小、显示内容丰富、超薄轻巧,常用在袖珍式仪表和低功耗应用系统中。1602液晶也叫1602字符型液晶它是一种专门用来显示字母、数字、符号等的点阵型液晶模块它有若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符。每位之间有一个点距的间隔每行之间也有间隔起到了字符间距和行间距的作用,正因为如此所以他不能显示图形。1602LCD是指显示的内容为16X2,即可以显示两行,每行16个字符液晶模块(显示字符和数字)。目前市面上字符液晶绝大多数是基于HD44780液晶芯片的,控制原理是完全相同的,因此基于HD44780写的控制程序可以很方便地应用于市面上大部分的字符型液晶。1602LCD特性:1、+5V电压,对比度可调2、内含复位电路3、提供各种控制命令,如:清屏、字符闪烁、光标闪烁、显示移位等多种功能4、有80字节显示数据存储器DDRAM5、内建有192个5X7点阵的字型的字符发生器CGROM6、8个可由用户自定义的5X7的字符发生器CGRAM图2-6 1062LED2.3.5数字温度传感器DS1621DS1621是DALLAS公司生产的一种功能较强的数字式温度传感器和恒温控制器。与同系列的DS1620相比控制更为简单,接口与I2C总线兼容,且可以使用一片控制器控制多达8片的DS1621。其数字温度输出达9位,精度为0.5。通过读取内部的计数值和用于温度补偿的每摄氏度计数值,利用公式计算还可提高温度值的精度。DS1621可工作在最低2.7V电压下,适用于低功耗应用系统。利用DS1621和一片2051单片机即可构成一个简洁但功能强大的低电压温度测量控制系统。DS1621基本特性:DS1621无需外围元件即可测量温度,将结果以9位数字量(两字节传输)给出,测量范围为55155,精度为0.5;典型转换时间为1s;用户可自行设置恒温计的温度值,且将该设置值存储在非易失存储器中。数据的读出和写入通过一个2线串行接口完成,DS1621采用8脚DIP或SOIC封装。DS1621的引脚描述如下所示:引脚符号描述1SDA2-线串行数据输入/输出端2SCL2-线串行时钟端3Tout恒温计输出端。当温度超过TH时置位,当温度降到TL之下是复位4GND接地端5A2片选地址输入A26A1片选地址输入A17A0片选地址输入A08Vdd电源端DS1621的工作方式:DS1621既可独立工作(此时作为恒温控制器),也可通过2线接口在MPU的控制下完成温度的测量和计算。DS1621的工作方式是由片上的设置/状态寄存器来决定的,该寄存器的定义如下:其中DONE为转换完成位,温度转换结束时置1,正在进行转换时为0;THF为高温标志位,当温度超过TH预置值时置1;TLF为低温标志位,当温度低于TL预置值时置1;NVB为非易失存储器忙位,向片内E2PROM写入时置1,写入结束后复位写入E2PROM通常需要10ms;PCL为输出极性位,为1时激活状态为逻辑高电平,为0时激活状态为逻辑低电平,该位是非易失的;1SHOT为一次模式位,该位为1时每次收到开始转换命令执行一次温度转换,为0时执行连续温度转换,该位亦是非易失的。DS1621在嵌入一个系统前,需由MPU将设置/状态寄存器值通过2线接口写入该寄存器,之后DS1261或作为恒温计独立工作,或在MPU控制下进行温度测量和计算。MPU对DS1621的控制和写入是通过2线接口进行数据传输的,MPU对DS1621发命令字,之后完成对DS1621的读或写。由于数据传输协议满足I2C总线规范,MPU可将DS1621作为具有I2C总线接口的从器件对待,器件地址为1001A2A1A0R/W,通过A2A1A0编码,一次可控制最多8片DS1621,完成8点温度采样。写入和读出数据格式和时序完成按串行通讯接口规范,SCL和SDA线满足串口通讯启动条件,MPU发出器件地址字节,其中R/W决定读/写方向。MPU发出DS1621的命令字,DS1621发出ACK信号,之后为从器件的数据字节,主器件的ACK信号,最后为串口通讯结束条件,完成一次数据通讯。DS1621的命令集包含DONE、THF、TLF、NVB、1、0、PCL、1SHOT 8个命令字:读温度命令AAh该命令读出最近一次温度转换的结果。DS1621将送出两字节数据:第一字节为8位二进制温度值(摄氏温度),该数据以二进制补码形式给出,其中最高位为温度符号位(0为高于0,1为低于0),第二字节最高位为精度位(0为0.0,1为0.5),其余位不用。读写TH寄存器命令A1h若R/W为0,该命令写入高温寄存器TH,之后MPU发出两字节温度上限值以确定DS1621的恒温上限;若R/W为1,DS1621送出两字节的TH寄存器值。读写TL寄存器命令A2h若R/W为0,该命令写入低温寄存器TL,之后MPU发出两字节温度下限值以确定DS1621的恒温下限;若R/W为1,DS1621送出两字节的TL寄存器值。读写设置命令ACh若R/W为0,该命令写入设置/状态寄存器,之后MPU发出一字节设置/状态寄存器值以确定DS1621的工作方式;若R/W为1,DS1621送出设置/状态寄存器值。读计数器命令A8h该命令只在R/W为1时有效,发出命令后,DS1621送出计数器计数值COUNT_REMAIN。读斜率命令A9h该命令只在R/W为1时有效,发出命令后,DS1621送出用于温度补偿的斜率计数器值,即前面提到的每摄氏度计数值COUNT_RER桟。开始温度转换命令EEh该命令启动温度转换,无需更多数据。在一次工作方式下,该命令启动转换,DS1621完成之后保持空闲;在连续工作方式下,该命令启动DS1621连续进行温度转换。结束温度转换命令22h该命令结束温度转换,无需更多数据。在连续工作方式下,该命令停止DS1621的温度转换,之后DS1621保持空闲直到MPU发出新的开始温度转换命令来继续温度转换。通过该命令集可以看出,DS1621既可以作为独立的恒温控制器单独工作(利用命令A1h、A2h、ACh),也可以进行实时的温度测量(利用命令AAh、ACh、EEh、22h,精度为0.5),还可配合命令A8h、A9h,通过软件计算得到更高的温度精度,计算公式为:T=TR0.25(NM)/N式中,T2为读出温度值,N为计数器计数值COUNT_RER_C,M为每摄氏度计数值COUNT_REMAIN。第3章 系统软件设计多点测温系统采用四个点进行温度检测,并采用并行连接BS18B20的方式进行设计。这种并行操作的最大好处就是节省时间,其查询多个DS18B20器件操作所消耗的时间与查询单个DS18B20器件操作所消耗的时间是一样的,从而达到了快速多点测温的目的,能够满足对实时性要求较高的温度测量系统的设计需求。同时,由于这种操作方法并不涉及DS18B20 的序列号问题,因而省掉了烦琐的读取与匹配序列号的操作过程,程序的设计、编写、调试也变得较为简单些,有利于缩短产品的研制开发周期,使得利用DS18B20进行多点测温的操作变得更方便、容易。系统程序主要包括温度检测模块,温度报警模块,显示数据模块等。3.1温度检测程序主要功能是负责温度的实时显示,读出并处理当前DS1621的温度void ds1820rst_1()/*ds1820复位*/ uchar x=0; DQ1 = 1; /DQ复位 delay_18B20(4); /延时 DQ1 = 0; /DQ拉低 delay_18B20(100); /精确延时大于480us DQ1 = 1; /拉高 delay_18B20(40); uchar ds1820rd_1()/*读数据*/ uchar i=0; uchar dat = 0; for (i=8;i>0;i-) DQ1 = 0; /给脉冲信号 dat>>=1; DQ1 = 1; /给脉冲信号 if(DQ1) dat|=0x80; delay_18B20(10); return(dat); void ds1820wr_1(uchar wdata)/*写数据*/ uchar i=0; for (i=8; i>0; i-) DQ1 = 0; DQ1 = wdata&0x01; delay_18B20(10); DQ1 = 1; wdata>>=1; read_temp_1()/*读取温度值并转换*/ uchar a,b; ds1820rst_1(); ds1820wr_1(0xcc);/*跳过读序列号*/ ds1820wr_1(0x44);/*启动温度转换*/ ds1820rst_1(); ds1820wr_1(0xcc);/*跳过读序列号*/ ds1820wr_1(0xbe);/*读取温度*/ a=ds1820rd_1(); b=ds1820rd_1(); tvalue=b; tvalue<<=8; tvalue=tvalue|a; if(tvalue<0x0fff) tflag=0; else tvalue=tvalue+1; tflag=1; tvalue=tvalue*(0.625);/温度值扩大10倍,精确到1位小数return(tvalue); 3.2 LCD显示模块程序LCD显示模块程序主要对温度传感器对温度进行转换后在LCD液晶屏上显示:void ds1820disp_1()/温度值显示 uchar flagdat; disdata0=tvalue/1000+0x30;/百位数 disdata1=tvalue%1000/100+0x30;/十位数 disdata2=tvalue%100/10+0x30;/个位数 disdata3=tvalue%10+0x30;/小数位 if(tflag=0) flagdat=0x20;/正温度不显示符号,温度检测只对正温度有效,以防出错 if(tvalue/10>TH) speak=0; else if(tvalue/10<TL) speak=0; else speak=1; else flagdat=0x2d;/负温度显示负号:- if(disdata0=0x30) disdata0=0x20;/如果百位为0,不显示 if(disdata1=0x30) disdata1=0x20;/如果百位为0,十位为0也不显示 write_com(0x80); write_date('1');/显示通道 write_com(0x81); write_date(flagdat);/显示符号位 write_com(0x82); write_date(disdata0);/显示百位 write_com(0x83); write_date(disdata1);/显示十位 write_com(0x84); write_date(disdata2);/显示个位 write_com(0x85); write_date(0x2e);/显示小数点 write_com(0x86); write_date(disdata3);/显示小数位 write_com(0x87); write_date('C'); 3.3报警模块程序报警模块程序是对检测温度进行判断,如果超出设定范围就会触发报警:if(tvalue/10>TH) speak=0; else if(tvalue/10<TL) speak=0; else speak=1; 初始的温度设定是60以上、0-10会进行报警,可以通过修改程序:uchar tflag,TH=60,TL=10;来自行设置需要的温度。第4章 系统调试与仿真4.1 程序编译 启动keil,建立一个新的工程并选择路径保存,之后选择单片机型号为Atmel的AT89C52。工程建立完之后,新建一个文件ds1621.c保存并添加到工程下,同时添加显示屏程序1602.h。以上完成之后再ds1621.c中输入源程序并调试程序。调试完成之后点击project菜单下的Options For Target Target 1“单击“Output”中选择“Create HEX File”选项,是程序编译后产生HEX代码。4.2 Proteus原理图绘制1、双击ISIS图标,打开ISIS 7 Professional, 进入ISIS 7 Professional界面,如图2-1所示。Proteus ISIS的工作界面是一种标准的Windows界面,包括:标题栏、主菜单、标准工具栏、绘图工具栏、状态栏、对象选择按钮、预览对象方位控制按钮、仿真进程控制按钮、预览窗口、对象选择器窗口、图形编辑窗口。图4-1 ISIS 7 Professional界面2、选择文件/新建设计命令,选择DEFAULT模板点击确认按钮。图4-2 新建设计对话框3、选择库/拾取元件/符号命令,在关键字中填写要选择的元器件,然后在右边对话框中选中要选的元器件,则元器件列在对象选择的窗口。图4-3 元件库选择4、在对象选择的窗口点AT89C52,然后把鼠标指针移到右边的原理图编辑区的适当位置,点击鼠标的左键,就把AT89C52放到了原理图区。用同样的方法将对象窗口的其它元件放到原理图编辑区,单片机(AT89C52)、按键(BUTTON)、电容(CAP)、电阻(RES、RESPACK-8)、显示屏(LCD1602)、温度传感器(DS18B20)、晶振(CRYSTAL)等。所有元器件添加完成之后在PROTEUS编辑区中摆放各元器件并调整方向以及参数设置,最后进行连线。完成后如下图所示:图4-3 多点测温系统电路图5、选择源代码/添加/移除源代码命令,将编译程序导入。图4-4 添加程序4.3仿真结果图4-5 仿真结果图4-6 DS18B20温度设定值4.4总结由仿真结果可以看出,四路多点测温系统运行正常,可以进行正确的温度检测,调节DS18B20的温度超过限定额度可以及时发出警报。结论设计利用PROTEUS软件对多点测温系统进行仿真和实现,并根据仿真结果分析设计的存在的问题和缺陷,从而进行电路和程序的调试和完善。设计重在于电路的设计和各个模块代码的编写,电路的设计和各个模块的程序的编写,功能全部正常,具体果为:1、实现了四路并行多点测温,温度测量准确;2、可实现对温度限值的设定,通过对程序的改写可以设置上下限值;3、超过限额的温度会进行报警。经测试最终结果与预期效果基本一致,调整DS18B20的温度显示温度也会准确的测量,超过限额的温度可以进行及时的报警。参考文献1杨文龙单片机原理及应用系统设计M清华大学出版社,20112张文涛PROTEUS仿真软件应用M华中科技大学出版社,20103周润景、袁伟亭、景晓松.PROTEUS在MCS-51&ARM7系统中的应用百例M . 北京:电子工业出版社,2006:167183.4 李华.MCU-51系列单片机实用接口技术M,北京:北京航空航天大学出版社,1993. 6.5宋起超 赵洪涛.基于DSl8B20的多点温度巡回检测系统研制J.交通科技与经济,20076刘雪松 程显侠.新型温度传感器DS18B20高精度测温的实现J.微处理机 2002(2)7马云峰.单片机与数字温度传感器DS18B20的接口设计J.计算机测量与控制,2002(04)8郭天祥.新概念51单片机C语言教程入门、提高、开发、拓展全攻略.电子工业出版社M,20119林立、张俊亮、曹旭东.单片机原理及应用(基于Proteus和Keil C)M.北京:电子工业出版社,200910 魏伟、胡玮、王永清. 51单片机C语言开发与应用技术案例详解M.北京:化学工业出版社,201011沈长生常用电子元器件使用一读通M北京:人民邮电出版社200412童诗白、华成英模拟电子技术基础M北京: 高等教育出版社200013 On-Line Measure System of the Temperature in the Synthetic Ammonia Tower Based on the DS18B20 Temperature SensorC.Volume 1A.2009:102-104.14 Fen-Ping Zho

    注意事项

    本文(基于PROTUES的多点测温设计.doc)为本站会员(文库蛋蛋多)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开