毕业设计(论文)高精度温度计

上传人:1666****666 文档编号:35934630 上传时间:2021-10-29 格式:DOC 页数:34 大小:1.43MB
收藏 版权申诉 举报 下载
毕业设计(论文)高精度温度计_第1页
第1页 / 共34页
毕业设计(论文)高精度温度计_第2页
第2页 / 共34页
毕业设计(论文)高精度温度计_第3页
第3页 / 共34页
资源描述:

《毕业设计(论文)高精度温度计》由会员分享,可在线阅读,更多相关《毕业设计(论文)高精度温度计(34页珍藏版)》请在装配图网上搜索。

1、毕 业 设 计 论 文高精度温度计 指导老师姓名: 专 业 名 称:微电子技术班 级 学 号: 论文提交日期: 2010年1月17日论文答辩日期: 2010年1月19日2010年 1月17 日摘 要【摘要】:在日常生活及工业生产过程中,经常要用到温度的检测及控制,温度是生产过程和科学实验中普遍而且重要的物理参数之一。在生产过程中,为了高效地进行生产,必须对它的主要参数,如温度、压力、流量等进行有效的控制。温度控制在生产过程中占有相当大的比例。温度测量是温度控制的基础,技术已经比较成熟。传统的测温元件有热电偶和二电阻。而热电偶和热电阻测出的一般都是电压,再转换成对应的温度,这些方法相对比较复杂,

2、需要比较多的外部硬件支持。我们用一种相对比较简单的方式来测量。我们采用美国DALLAS半导体公司继DS1820之后推出的一种改进型智能温度传感器DS18B20作为检测元件,温度范围为-55125 C,最高分辨率可达0.0625 C。DS18B20可以直接读出被侧温度值,而且采用三线制与单片机相连,减少了外部的硬件电路,具有低成本和易使用的特点。本文主要介绍高精度温度计的设计。本设计大体分三个工作过程:首先,由DS18b20温度传感器芯片测量当前的温度,并将结果送入单片机。然后,通过AT89C51单片机对送来的温度进行计算和转换,并将此结果送入液晶显示模块。最后,由1602液晶显示器将温度显示出

3、来。 【关键词】: 温度控制、温度测试、AT89C51、1602LCD、DS18b20温度传感器 目 录第一章 绪论1第二章 系统硬件的设计22.1 硬件设计22.1.1功能要求22.1.2方案论证22.2 系统硬件电路的设计.22.2.1 AT89C51单片机22.2.1.1 AT89C51简介及引脚功能说明.22.2.1.2 复位电路.42.2.1.3 时钟(晶振)电路42.2.2 1602液晶显示器52.2.2.1 1602LCD 基本参数及引脚功能说明.52.2.2.2 1602LCD 指令说明及时序.62.2.2.3 1602LCD 标准字符库.82.2.2.4 1602LCD 显示

4、电路图.92.2.3 DS18b20 温度传感器.102.2.3.1 DS18B20 结构及引脚功能说明.102.2.3.2 DS18B20 内部结构.102.2.3.3 DS18B20 初始化和读/写时序.12第三章 系统程序的设计153.1 主程序153.2 DS18B20模块程序153.3 1602液晶模块程序. 16第四章 应用的相关软件184.1 keil uVision3编辑软件184.2 Protel 99SE 电路板设计软件184.3 智能高速通用编辑器18第五章 实物效果展示20第六章 结论与心得21致谢22参考文献23附录A. 高精度温度计电路原理图24附录B. 材料清单2

5、5附录C. 源程序26前言随着科学技术的发展和现代工业技术的需要,测温技术也在不断地改进和提高由于测温范围越来越广,根据不同的要求,又制造出不同需要的测温仪器现实社会发展的许多情况下需要测量温度参数。DS18B20是美国DALLAS半导体公司继DS1820之后最新推出的一种改进型智能温度传感器。与传统的热敏电阻相比,他能够直接读出被测温度并且可根据实际要求通过简单的编程实现912位的数字值读数方式。可以分别在93.75 ms和750 ms内完成9位和12位的数字量,并且从DS18B20读出的信息或写入DS18B20的信息仅需要一根口线(单线接口)读写,温度变换功率来源于数据总线,总线本身也可以

