数字温度计设计毕业论文1

上传人:无*** 文档编号:146508426 上传时间:2022-08-31 格式:DOC 页数:36 大小:1.50MB
返回 下载 相关 举报
数字温度计设计毕业论文1_第1页
第1页 / 共36页
数字温度计设计毕业论文1_第2页
第2页 / 共36页
数字温度计设计毕业论文1_第3页
第3页 / 共36页
点击查看更多>>
资源描述
摘 要随着国民经济的发展,人们需要对各中加热炉、热处理炉、反应炉和锅炉中温度进行监测和控制。采用单片机来对他们控制不仅具有控制方便,简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标,从而能够大大的提高产品的质量和数量。在日常生活及工业生产过程中,经常要用到温度的检测及控制,温度是生产过程和科学实验中普遍而且重要的物理参数之一。在生产过程中,为了高效地进行生产,必须对它的主要参数,如温度、压力、流量等进行有效的控制。温度控制在生产过程中占有相当大的比例。温度测量是温度控制的基础,技术已经比较成熟。传统的测温元件有热电偶和二电阻。而热电偶和热电阻测出的一般都是电压,再转换成对应的温度,这些方法相对比较复杂,需要比较多的外部硬件支持。我们用一种相对比较简单的方式来测量。 我们采用美国DALLAS半导体公司继DS18B20之后推出的一种改进型智能温度传感器DS18B20作为检测元件,温度范围为-55125 C,最高分辨率可达0.0625 C。DS18B20可以直接读出北侧温度值,而且采用三线制与单片机相连,减少了外部的硬件电路,具有低成本和易使用的特点。本文介绍一种基于AT89C52单片机的一种温度测量及报警电路,该电路采用DS18B20作为温度监测元件,测量范围0-+100,使用LED模块显示,能设置温度报警上下限。正文着重给出了软硬件系统的各部分电路,介绍了集成温度传感器DS18B20的原理,AT89C52单片机功能和应用。该电路设计新颖、功能强大、结构简单。关键词:温度测量;DS18B20;AT89C52 AbstractAlong with national economy development, the people need to each heating furnace、the heat-treatment furnace、in the reactor and the boiler the temperature carry on the monitor and the control. Not only uses the monolithic integrated circuit to come to them to control has the control to be convenient, simple and flexibility big and so on merits, moreover may enhance large scale is accused the temperature technical specification, thus can big enhance the product the quality and quantity.In daily life and industrial production process, often used in the detection and control of temperature, temperature is the production process and scientific experiments in general and one of the important physical parameter. In the production process, in order to efficiently carry out the production, to be its main parameters, such as temperature, pressure, flow control, etc. Temperature control in the production process of a large proportion. Temperature measurement is the basis of temperature-controlled, more mature technology.Traditional thermocouple and temperature components are the second resistor.The thermocouple and thermal resistance are generally measured voltage, and then replaced by the corresponding temperature, these methods are relatively complex, requiring a relatively large number of external hardware support. We use a relatively simple way to measure. We use the United States following DALLAS Semiconductor DS1820 improved after the introduction of a smart temperature sensor DS18B20 as the detection element, a temperature range of -55 125 C, up to a maximum resolution of 0.0625 C. DS18B20 can be directly read out the temperature on the north side, and three-wire system with single-chip connected to a decrease of the external hardware circuit, with low-cost and easy use.The introduction of a cost-based AT89C52 MCU a temperatur measurement circuits, the circuits used DS18B20 high-precision temperatur sensor, measuring scope 0-+100,can set the warning limitation, the use of seven segments LED that can be display the current temperature. The paper focuses on providing a software and hardware system components circuit, introduced the theory of DS18B20, the founctions and applications of AT89C52 .This circuit design innovative, powerful, can be expansionary strong.Keywords:Temperatur measurement; DS18B20; AT89C52目 录 目 录摘 要I目 录III第一章 绪论11.1课题背景及研究意义11.2 选题意义及设计要求11.2.1 选题意义11.2.2 设计要求11.3 设计方案论证2第二章 硬件设计52.1 AT89C52单片机的介绍52.2硬件电路的设计52.3 原理分析62.3.1 DS18B20的介绍62.3.2 时钟电路72.3.3 复位电路82.3.4 显示电路92.3.5 数码管驱动电路102.3.6 报警电路102.3.6 数字温度传感器11第三章 软件设计133.1软件设计方案13第四章 开发工具PROTEUS与KEIL174.1 Proteus软件174.1.1 Proteus简介174.1.2 ISIS智能原理图输入系统174.2 Keil软件184.2.1 Keil软件简介18第五章 调试195.1 综合调试19第六章 心得体会21致 谢23参考文献25附录1 程序代码2731绪 论第一章 绪论1.1课题背景及研究意义随着新技术的不断开发与应用,近年来单片机发展十分迅速,一个以微机应用为主的新技术革命浪潮正在蓬勃兴起,单片机的应用已经渗透到电力、冶金、化工、建材、机械、食品、石油等各个行业。传统的温度采集方法不仅费时费力,而且精度差,单片机的出现使得温度的采集和数据处理问题能够得到很好的解决。温度是工业对象中的一个重要的被控参数。然而所采用的测温元件和测量方法也不相同;产品的工艺不同,控制温度的精度也不相同。因此对数据采集的精度和采用的控制方法也不相同。传统的控制方式以不能满足高精度,高速度的控制要求,如温度控制表温度接触器,其主要缺点是温度波动范围大,由于他主要通过控制接触器的通断时间比例来达到改变加热功率的目的,受仪表本身误差和交流接触器的寿命限制,通断频率很低。近几年来快速发展了多种先进的温度控制方式,如:PID控制,模糊控制,神经网络及遗传算法控制等。这些控制技术大大的提高了控制精度,不但使控制变得简便,而且使产品的质量更好,降低了产品的成本,提高了生产效率。本设计使用单片机作为核心进行控制。单片机具有集成度高,通用性好,功能强,特别是体积小,重量轻,耗能低,可靠性高,抗干扰能力强和使用方便等独特优点,在数字、智能化方面有广泛的用途。1.2 选题意义及设计要求 1.2.1 选题意义 温度是表征物体冷热程度的物理量,是国际单位制(SI)中七个基本物理量之一,它与人类生活、工农业生产和科学研究有着密切关系。随着人类社会的不断进步和科学技术水平的不断提高,温度测量技术也得到了不断的发展。 温度测量方法有很多,也有多种分类。比如从测量时传感器中有无电信号可以划分为非电测量和电测量两大类;从测量时传感器与被测对象的接触方式不同可以划分为接触式和非接触式,等等。而每种测量方法中又有很多种类,如膨胀式温度计、热电偶温度计、热电阻温度计、光学温度计和红外温度计等。近年来,随着技术水平的进步,出现了更多新的测试方法在很多系统中。如粮库测温系统、冷库测温系统、智能建筑自控系统、中央空调系统中都需要温度的测量,准确的温度测量对系统的正常工作影响巨大,如果测量不准,都会造成较大的经济损失。在保证准确的测量的前提条件下,人们对温度测量还有很多其他的要求,比如读数是否方便,系统是不是便于维护等,每次使用前用不用调试。新型的数字温度计能满足以上的要求。1.2.2 设计要求 本设计所介绍的数字温度计与传统的温度计相比,具有读数方便,成本低廉,便于扩展和维护。由于采用了数字温度传感器DS18B20,由于采用一根I/O数据线既传输时钟又可传输数据、数据传输还是双向的,节省了I/O资源。使电路结构简单。设计要求测温范围-55125,精度误差0.5,系统响应时间是1s。数据通过数码管显示。1.3 设计方案论证 方案一热电偶温度计属于接触式温度测量仪表。是根据热电效应即塞贝克效应原理来测量温度的,是温度测量仪表中常用的测温元件。如图1.1将不同材料的导体A、B接成闭合回路,接触测温点的一端称测量端,一端称参考端。若测量端和参考端所处温度t和t0不同,则在回路的A、B之间就产生一热电势EAB(t,t0 ),这种现象称为塞贝克效应,即热电效应。EAB大小随导体A、B的材料和两端温度t和t0而变,这种回路称为原型热电偶。在实际应用中,将A、B的一端焊接在一起作为热电偶的测量端放到被测温度t处,而将参考端分开,用导线接入显示仪表,并保持参考端接点温度t0稳定。显示仪表所测电势只随被测温度t变化。数据采集则使用A/D转换芯片,把电压转换为数字信号后,就传输给单片机进行数据的处理,在显示电路上,就可以将被测温度显示出来。热电偶的优点是工作温度范围非常宽,且体积小。图 1.1热电偶电路图当然,热电偶在温度测量中也存在一些缺陷,例如,线性特性较差,并且热电偶信号电平很低,常常需要放大或高分辨率数据转换器进行处理。参考端(冷端)还需要进行温度补偿。并且这种设计需要用到A/D 转换电路,测量电路比较复杂。方案二采用数字温度芯片DS18B20 来作为传感器。此元件线性较好,它直接输出温度的数字信号,可直接与计算机连接。由数字温度计DS18B20和单片机AT89S52构成的温度测量装置。这样,测温系统的结构就比较简单,体积也不大。采用单片机控制,软件编程的自由度大,可通过编程实现各种各样的算术算法和逻辑控制,而且体积小,硬件实现简单,安装方便。DS18B20转换精度高,抗干扰能力强,使用时无需标定或调试,与单片机的接口简单,给硬件设计工作带来了极大的方便。另外采用DS18B20能有效地降低成本,简化系统设计,缩短开发周期,占用系统I/O资源少、扩展方便。系统框图如图 1.2所示。图 1.2 DS18B20温度测温系统框图从以上两种方案,容易看出方案一的测温装置可测温度范围宽、体积小,但是线性误差较大,电路复杂,维护不便。方案二的测温装置电路简单、精确度较高、实现方便、软件设计也比较简单,故本次设计采用了方案二。硬件设计第二章 硬件设计2.1 AT89C52单片机的介绍AT89C52单片机有40个引脚,4个8位并行I/O口,1个全双工异步串行口,同时内含5个中断源,2个优先级,2个16位定时/计数器。AT89C52的存储器系统由4K的程序存储器(掩膜ROM),和128B的数据存储器(RAM)组成。AT89C52单片机的基本组成框图见以下图。图2-1 AT89C52单片机的基本组成2.1.1 AT89C52单片机的中断系统AT89C52系列单片机的中断系统有5个中断源,2个优先级,可以实现二级中断服务嵌套。由片内特殊功能寄存器中的中断允许寄存器IE控制CPU是否响应中断请求;由中断优先级寄存器IP安排各中断源的优先级;同一优先级内各中断同时提出中断请求时,由内部的查询逻辑确定其响应次序。2.1.2 AT89C52单片机的定时/计数器在单片机应用系统中,常常会有定时控制需求,如定时输出、定时检测、定时扫描等;也经常要对外部事件进行计数。AT89C52单片机内集成有两个可编程的定时/计数器:T0和T1,它们既可以工作于定时模式,也可以工作于外部事件计数模式,此外,T1还可以作为串行口的波特率发生器。2.2硬件电路的设计 本设计系统共由四部分组成:如图2.1AT89C52为控制装置,负责各部分的控制和数据采集。DS18B20为温度测量装置,负责对温度进行采集并转换为数字信号送AT89C52进行处理。共阳极数码管为显示装置,负责显示工作状态和DS18B20 采集到的数据。注:LED数码管驱动电路中采用P0 口加上拉电阻的形式,为方便焊接,本设计中电阻使用了排阻的方式,三极管使用的是8050报警电路及报警温度设置电路:报警电路由蜂鸣器构成,报警温度设置电路则是由三个按键构成图2-2 数字温度计硬件电路2.3 原理分析 整个系统由单片机控制,温度传感器采用DS18B20。DS18B20采用单总线方式与单片机相连,把采集到得温度信息传给单片机。单片机采集到的温度输出到四个数码管上进行显示。当四位数码管显示的温度超过限值时可以通过蜂鸣器来实现报警功能,报警温度的限值可以通过按键来进行设置。2.3.1 DS18B20的介绍 1.DS18B20是美国DALLAS半导体公司继DS1820之后最新推出的一种改进型智能温度传感器。与传统的热敏电阻相比,他能够直接读出被测温度并且可根据实际要求通过简单的编程实现912位的数字值读数方式。可以分别在93.75 ms和750 ms内完成9位和12位的数字量,并且从DS18B20读出的信息或写入DS18B20的信息仅需要一根口线(单线接口)读写,温度变换功率来源于数据总线,总线本身也可以向所挂接的DS18B20供电,而无需额外电源。因而使用DS18B20可使系统结构更趋简单,可靠性更高。2.DS18B20的测温原理如图2-3所示,图中低温度系数晶振的振荡频率受温度的影响很小,用于产生固定频率的脉冲信号送给减法计数器1,高温度系数晶振随温度变化其震荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入,图中还隐含着计数门,当计数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲后进行计数,进而完成温度测量。计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将-55 所对应的基数分别置入减法计数器1和温度寄存器中,减法计数器1和温度寄存器被预置在-55所对应的一个基数值。减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时温度寄存器的值将加1,减法计数器1的预置将重新被装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。图2中的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正计数器的预置值,只要计数门仍未关闭就重复上述过程,直至温度寄存器值达到被测温度值,这就是DS18B20的测温原理。图2-3 DS18B20内部测量电路框图2.3.2 时钟电路 时钟电路用于产生单片机工作所需的时钟信号,时序是指令执行中各信号之间的相互关系。单片机本身就如同一个复杂的同步时序电路,为了保证同步工作方式的实现,电路应在唯一的时钟信号控制下严格地按时序进行工作。在单片机的XTAL1脚和XTAL2脚之间并接一个晶体振荡器就构成了内部振荡方式。AT89C52单片机内部有一个高增益的反相放大器,XTAL1为内部反相放大器的输入端,XTAL2为内部反相放大器的输出端,在其两端接上晶振后,就构成了自激振荡电路,并产生振荡脉冲,振荡电路输出的脉冲信号的频率就是晶振的固有频率。在实际应用中通常还需要在晶振的两端和地之间各并上一个小电容。AT89C52的时钟电路如图2.3所示:图2-4 时钟电路用晶振和电容构成谐振电路。电容大小与晶振频率和工作电压有关。但电容的大小影响振荡器的稳定性和起振的快速性,为了提高精度,本电路采用30pF的电容作为微调电容。2.3.3 复位电路 复位是单片机的初始化操作,其目的是使CPU和系统中各部分处于一个确定的状态,并从这一状态开始工作。系统上电路或死机后都要进行复位操作。单片机的复位电路有多种形式,一般的做法是将开关复位与上电复位组合在一起形成组合复位电路,上电复位电路完成上电复位功能,开关复位电路完成人工复位。这种组合复位电路如图2-5所示图2-5单片机组合复位电路图单片机组合复位电路图中C1,R1构成了上电复位电路。上电复位后,电源经R1对C1充满电源,C1等效于开路,RST端为低电平;单片机正常工作。按开关K后,C1两端电荷经R2迅速放电,K断开后,由C1、R1及电源完成对单片机的复位操作。在上述电路中,R2的取值一般为0200,C1、R1按上电复位电路的设计而取值。 复位电路的作用非常重要,能否成功复位关系但单片机系统能否正常运行的问题。如果振荡电路正常而单片机系统不能正常运行,其主要原因是单片机没有完成正常复位,程序计数器的值没有回0,特殊功能寄存器没有回到初始状态。这时可以适当地调整上电复位电路的阻容值,增加其充电时间常数来解决问题。本文采用上电复位电路。2.3.4 显示电路 单片机系统中常用的显示器有:发光二极管LED(Light Emitting Diode)显示器、液晶LCD(Liquid Crystal Display)显示器、CRT显示器等。LED显示器有两种显示结构:段显示(7段、米字型等)和点阵显示(58、88点阵等)。 (1)静态显示方式LED显示器工作方式有两种:静态显示方式和动态显示方式。静态显示的特点是每个数码管必须接一个8位锁存器用来锁存待显示的字形码。送入一次字形码显示字形一直保持,直到送入新字形码为止。这种方法的优点是占用CPU时间少,显示便于监测和控制。缺点是硬件电路比较复杂,成本较高。(2)动态显示动态显示的特点是将所有位数码管的段选线并联在一起,由位选线控制是哪一位数码管有效。这样一来,就没有必要每一位数码管配一个锁存器,从而大大地简化了硬件电路。此时数码管采用动态扫描显示,所谓动态扫描显示即轮流向各位数码管送出字形码和相应的位选,利用发光管的余辉和人眼视觉暂留作用,使人的感觉好像各位数码管同时都在显示。动态显示的亮度比静态显示要差一些,所以在选择限流电阻时应略小于静态显示电路中的。 图2-6 七段数码管示意图和内部结构简图使用LED显示器时,要注意区分这两种不同的接法。为了显示数字或字符,必须对数字或字符进行编码。七段数码管加上一个小数点,共计8段。因此为LED显示器提供的编码正好是一个字节。用LED显示器显示16进制数的编码已列在下表。数码管码表0x3f , 0x06 , 0x5b , 0x4f , 0x66 , 0x6d , 0x7d , 0x07 , 0x7f , 0x6f 0 1 2 3 4 5 6 7 8 9 四位LED数码管:用来显示温度的大小,从左到右依次是百位,十位,个位,十分位,可直接读取,温度精确到0.1,四位数码管电路如图所示。图2-7 数码管显示电路2.3.5 数码管驱动电路 三极管8050:来驱动四位数码管,如下图所示三极管Q1 、Q2 、Q3、Q4。图2-8 数码管驱动电路2.3.6 报警电路 三极管8550驱动蜂鸣器:如下图所示三极管Q6来驱动蜂鸣器BUZ1。图2-9 报警电路2.3.6 数字温度传感器 数字温度传感器DS18B20:如下图所示图2-10 数字温度传感器系统软件设计第三章 软件设计3.1软件设计方案首先初始化设置,设置常量,再进行对DS18B20进行初始化,之后进行温度采集,给DS18B20一个温度转换命令实现温度转换,读取转换的温度值,通过数据处理,将处理后的数据传送到数码管中显示出来,实现温度的采集与显示。主要的程序有主程序,它是整个控制系统的核心,专门用来协调个执行模块的关系。还有就是各个子程序,它是用来完成各种实质的功能的程序:如初始化,显示,温度测量,温度转换等等。主要流程图:主程序流程图、DS18B20复位子程序流程图、读温度子程序流程图。主程序流程图,见下图图3-1主程序流程图DS18B20数据的读写由主机读/写时间来完成,包括传送ROM码,初始化,读数据和写数据。(1)系统初始化:主机控制DS18B20完成任何操作之前必须先初始化,即主机发一复位脉冲,接着主机释放总线进入接收状态,DS18B20发出响应主机的应答脉冲,表明它已处在总线上并且准备工作。(2) 读数据,写数据:首先都要先发出写开始信号或者读开始信号,然后进行数据读写操作,读写结束释放总线,一次只能读写一位数据。下图是:DS18B20复位子程序流程图图3-2 DS18B20复位子程序流程图下图是:读温度子程序流程图图3-3读温度子程序流程图开发工具Proteus与Keil第四章 开发工具Proteus与Keil4.1 Proteus软件 4.1.1 Proteus简介 Proteus软件是英国Labcenter electronics公司出版的EDA工具软件。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿真单片机及外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年即将增加Cortex和DSP系列处理器,并持续增加其他系列处理器模型。在编译方面,它也支持IAR、Keil和MPLAB等多种编译器。 该软件的特点是:1. 实现了单片机仿真和SPICE电路仿真相结合,具有模拟电路仿真、数字电路仿真、各种单片机(51系列、AVR、PIG等常用的MCU)及其外围电路(如LCD、RAM、ROM、键盘、LED、A/D、D/A)组成的系统仿真。2. 提供了多种虚拟仪器。如示波器、逻辑分析仪、信号发生器等,调试非常方便。3. 提供软件调试功能,同时支持第三方的软件编译和调试环境,如Keil等软件。4. 具有强大的原理图绘制功能。Proteus与其它单片机仿真软件不同的是,它不仅能仿真单片机CPU的工作情况,也能仿真单片机外围电路或没有单片机参与的其它电路的工作情况。因此在仿真和程序调试时,关心的不再是某些语句执行时单片机寄存器和存储器内容的改变,而是从工程的角度直接看程序运行和电路工作的过程和结果。对于这样的仿真实验从某种意义上讲,是弥补了实验和工程应用阉脱节的矛盾和现象。同时,当硬件调试成功后,利用Proteus ARES软件,很容易获得其PCB图,为今后的制造提供了方便。4.1.2 ISIS智能原理图输入系统 ISIS是PROTEUS系统的中心,它远不仅是一个图表库。它是具有控制原理图画图的外观的超强的设计环境。无论用户的要求是快速实现复杂设计的仿真以及PCB设计,还是设计精美的原理图以供出版,ISIS都可以很好的完成。ISIS提供给用户图形外观包括线宽、填充类型、字符等的全部控制,使用户能够生成如杂志上看到一样精美的原理图,远胜过CAD软件绘制出的稀薄的线条。画完图可以以图形文件输出,或者拷贝到剪切板以便其他文件使用。这就使得ISIS成为制作技术文件,学术论文,项目报告的理想工具,也是PCB设计的一个出色的前端。画图的外形由风格模板定义。此外,此方案允许用户定制元件库提供的库部件的外观。4.2 Keil软件 4.2.1 Keil软件简介 Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用C来开发,体会更加深刻。Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。Keil C51软件是一个基于32位Windows环境的应用程序,支持C语言和汇编语言编程,其6.0以上的版本将编译和仿真软件统一为Vision(通常称为V2)。Keil提供包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,由以下几部分组成:Vision IDE集成开发环境C51编译器、A51汇编器、LIB51库管理器、BL51连接/定位器、OH51目标文件生成器以及 Monitor-51、RTX51实时操作系统。 调 试第五章 调试5.1 综合调试 单片机系统的硬件调试和软件调试是不能分开的,去多硬件错误是在软件调试中被发现和纠正的,但是硬件的调试是基础,如果硬件调试不通过软件设计则是无从做起,所以我们是先排除明显的硬件故障以后,再和软件结合起来以进一步排除故障。硬件设计从布线到焊接安装完成之后,我就开始进入硬件调试阶段,调试大体分为以下几步:1. 硬件静态的调试排除逻辑故障这类故障由于设计和加工制板过程中工艺性错误所造成的。主要包括错线、开路、短路。我将其排除的方法是首先将焊制的电路板认真对照原理图,看两者是否一致,特别主意了电源系统的检查,以防止电源短路和极性错误,并利用数字万用表的短路测试功能重点检查了系统总线是否存在相互之间短路或与其他信号线路短路。排除元器件失效我考虑到造成这类错误的原因有两个:一个是元器件买来是就已经坏了,另一个是由于安装错误,造成器件烧坏。我采取检查器件与设计要求的型号、规格和安装是否一致,在保证安装无误后,用替换法排除了错误。排除电源故障在通电前,首先检查了电源电压的幅值和极性,避免造成集成块损坏,加电后检查各插件上引脚的电位,先检查Vcc与GND之间电位,在5V4.8V 之间属正常,若有高压,联机仿真器调试时,将会损坏仿真器等,有时会使系统中的集成块发热损坏。2.联机仿真调试联机仿真借助了仿真开发装置、示波器、万用表等工具,这些工具是单片机开发的最基本工具。信号线是联络AT89C52和外部器件的纽带,如果信号线联接错误或时序不对,那么都会造成对外围电路读写错误,51系列单片机的信号线大体分为读、写信号线、时钟信号线、外部程序存储器读选通信号、地址所存信号、复位信号等几大类,这些信号大多属于脉冲信号,对于脉冲信号借助示波器用常规方法很难测到,我利用软件编程的方法来实现。显示器部分调试,首先将AT89C52与LED 显示分离,用静态方法先测试LED 显示,分别用规定的电平加至控制数码管段和位显示的引脚,看数码管显示是否与理论上一致,不一致,一般LED显示器接触不良所致,必须找出故障。调试通过。心得体会第六章 心得体会温度传感器DS18B20 转化温度的方法非常简洁且精度高、测试范围较广。单片机体积小重量轻、抗干扰能力强、对环境要求不高、价格低廉、可靠性高、灵活性好。因此这种温度测量系统能应用于各种场合,具有很大的应用价值。数字式温度传感器DS18B20和处理芯片AT89C52,具有良好的技术指标,组成的电路系统检测准确、稳定性好、调校方便! 该数字温度计完全适用于各种工作环境,达到了预期的研制目标与实用效果。通过这次小小的课程设计是我简单的掌握了protues的使用,让我对DS18B20有了进一步的熟悉,采用软件来对温度传感器的控制,在调试当中遇见很多困难,我不断的查找资料和在同学和老师的帮助下最终问题一一化解,当我的毕业设计出来的时候我是多么的激动,感谢老师能给我们这样的机会希望在以后的学习和生活中有更多的锻炼机会。致 谢致 谢在本次毕业设计即将结束之际,我要特别感谢我的导师谭伟东老师,每当我在设计过程中遇到了问题,老师总是耐心的为我讲解,其渊博的学识、严谨的教学态度、求实的工作作风和他敏捷的思维给我留下了深刻的印象,同时自己付出了很大的心血,得到了很多老师和同学的支持,为我创造了很多有利条件,在这里,老师,在毕业设计的开始,谭老师给了我很多帮助,指导我了解了很多单片机的相关知识,并在当我设计遇到困难时,及时的给予帮助和鼓励,同时,对我其他学科的鼓励也渗透在毕业设计的同时,给了我莫大的信心,为我顺利完成毕业设计起到了非常重要的作用。同时。我还要感谢实习组及实验室的所有老师,为我的毕业设计提供了非常便利的条件。再次对在本次毕业设计中给予过我帮助的老师和同学至上我最真挚的谢意。参考文献参考文献1 杨素行著.模拟电子技术基础(第二版) .北京:高等教育出版社,2006.2 阎石著.数字电子技术基础(第五版) .北京:高等教育出版社,2006.3 李全利,仲伟峰,徐军著.单片机原理及应用.北京:清华大学社,2006.4 何立民著单片机高级教程北京:北京航空航天大学出版社,2000.5 杨路明著C语言程序设计教程(第2版) 北京:北京邮电大学出版社,2005.6 马忠梅,籍顺心,张凯等著.单片机的C语言应用程序设计(第4版) .北京:北京航天航空大学出版社,2007.7 白驹珩,雷晓平著单片计算机及其应用成都:电子科技大学出版社,1997.8 谭浩强著程序设计与开发技术北京:清华大学出版社,1991.9 钟富昭著.8051单片机典型模块设计与应用.北京:人民邮电出版,2007.10 于永,戴佳,常江著.51单片机C语言常用模块与综合系统设计实例精讲.北京:电子工业出版社,2007.11 梁翎著C语言程序设计实用技巧与程序实例.上海:上海科普出版社,1998.附 录附录1 程序代码#include#define uchar unsigned char#define uint unsigned intsbit d1=P22;sbit d2=P21;sbit d3=P20;sbit d4=P23;sbit key1=P30;sbit key2=P31;sbit key3=P32;sbit beep=P33;sbit DS=P12;sbit ACC_7=ACC7;uint count=1000,alarm=300;uchar shu;uchar shi,fen,ri,yue,nian,xq,miao,ss; uint temp; / 温度变量uchar flag;uchar code tab=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90;uchar code tab1=/小数点点亮0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10;void delay(uint z)uint x,y;for(x=z;x0;x-)for(y=120;y0;y-);void dsreset()/发复位 uint i;DS=0;i=103;while(i0)i-;DS=1;i=4;while(i0)i-;uchar tmpread() /读取一字节uchar j,k,dat;uint i; for(j=1;j0)i-;dat=(k1);/读出的数据最低位在最前面存一个字节在DAT里 return(dat);void tmpwritebyte(uchar dat) /写一个字节 uint i; uchar j; bit testb; for(j=1;j1; if(testb) /写 1 DS=0; i+;i+; DS=1; i=8;while(i0)i-; else DS=0; /写 0i=8;while(i0)i-;DS=1;i+;i+; void tmpchange() /DS18B20温度变换dsreset();delay(1);tmpwritebyte(0xcc); /跳过读取内存romtmpwritebyte(0x44); /开始转换uint tmp() /读取温度float tt;uchar a,b;dsreset();delay(1);tmpwritebyte(0xcc);tmpwritebyte(0xbe);a=tmpread(); /a为低字节8位b=tmpread(); /b为高字节8位temp=b; /temp为温度值UINT 16bittemp127)flag=1;ss=flag;temp=temp+1;tt=temp*0.0625; / temp/16 则是温度的真实值tt.7位整数,4位小数temp=tt*10+0.5; / 扩大十倍取出了第一位小数return(temp);void displayTemp(uint temp) /显示温度程序uchar ge,shi,bai,qian,ser;d1=0;d1=0;d3=0;d4=0;dsreset();ser=temp/10; /分离出三位要显示的数字 SBUF=ser;qian=temp/1000;bai=temp/100%10; / 百位数字shi=temp/10%10; / 十位数字ge=temp%10; / 个位数字if(flag=1)flag=0;P0=0xbf;d1=1;delay(2);d1=0;if(qian!=0)P0=tabqian;d1=1;delay(2);d1=0;elseP0=0xff;d1=1;delay(2);d1=0;if(temp99)P0=tabbai;d2=1;delay(2);d2=0;P0=tab1shi;d3=1;delay(2);d3=0;P0=tabge;d4=1;delay(2);d4=0;uint keyscan()if(key1=0)delay(5);if(key1=0)while(!key1);shu+;if(key2=0)delay(5);if(key2=0)while(!key2);count=count+10;if(shu=2)alarm+=10;if(key3=0)delay(5);if(key3=0)while(!key3);count=count-10;if(shu=2)alarm-=10;return(count);void main() beep=0;delay(10);while( 1 ) tmpchange();if(shu=0)displayTemp(tmp( );keyscan();if(shu=1)displayTemp(count);if(shu=2)displayTemp(alarm);if(shu=3)shu=0;if(tempcount|(tempalarm)beep=0;elsebeep=1;
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 压缩资料 > 基础医学


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!