6、向所挂接的DS18B20供电,而无需额外电源。因而使用DS18B20可使系统结构更趋简单,可靠性更高。他在测温精度、转换时间、传输距离、分辨率等方面较DS1820有了很大的改进,给用户带来了更方便的使用和更令人满意的效果。随着微电子技术的不断发展,微处理器芯片的集成程度越来越高,单片机已可以在一块芯片上同时集成CPU、存储器、定时器计数器、并行和串行接口、前置放大器、AD转换器、DA转换器等多种电路,这就很容易将计算机技术与测量控制技术结合,组成智能化测量控制系统。AT89C51单片机是美国ATMEL公司推出的单片机,它与MCS51完全兼容,4K程序存储器采用闪速存储技术,设有三级加密,不易仿

7、制,其宽电压范围2767V及低功耗的特点,特别适用于微型仪器仪表。LCD应用于智能仪表、通信和办公自动化等领域,它的主要作用是显示ASCII码字符,因此又被称作字符型显示器件。利用点阵字形特点可自定义汉字字库让其显示汉字。该液晶显示模块具有体积小、功耗低、显示内容丰富、超薄轻巧等优点,在袖珍式仪表和低功耗应用系统中得到广泛的应用。目前字符型液晶显示模块已经是单片机应用设计中最常用的信息显示器件。LCD1602液晶显示模块可以显示两行,每行16个字符,采用单+5V电源供电,外围电压。我们设计的温度系统是由中央控制器、温度检测器及显示器组成。控制器采用单片机AT89S51,温度检测部分采用DS18

8、B20温度传感器,用1602LCD做显示器。温度传感器DS18B20采集温度信号送该给单片机处理,存储器通过单片机对某些时间点的数据进行存储;单片机再把温度数据送LCD显示,已达到显示当前温度的目的。第1章 系统硬件的设计1.1 硬件设计1.1.1功能要求在智能最小系统的基础上,使用单个DS18B20采集环境温度,并用1602液晶显示器显示温度结果,测量范围在10500C之间,精度0.010C。1.1.2方案论证该设计方案是以AT89C51单片机为控制核心,用温度传感器DS18B20进行温度采集,继而显示在1602LCD上,从而达到显示当前环境温度的目的。在论证过程中,我们需要将温度精确到0.

9、010C,已达到对温度的精准。整个系统硬件部分包括单片机、温度检测系统、液晶显示器。高精度温度计设计方案框图见图 2-1。AT89C51 P3P2 DS18B20按键复位1602LCD晶振电路图2-1 高精度温度计系统方案2.2 系统硬件电路的设计2.2.1 A89C51单片机 AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFlash Programmable and Erasable Read Only Memory)的低电压,高性能CMOS 8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。

10、由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器。AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。2.2.1.1 AT89C51引脚功能说明 掌握AT89C51单片机,应首先了解AT89C51的引脚,熟悉并牢记各引脚的功能。AT89C51有40条引脚。这40条引脚可分为I/O端口线(32条)、控制线(4条)、电源线(2条)、外接晶体线(2条)四部分,AT89C51引脚排列如图2-2所示。图2-2 AT89C51芯片引脚图AT89C51共有40个引脚,大致可分为4类:(1) 电源引脚Vcc:电源端(+5V)。Vss: 接地端(G

11、ND)。(2) 时钟电路引脚XTAL1:外接晶振输入端。XTAL2:外接晶振输出端。(3) I/O引脚P0.PP0.7/AD0AD7: 一组8位漏极开路型双向I/O口,也是地址/总线复用口。作入/输出口时,必须外接上拉电阻,它可驱动8个TTL门电路。当访问片外存储器时,用作地址/总线分时复用口线。P1.0P1.7: 一组内部带上拉电阻的8位准双向I/O口,可驱动4个TTL门电路。P2.0P2.7/A8A15: 一组内部带上拉电阻的8位准双向I/O口,可驱动4个TTL门电路。当访问片外存储器时,用作高8位地址总线。P3.0P3.7: 一组内部带上拉电阻的8位准双向I/O口。出于芯片引脚数的限制,

12、P3端口每个引脚具有第二功能。(4) 控制线引脚RST: 复位端。当RESET端出现持续两个机器周期以上的高电平时,可实现复位操作。EA: 片外程序存储器选择端。若要访问外部程序存储器则EA端必须保持低电平。 ALE: 地址锁存允许端。当访问外部程序存储器或数据存储器时,ALE输出脉冲用于锁存P0口分时送出的低8位地址(下降沿有效)。不访问外部存储器时,该端以时钟频率的1/6输出固定的正脉冲信号,可用作外部时钟。对内部Flash存储器编程期间,该引脚用于输入编程脉冲。PSEN: 读片外程序存储器选通信号输出端。当89C51从外部程序存储器取指令时,该脚有效(上升沿)。每个机器周期PSEN均产生

13、两次有效输出信号。2.2.1.2 复位电路RST引脚是复位信号的输入端。复位信号是高电平有效。高电平有效的持续时间应为24个振荡周期以上。若时钟频率为6MHz,则复位信号至少应持续4微秒以上,才可以使单片机复位。本次设计中采用按键复位的方法进行复位操作。如下图2-3所示。图2-3 按键复位电路按键复位是利用开关按钮来实现的,即通电后,按下开关,使得瞬间RST端的电位与Vcc相同,随着电容上储能增加,电容电压也增大,充电电流减少,RESET端的电位逐渐下降。这样在RST端就会建立一个脉冲电压,调节电容与电阻的大小可对脉冲持续的时间进行调节。2.2.1.3 时钟(晶振)电路时钟电路对单片机系统而言

14、是必需的.由于单片机内部是由各种各样的数字逻辑器件(如触发器寄存器存储器等)构成,这些数字器件的工作必须按时间顺序完成,这种时间顺序就称为时序.时钟电路就是提供单片机内部各种操作的时间基准的电路,没有时钟电路单片机就无法工作。此次设计中,我们采用由由内部方式产生时钟的方法形成时钟电路,具体如图2-4所示。图2-4 时钟电路内部方式:在XTAL1和XTAL2端外接石英晶体作定时元件,内部反相放大器自激振荡,产生时钟。时钟发生器对振荡脉冲二分频,即若石英频率fosc6MHz,则时钟频率3MH2,因此,时钟是一个双相信号,由P1相和P2相构成。fosc可在2MHZ12MHZ选择。小电容可以取30PF

15、左右。2.2.2 1602液晶显示器字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式LCD,目前常用16*1,16*2,20*2和40*2行等的模块。1602LCD应用于智能仪表、通信和办公自动化等领域,它的主要作用是显示ASCII码字符,因此又被称作字符型显示器件。利用点阵字形特点可自定义汉字字库让其显示汉字。2.2.2.1 1602 LCD 基本参数及引脚功能说明1、1602LCD主要技术参数:显示容量:162个字符芯片工作电压:4.55.5V工作电流:2.0mA(5.0V)模块最佳工作电压:5.0V字符尺寸:2.954.35(WH)mm2、引脚功能说明1602LCD采用标准的

16、14脚(无背光)或16脚(带背光)接口,各引脚接口说如表2.1所示:表2.1 1602 LCD 引脚接口说明表编号符号引脚说明编号符号引脚说明1VSS电源地9D2数据2VDD电源正极10D3数据3VL液晶显示偏压11D4数据4RS数据/命令选择12D5数据5R/W读/写选择13D6数据6E使能信号14D7数据7D0数据15BLA背光源正极8D1数据16BLK背光源负极第1脚:VSS为地电源。第2脚:VDD接5V正电源。第3脚:VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。第4脚:RS为寄存器选择,高

17、电平时选择数据寄存器、低电平时选择指令寄存器。第5脚:R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。第714脚:D0D7为8位双向数据线。第15脚:背光源正极。第16脚:背光源负极。2.2.2.2 1602 LCD 指令说明及时序1、1602液晶模块内部的控制器共有11条控制指令,如表2.2所示:表2.2 1602 LCD 控制命令表序号指令RSR/WD7D6D5D4D3

18、D2D1D01清显示00000000012光标返回000000001*3置输入模式00000001I/DS4显示开/关控制0000001DCB5光标或字符移位000001S/CR/L*6置功能00001DLNF*7置字符发生存贮器地址0001字符发生存贮器地址8置数据存贮器地址001显示数据存贮器地址9读忙标志或地址01BF计数器地址10写数到CGRAM或DDRAM)10要写的数据内容11从CGRAM或DDRAM读数11读出的数据内容1602液晶模块的读写操作、屏幕和光标的操作都是通过指令编程来实现的。(说明:1为高电平、0为低电平)指令1:清显示,指令码01H,光标复位到地址00H位置。指令

19、2:光标复位,光标返回到地址00H。指令3:光标和显示模式设置 I/D:光标移动方向,高电平右移,低电平左移 S:屏幕上所有文字是否左移或者右移。高电平表示有效,低电平则无效。指令4:显示开关控制。 D:控制整体显示的开与关,高电平表示开显示,低电平表示关显示 C:控制光标的开与关,高电平表示有光标,低电平表示无光标 B:控制光标是否闪烁,高电平闪烁,低电平不闪烁。指令5:光标或显示移位 S/C:高电平时移动显示的文字,低电平时移动光标。指令6:功能设置命令 DL:高电平时为4位总线,低电平时为8位总线 N:低电平时为单行显示,高电平时双行显示 F: 低电平时显示5x7的点阵字符,高电平时显示

20、5x10的点阵字符。指令7:字符发生器RAM地址设置。指令8:DDRAM地址设置。指令9:读忙信号和光标地址 BF:为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。指令10:写数据。指令11:读数据。2、1602 读/写时序当 RS=0、RW=0时,为写指令; RS=0、RW=1时,为读指令; RS=1、RW=0时,为写数据; RS=1、RW=1时,为读数据。具体的1602读写操作时序如图2-5和2-6所示。图2-5 读操作时序图2-6 写操作时序2.2.2.3 1602 LCD 标准字符库1602液晶模块内部的字符发生存储器(CGROM)已经存储了不同的点阵字符

21、图形,这些字符有阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,其中数字与字母同ASCII码兼容,对应关系如下表所示。其内部还有自定义字符(CGRAM),可用于存储自已定义的字符。表2.3为1602标准字符库高位低 位00000010001101000101011001111010101111001101111011110000CGRA(1)0Pp-P0001(2)!1AQaqq0010(3)”2BRbr0011(4)#3CScs0100(5)$4DTdt0101(6)%5EUeu0110(7)&6FVfv0111(8)7GWgwg1000(1)(8HXh

22、x1001(2)9IYiyy1010(3)*:JZjzj千1011(4)+;Kk万1100(5),Nn1111(8)/?O-o2.2.2.4 1602 LCD 显示电路图在此次设计中,1602LCD作为显示端,显示由P2口输入DS18B20采集的数据,1602硬件接口如图2-7所示。图2-7 1602字符液晶显示电路接口图2.2.3 DS18b20 温度传感器DS18B20是DALLAS公司生产的单总线数字温度传感器,具有3引脚TO92小体积封装形式;温度测量范围为55125,可编程为9位12位A/D转换精度,对应的可辨温度分别为0.5、0.25、0.125和0.0625,被测温度用符号扩展的

23、16位数字量方式串行输出,支持3V5.5V的电压范围,使系统设计更灵活、方便,其工作电源既可在远端引入,也可采用寄生电源方式产生.同时多个DS18B20可以并联到3根或2根线上,CPU只需一根端口线就能与诸多DS18B20通信,占用处理器的端口较少,可节省大量的引线和逻辑电路。以上特点使DS18B20非常适用于远距离多点温度检测系统。2.2.3.1 DS18b20结构及引脚功能说明DS18B20的引脚图2-8 温度传感器DS18B20引脚图表2.4 温度传感器DS18B20引脚功能表序号名称引脚功能描述1GND地信号2DQ数据输入/输出引脚。开漏单总线接口引脚。当被用在寄生电源下,也可以向器件

24、提供电源。3VDD外接供电电源输入端。当工作于寄生电源时,此引脚必须接地。2.2.3.2 DS18B20 内部结构DS18B20内部结构主要由四部分组成:64位光刻ROM、温度传感器、非易失性温度报警触发器TH和TL、配置寄存器。具体结构如图2-9所示。图2-9 DS18B20内部结构图(1) 64位激光ROM。64位激光ROM从高位到低位依次为8位CRC、48位序列号和8位家族代码(28H)组成。(2) 温度灵敏元件。用于采集温度并转换成电信号。(3) 非易失性温度报警触发器TH和TL。可通过软件写入用户报警上下限值。(4) 高速暂存存储器高速暂存存储器由9个字节组成,其分配图2-10所示。

25、当温度转换命令发布后,经转换所得的温度值以二字节补码形式存放在高速暂存存储器的第0和第1个字节。单片机可通过单线接口读到该数据,读取时低位在前,高位在后,数据格式如图2-11所示。对应的温度计算:当符号位S=0时,直接将二进制位转换为十进制;当S=1时,先将补码变为原码,再计算十进制值。8位CRC保留保留保留配置TLTH温度高位温度低位MSBLSB 图2-10 DS18B20存储器映像图 图2-11 DS18B20温度存储器数据格式(5) 配置寄存器。配置寄存器为高速暂存存储器中的第五个字节。DS18B20在工作时按此寄存器中的分辨率将温度转换成相应精度的数值,其各位定义如图2-12所示。其中

26、,TM:测试模式标志位,出厂时被写入0,不能改变;R0、R1:温度计分辨率设置位,其对应四种分辨率如表2.5所列,出厂时R0、R1置为缺省值:R0=1,R1=1(即12位分辨率),用户可根据需要改写配置寄存器以获得合适的分辨率。TMR1R011111图2-12 DS18B20配置寄存器结构图表2.5 配置寄存器与分辨率关系表R0R1温度计分辨率/bit最大转换时间/ms00993.750110187.5101137511127502.2.3.3 DS18b20 初始化和读/写时序由于DS18B20采用的是1Wire总线协议方式,即在一根数据线实现数据的双向传输,而对AT89C51单片机来说,硬

27、件上并不支持单总线协议,因此,我们必须采用软件的方法来模拟单总线的协议时序来完成对DS18B20芯片的访问。从而,对读写的数据位有着严格的时序要求。DS18B20有严格的通信协议来保证各位数据传输的正确性和完整性。该协议定义了几种信号的时序:初始化时序、读时序、写时序。所有时序都是将主机作为主设备,单总线器件作为从设备。而每一次命令和数据的传输都是从主机主动启动写时序开始,如果要求单总线器件回送数据,在进行写命令后,主机需启动读时序完成数据接收。数据和命令的传输都是低位在先。1、 DS18B20的初始化时序图2-13 DS18B20的初始化时序图2、DS18B20的读/写时序控制器在写时序写数

28、据到DS18B20,在读时序从DS18B20中读取数据.每一总线时序传送一位数据。(1)读流程时序对于DS18B20的读时序分为读0时序和读1时序两个过程。对于DS18B20的读时隙是从主机把单总线拉低之后,在15秒之内就得释放单总线,以让DS18B20把数据传输到单总线上。DS18B20在完成一个读时序过程,至少需要60us才能完成。(2)写流程时序对于DS18B20的写时序仍然分为写0时序和写1时序两个过程。对于DS18B20写0时序和写1时序的要求不同,当要写0时序时,单总线要被拉低至少60us,保证DS18B20能够在15us到45us之间能够正确地采样IO总线上的“0”电平,当要写1

29、时序时,单总线被拉低之后,在15us之内就得释放单总线。图2-14 DS18B20的/读写时序2.2.3.4 DS18B20常用指令DS18B20的操作分为ROM操作指令和RAM操作指令两类。表2.6 ROM操作指令指令约定代码功能读ROM33H读DS18B20 ROM中的编码(即64位地址)符合ROM55H发出此命令之后,接着发出64位ROM编码,访问总线上与该编码相对应的DS18B20使之作出响应,为下一步对该DS18B20的读写做准备搜索ROM0F0H用于确定挂在同一总线上DS18B20的个数和识别64位ROM地址,为操作各器件作好准备跳过ROM0CCH忽略64位ROM地址,直接向DS1

30、8B20发温度变换命令,适用于单片工作告警搜索命令0ECH执行后只有温度超过设定值上限或下限的片子才作出响应表2.7 RAM操作指令指令约定代码功能温度变换44H启动DS18B20进行温度转换,转换时间最长500ms(典型为200ms),结果存入内部9字节RAM中读存储器0BEH读内部RAM中9字节的内容写存储器4EH发出向内部RAM的3、4字节写上、下限温度数据命令,紧跟该命令之后是传送两字节的数据复制存储器48H将RAM中3、4字节的内容复制到EEPROM中重调EEPROM0B8H将EEPROM中的内容恢复到RAM中的3、4字节读供电方式0B4H读DS18B20的供电模式,寄生供电时DS1

31、8B20发送“0”,外接电源供电DS18B20发送“1”2.2.3.5 DS18B20 温度采集电路图在本设计中,由DS18B20组建温度采集系统。其中,1脚GND,2脚为数据输入端,3脚VCC,2脚与3脚间接上一个4.7K的电阻,形成上拉电阻。详细的采集电路如图2-15所示。图2-15 DS18B20温度采集电路第三章 系统程序的设计3.1 主程序在主程序流程图中,初始化液晶模块,然后延时一段时间,进入While循环,读取温度,将温度显示在LCD液晶屏上。主程序的流程图如下: While(1)读取温度值温度值显示开始液晶模块初始化延时 图 3-1主程序流程图3.2 DS18B20模版程序首先

32、DS18B20初始化,复位DS18B20,然后单片机等待DS18B20的应答脉冲。一旦单片机检测到应答脉冲,便发起跳过ROM匹配操作命令。成功执行了ROM操作命令后,就可以使用内存操作命令,启动温度转换,延时一段时间后,等待温度转换完成。再发起跳过ROM匹配操作命令,然后读暂存器,将转换结果读出,并转为显示码,送到液晶显示。DS18B20模块程序流程图如图3-2所示。启动温度转换读取温度温度处理跳过ROM匹配DS18B20复位跳过ROM匹配DS18B20复位图3-2 DS18B20模块程序流程图3.3 1602液晶模块程序首先对1602液晶显示器进行初始化,按键复位后,延时15ms,进行初始化

33、设置,依次为显示关闭、显示清屏、显示光标移动设置,最后进行写操作。1602液晶驱动程序流程图如图3-3所示。 延时15ms显示模式设置延时5ms显示关闭显示清屏延时5ms延时5ms显示光标移动设置延时5ms显示开及光标设置显示位置设置延时显示温度各位数值1602初始化 图3-3 1602液晶驱动程序流程图毕业设计论文 高精度温度计 第四章 应用的相关软件4.1 keil uVision3编辑软件Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用C来

34、开发,体会更加深刻。 Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。本次设计中,主要使用Keil软件对高精度温度计的源程序(C语言)进行编辑和检验。4.2 Protel 99SE 电路板设计软件Protel 99SE是ProklTechnology公司开发的基于Windows环境下的电路板设计软件。该软件功能强大,人机界面友好,易学易用,仍然是大中院校电学专业必学课程,同时

35、也是业界人士首选的电路板设计工具。Protel 99SE 由两大部分组成:电路原理图设计(Advanced Schematic)和多层印刷电路板设 计(Advanced PCB)。其中Advanced Schematic由两部分组成:电路图编辑器(Schematic)和 元件库编辑器(Schematic Library)。由于高精度温度是一个具体的实物,因此在设计中要进行实物制作,为了方便制作,我们要用到Protel 99SE进行原理图设计。4.3 智能高速通用编辑器该编辑器编程速度无与伦比,逼近芯片理论极限。基本配置48脚流行驱动电路,一颗通用适配器(插在DIP48锁紧座上)支持同封装所有类

36、型器件,48脚及以下DIP器件无需适配器直接支持。通用适配器保证快速新器件支持。I/O电平由DAC控制,直接支持低达1.5V的低压器件。更先进的波形驱动电路极大抑制工作噪声,配合IC厂家认证的算法,无论是低电压器件、二手器件还是低品质器件均能保证极高的编程良品率。编程结果可选择高低双电压校验,保证结果持久稳固。支持90多个厂家9000多种FLASH、EPROM、EEPROM、MCU、PLD等器件。支持新器件仅需升级软件(免费)。可测试SRAM、标准TTL/COMS电路,并能自动判断型号。自动检测芯片错插和管脚接触不良,避免损坏器件。可测试和自动识别标准TTL/CMOS逻辑电路和用户自定义测试向

37、量的非标准逻辑电路。工程(Project)将用户关于对象器件的各种操作、设置,包括器件型号设定、烧写文件的调入、配置位的设定、批处理命令等保存在工程文件中,每次运行时一步进入写片操作。器件型号选择和文件载入均有历史(History)记录,方便再次选择。批处理(Auto)命令允许用户将擦除、查空、编程、校验、加密等常用命令序列随心所欲地组织成一步完成的单一命令。量产模式下一旦芯片正确插入CPU即自动启动批处理命令,无须人工按键。自动序列号功能按用户要求自动生成并写入序列号。借助于开放的API用户可以在线动态修改数据BUFFER,使每片芯片内容均不同。器件型号选错,软件按照实际读出的ID提示相近的

38、候选型号。自动识别文件格式, 自动提示文件地址溢出。完善的过流保护功能,避免损坏编程器。逻辑测试功能。图4-1为学校中使用的280 智能高速通用编辑器图4-1 智能高速通用编辑器第五章 实物效果展示本次毕业设计主题为:高精度温度计。我们须将硬件设备与软件编程结合,才能具体的展示所做的温度计的实物效果。在将程序下载进单片机后,我们接通电源,来观测现象。该温度计是用1602LCD来展示成果的。我们可以通过调节与1602相连的电位器来改变1602上显示温度字符的光亮程度,以适应在不同环境下可以清晰地显示温度。另外,在检测DS18B20是否能正常工作时,我们使用了直接的手触方式。结果显示,在同一环境下

39、不同的人具有不同的温度,我们发现,DS18B20能够快速的将所测得的不同人的不同体温显示在1602上,反应迅速、准确。图5-1和图5-2分别为高精度温度计实物电路板和实物效果展示。 图5-1 高精度温度计实物图 图5-2 实物效果展示毕业设计论文 高精度温度计第六章 结论与心得经过将近三周的单片机课程设计,终于完成了我的温度计的设计,虽然没有完全达到设计要求,但从心底里说,还是高兴的,毕竟这次设计把实物都做了出来,高兴之余不得不深思呀!在本次设计的过程中,我发现很多的问题,虽然以前还做过相似的设计但这次设计真的让我长进了很多,单片机课程设计重点就在于软件算法的设计,需要有很巧妙的程序算法,虽然

40、以前试着写过几次程序,但我觉的写好一个程序并不是一件简单的事,有好多的东西,只有我们去试着做了,才能真正的掌握,只学习理论有些东西是很难理解的,更谈不上掌握。这次的高精度温度计设计实验,不仅把将课堂上学到的理论知识与实际应用结了起来,而且使我对电子电路、电子元器件、印制电路板等方面的知识有了更进一步加深认识,同时在软件编程、排版调试、焊接技术、相关仪器设备的使用技能等方面得到较全面的锻炼和提高。在大学的课堂的学习只是在给我们灌输专业知识,而我们应把所学的用到我们现实的生活中去,此次的温度计设计给我奠定了一个实践基础,我会在以后的学习、生活中磨练自己,使自己适应于以后的竞争。 致谢本文是在白丽君

41、老师的悉心指导下完成的。白老师诲人不倦的受业态度以及平易近人的性格使我终身难忘。在整个毕业设计过程中,感谢白老师给予我很多理论和实践的指导,丰富的实践经验帮助我渡过了一个个技术难关。在指导此次毕业设计的同时,白老师还教会了我们很多为人的道理和正确处事的态度,这些都是这一个月来的毕业设计学习生活带给我的宝贵收获。在这里,我谨对白老师的关怀和帮助致以最衷心的谢意!与此同时,我同样感谢我的组员们,如果没有大家的相互支持,相互鼓励,我们也不会完成得如此顺利。在这里,我由衷的感谢你们!感谢你们的帮助,感谢你们的教诲,感谢你们的一切。3毕业设计论文 高级精度温度计 参考文献1 余永权.ATMEL89系列单

42、片机应用技术M.北京:北京航空航天大学出版社,2002.P91.2 田希晖.薛亮儒.C51单片机技术教程M.北京:人民邮电出版社,2007.P139.3 胡汉才编著.单片机原理及其接口技术.北京;清华大学出版社,20024 李杰写.数显式温度计的制作.电子世界,2003(10)5 吴金戌等编著.8051单片机实践与应用. 北京;清华大学出版社,20026 曹巧媛编著.单片机原理及应用. 北京;电子工业出版社,19977李朝青.单片机原理及接口技术(简明修订版).杭州:北京航空航天大学出版社,19988李广弟.单片机基础.北京:北京航空航天大学出版社,19949阎石.数字电子技术基础(第三版).

43、 北京:高等教育出版社,198910 戴蓉、游凤荷、周景霞.单片机和多片DS1820组成的多点温度测控系统武汉理工大学马房山东院11 赵海兰,赵祥伟.智能温度传感器DS18B20的原理与应用12 金伟正.单线数字温度传感器的原理及电子技术应用。附录A. 高精度温度计电路原理图附录B. 材料清单材料型号数值数量单片机AT89C511传感器DS18B201液晶显示器16021晶振11.0592MHZ1电容120PF2电容24.7uF1电阻14K72电阻24301电位器5025K1按键1毕业设计论文 附录C. 源程序#include#define uchar unsigned char#define

44、 uint unsigned intsbit DQ=P37;/ds18b20与单片机连接口sbit RS=P30;sbit RW=P31;sbit EN=P32;unsigned char code str1=temperature: ;unsigned char code str2= ;uchar data disdata5;uint tvalue;/温度值uchar tflag;/温度正负标志/*lcd1602程序*/void delay1ms(unsigned int ms)unsigned int i,j; for(i=0;ims;i+) for(j=0;j0;i-) DQ = 0;

45、/给脉冲信号 dat=1; DQ = 1; /给脉冲信号 if(DQ) dat|=0x80; delay_18B20(10); return(dat);void ds1820wr(uchar wdata)/*写数据*/unsigned char i=0; for (i=8; i0; i-) DQ = 0; DQ = wdata&0x01; delay_18B20(10); DQ = 1; wdata=1; read_temp()/*读取温度值并转换*/uchar a,b;ds1820rst(); ds1820wr(0xcc);/*跳过读序列号*/ds1820wr(0x44);/*启动温度转换*

46、/ds1820rst(); ds1820wr(0xcc);/*跳过读序列号*/ ds1820wr(0xbe);/*读取温度*/ a=ds1820rd();b=ds1820rd();tvalue=b;tvalue=8;tvalue=tvalue|a; if(tvalue0x0fff) tflag=0; else tvalue=tvalue+1;tflag=1; tvalue=tvalue*6.25;/温度值扩大100倍return(tvalue);/*/ void ds1820disp()/温度值显示 uchar flagdat; disdata0=tvalue/10000+0x30;/百位数

47、disdata1=tvalue%10000/1000+0x30;/十位数 disdata2=tvalue%1000/100+0x30;/个位数 disdata3=tvalue%100/10+0x30;/十分位 disdata4=tvalue%10+0x30;/百分位 if(tflag=0) flagdat=0x20;/正温度不显示符号 else flagdat=0x2d;/负温度显示负号:- if(disdata0=0x30) disdata0=0x20;/如果百位为0,不显示 if(disdata1=0x30) disdata1=0x20;/如果十位为0,也不显示 wr_com(0xc0);

48、 wr_dat(flagdat);/显示符号位 wr_com(0xc1); wr_dat(disdata0);/显示百位 wr_com(0xc2); wr_dat(disdata1);/显示十位 wr_com(0xc3); wr_dat(disdata2);/显示个位 wr_com(0xc4); wr_dat(0x2e);/显示小数点 wr_com(0xc5); wr_dat(disdata3);/显示十分位wr_com(0xc6); wr_dat(disdata4);/显示百分位 /*主程序*/void main() int_play();/初始化显示 while(1)read_temp();/读取温度 ds1820disp();/显示

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

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

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


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