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

    毕业设计(论文)基于单片机的数字温度计设计2.doc

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

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

    毕业设计(论文)基于单片机的数字温度计设计2.doc

    专科毕业设计(论文)设计题目: 基于单片机的数字温度计设计 系 部: 电气工程系 专 业: XX 班 级: XX 姓 名: XX 学 号:XX 指导教师: XX 职 称: XX 20XX年X月 南京摘 要在生产与生活中的很多领域都要用到温度测量,传统的玻璃水银式与机械指针式温度计都存在读数不直观的缺点,而数字温度计兼有显示直观与测量准确等优点。本文以STC89C51单片机为核心、DS18B20温度传感器为测温元件、 LCD1602液晶为显示器件,设计并制作了一个数字温度计。实验结果表明,该数字温度计测量范围为0100,测量精度达±0.5。该数字温度计具有成本低、体积小、响应速度快、界面友好等优点,可广泛用于多种测温场合。关键词 数字温度计 温度测量 DS18B20 LCD1602AbstractThere are various fields of temperature measurement application in production and living. Traditional glass-mercury and mechanical-pointer type thermometers both have defaults of reading obscurely. Yet, digital thermometers have advantages of reading intuitively and measuring accurately. In this paper, the design and fabrication of a digital thermometer is illustrated, which uses STC89C51 microcontroller unit as controlling kernel, DS18B20 temperature sensor as measuring element, and LCD1602 liquid crystal displayer as displaying device. The experiment results shows that the temperature measurement range is 0100, and the temperature measurement accuracy is ±0.5. In summary, this digital thermometer has advantages of low cost, small volume, fast response, friendly interface, etc. And it can be extensively used in lots of field for temperature measurement.KeywordsDigital Thermometer Temperature Measurement DS18B20 LCD1602目 录1 引言12 单片机概述13 设计要求与系统方案23.1设计要求23.2系统方案24硬件设计24.1单片机选型24.2温度测量电路设计34.3 LCD液晶显示电路设计55软件设计75.1流程图设计75.2源程序设计86实现结果166.1 PROTEUS仿真软件简介166.2 仿真结果176.3实际结果18结论19致谢20参考文献211 引言温度测量作为一项基本单元技术,广泛应用于机械仪表、制造流程、农牧食品、医疗保健以及家居生活等众多领域。尽管温度测量的方法多种多样,但常用的温度计可归结为玻璃水银型、机械指针型与数字显示型等三大类。玻璃水银型温度计能够做到高精度与高可靠性,但存在容易破碎、读数不直观的缺点;机械指针型温度计的坚固耐用性与读数直观性都比水银温度计增强很多,但存在精度较差、读数仍然不够直观的缺点;数字温度计不仅显示直观,而且也能够达到较高的精度与可靠度,并具有体积小、造型美观的优点。随着微电子技术的发展,基于单片机、温度传感器与液晶显示器的数字温度计性价比不断提高,将会在生产与生活中得到越来越多的应用。本课题采用STC89C51单片机作为控制核心,DS18B20温度传感器作为测温元件,LCD1602液晶屏作为显示器件,设计并实现了一个数字温度计。2 单片机概述(1)基本定义所谓单片机,就是把中央处理器CPU(Central Processing Unit)、存储器(Memory)、定时器、I/0(Input/Output)接口电路等一些计算机的主要功能部件集成在一块集成电路芯片上的微型计算机。(2) 单片机的特点 小巧灵活,成本低,易于产品化,很高的性价比。 集成度高,有很高的可靠性,能在恶劣环境下工作。 控制功能强,特别是集成了功能接口电路,使用更方便有效。 低功耗,低电压,便于生产便携式产品。(3) 单片机的应用单片机的应用范围很广,比如智能仪器仪表、工业自动化、消费类电子产品、终端及外部设备控制、通讯、武器装备等。3 设计要求与系统方案3.1设计要求 该数字温度计要求达到以下性能:(1) 测温范围为0100;(2) 测温精度为±0.5;(3) 用LCD1602液晶显示温度值。3.2系统方案图 1 数字温度计系统方案数字温度计系统方案设计如图1所示。该系统以单片机为核心控制器件,外围电路主要包括测温电路和显示电路,系统结构简单可靠。该系统的工作过程如下:首先,通过测温电路将采集到的温度信号转换成与温度值成正比的串行数字信号;然后,将该数字信号送入单片机处理;最后,由单片机将处理结果输出,驱动显示电路显示当前的温度值。4 硬件设计4.1单片机选型单片机种类繁多,在使用时要根据系统功能要求、设计任务的复杂程度进行合理选择,才能达到设计要求和最大的性价比。本设计处理的温度信号变化缓慢,所以对单片机的处理速度要求不高。另外,该设计功能简单,程序代码较短,因此对单片机的程序存储器容量要求不高,且只需要两个并口就能满足系统的设计需要。考虑到上述系统功能需求以及经济成本,本设计选用STC89C51单片机。STC89C51单片机是宏晶公司生产的低功耗、高性能8位单片机,片内含4KB的Flash程序存储器和512B的数据存储器,兼容标准MCS-51指令系统及引脚。另外,STC89C51单片机支持ISP(在系统编程)技术,程序烧录方便,且性能稳定、性价比高,可灵活运用于各种控制领域,对于简单的测温系统已经足够。4.2温度测量电路设计4.2.1温度传感器简介DS18B20是美国DALLAS半导体公司推出的第一片支持“一线总线”接口的温度传感器,可直接将温度转化成串行数字信号,它具有体积小、低功耗、性能好、抗干扰能力强、接口电路简单等优点。DS18B20实物如图 2所示。 (1)DS18B20主要性能 与微处理器双向通信时只需要一条口线。 不需要外围元件。图2 DS18B20实物图 可通过电脑的USB口供电。 测温范围达到一55125。固有测温分辨率为0.5。 可实现912位的数字读数方式。 可实现多点测温。(2)DS18B20引脚结构DS18B20有两种封装,一种是最常用的TO-92直插式,另一种是SOIC贴片式,封装引脚见图3。(a)TO-92(DS18B20) (b)SOIC(DS18B20)图3 DS18B20引脚封装图DS18B20各引脚功能如下所示: GND:电源地 DQ:数字信号输入输出端 VDD:外接供电电源输入端 NC:悬空(3)DS18B20工作时序由于采用单总线数据传输方式,DS18B20的数据输入/输出均由同一条线完成。DS18B20初始化时序如图4所示,读写工作时序如图5所示。图4 DS18B20初始化时序图图5 DS18B20读写时序图由于DS18B20单线通信功能是分时完成的,所以它对读写的操作时序有严格的要求。系统对DS18B20的各种操作必须按协议进行。一般的操作过程是,初始化DS18B20(发复位脉冲)、发ROM功能命令、发存储器操作命令、处理数据。4.2.2 具体电路由于DS18B20采用独特的单线接口方式,所以测温电路很简单,如图6所示。DS18B20的数据线DQ通过4.7K的上拉电阻与STC89C51单片机的P3.6口相连。图6 测温电路4.3 LCD液晶显示电路设计4.3.1 LCD1602液晶简介图7 1602液晶实物图液晶(Liquid Crystal )是功耗极低的被动式显示器件,被广泛应用于便携式仪表或功耗低的显示设备中。其工作电流低,尺寸小,显示字迹清晰美观,寿命长,使用方便,显示信息量大。图7是1602液晶实物图。图8 LCD1602的引脚排列液晶是一种高分子材料,它的主要原理是以电流刺激液晶分子产生点、线、面并配合背部灯管构成画面。为叙述简便,通常把各种液晶显示器都直接称为液晶。(1) LCD1602液晶引脚结构LCD1602的引脚排列如图8所示,它有16个引脚可与外界相连,各引脚功能如下所示:第1脚VSS:接地。第2脚VDD:接5V电源。第3脚VEE:对比度调整端。第4脚RS寄存器选择端:RS为0、1时,分别选择命令寄存器、数据寄存器。第5脚R/W读写控制端:R/W为1时,读出;R/W为0时,写入。第6脚Enable使能控制端:Enable为1时,使能;Enable为0,禁止。第7脚14脚:D0D7数据总线。(3) 写操作时序LCD1602液晶写操作时序如图9所示。LCD1602对写操作时序有严格的要求。系统对LCD1602的各种操作必须按协议进行。一般的操作过程是,初始化1602液晶、通过RS确定是写数据还是写命令、读写控制端设置为写模式、完成写操作。图9 1602液晶写操作时序图4.3.2 具体电路图10 LCD液晶显示电路LCD液晶显示电路如图10所示。STC89C51单片机的P1.0、P1.1、P1.2口分别与LCD1602液晶的RS寄存器选择端、R/W读写控制端和Enable使能控制端连接。LCD1602液晶的数据总线通过1K上拉电阻与P0口相连。LCD1602液晶的VEE端接10K可调电阻,通过调节电阻大小来调节背光。5软件设计5.1流程图设计本软件采用采用模块化设计方法。主程序流程图如图11所示,在主程序中完成液晶初始化工作,每隔一段时间调用一次读温度子程序,然后进行温度转换并显示温度值。读温度子程序如图12所示。读温度子程序调用了DS18B20复位初始化子程序、写命令子程序和读命令子程序。 图11主程序流程图 图12读温度子程序流程图5.2 源程序设计(1)DS18B20温度传感器读写功能的实现例如,要跳过ROM匹配,根据DS18B20的控制命令字,跳过ROM匹配命令的代码是“CCH”。要实现这一功能就必须把“CCH”写入DS1820,具体代码是: MOV A, # 0CCH ;命令“CCH”存入A LCALL WR18B20 ;调用写数据子程序执行上面程序后,跳过ROM匹配, 忽略64位ROM地址,直接向DS18B20发温度变换命令。(2)时序的实现对DS18B20温度传感器、LCD1602液晶的操作必须符合严格的时序要求,所有时序通过软件模拟实现。(3)完整的源程序;-定义变量- E BIT P1.2 ;液晶使能端 RW BIT P1.1 ;液晶读写选择端 RS BIT P1.0 ;液晶数据命令选择端 LCDPORT EQU P0 ;数据口 CMD_BYTE EQU 30H ;命令 DAT_BYTE EQU 31H ;数据;-主程序- ORG 0000HSTART: LCALL INITLCD ;液晶初始化RUNI: LCALL GET_TEM ;调用读温度子程序 LCALL B2T_CH ;调用温度数值转换子程序LCALL DISP ;调用液晶显示子程序 AJMP RUNI ;重复循环;-读DS18B20传感器的温度值-GET_TEM : SETB P3.6 LCALL RST18B20 ;复位DS18B20 JB 00H,DZ RETDZ: MOV A, #0CCH ;跳过ROM匹配 LCALL WR18B20 MOV A, #44H;向DS18B20发出温度转换命令 LCALL WR18B20 LCALL DELAY1 LCALL RST18B20 ;准备读温度前先复位DS18B20 MOV A, #0CCH ;跳过ROM匹配 LCALL WR18B20 MOV A, #0BEH ;向DS18B20发出读温度命令 LCALL WR18B20 LCALL RE18B20 ;读出温度数据 RET;-DS18B20复位初始化程序 -RST18B20: SETB P3.6 NOP CLR P3.6 MOV R0, #06BH ;主机发出复位低脉冲 MOV R1, #03HDSR1: DJNZ R0, DSR1 MOV R0, #6BH ;660us复位低电平 DJNZ R1, DSR1 SETB P3.6 ;拉高数据线 NOP NOP NOP MOV R0, #25HDSR2: JNB P3.6,DSR3 ;等待DS18B20回应 DJNZ R0, DSR2 LJMP DSR4DSR3: SETB 00H ;置标志位,表示DS1820存在 LJMP DSR5DSR4: CLR 00H ;清标志位,表示DS1820不存在 LJMP DSR7DSR5: MOV R0, #117DSR6: DJNZ R0, DSR6 ;延时一段时间DSR7: SETB P3.6 RET;-写DS18B20的子程序 -WR18B20:MOV R2, #8 ;写一个字节8bit命令 CLR C WR1: CLR P3.6 MOV R3, #6 DJNZ R3,$ ;12us左右延时 RRC A MOV P3.6,C MOV R3, #23 DJNZ R3,$ ;50us延时,确保DS18B20电平采样正确 SETB P3.6 NOP DJNZ R2,WR1 SETB P3.6 RET;- 从DS18B20中读温度数据程序-;- 2FH存温度值的高字节,2EH存温度值的低字节 -RE18B20:MOV R4, #2 MOV R1, #2FHRE00: MOV R2,#8RE01: CLR C SETB P3.6 NOP NOP CLR P3.6 NOP NOP NOP SETB P3.6 MOV R3, #9RE10: DJNZ R3, RE10 ;延时12us MOV C,P3.6 MOV R3,#23RE20: DJNZ R3, RE20 ;延时50us RRC A DJNZ R2,RE01 MOV R1,A DEC R1 DJNZ R4,RE00RET;- 显示子程序 -DISP: LCALL DISPMSG1 ;显示第一行 LCALL DISPMSG2 ;显示第二行 RET;-温度数据转换子程序-B2T_CH:MOV A,2FH ANL A,#0F0H SWAP A MOV 2DH,A MOV A,2EH ANL A,#07H MOV B,#16 MUL AB ADD A,2DH ;得到温度数据的十进制值 MOV B,#10 DIV AB ;获得温度数据的十位 MOV 2CH,A MOV 2BH,B MOV A,2BH MOV B,#10 DIV AB ;获得温度数据的个位和小数点后数字 MOV 2BH,A MOV 2AH,B RET;-LCD写命令-WRITE_CMD: CLR RS ;0写指令寄存器,1写数据寄存器 CLR RW ;0表示写,1表示读 MOV A,CMD_BYTE MOV LCDPORT,A ;将命令送达数据线 NOP NOP SETB E ;给E一个高脉冲,完成写操作 LCALL DELAY CLR E RET;- LCD写数据-WRITE_DAT:SETB RS ;0写指令寄存器,1写数据寄存器 CLR RW ;0表示写,1表示读 MOV A,DAT_BYTE MOV LCDPORT,A ;将数据送达数据线 NOP NOP SETB E ;给E一个高脉冲,完成写操作 LCALL DELAY CLR E RET;-LCD初始化-INITLCD: CLR E MOV CMD_BYTE,#38H ;设置16x2显示,5X7点阵,8位数据接口 LCALL WRITE_CMD MOV CMD_BYTE,#01H ;显示清0,数据指针清0 LCALL WRITE_CMD MOV CMD_BYTE,#06H ;写一个字符后地址指针加1 LCALL WRITE_CMD MOV CMD_BYTE,#0CH ;设置开显示,不显示光标 LCALL WRITE_CMD RET;-显示第一行-DISPMSG1:MOV CMD_BYTE,#080H ;第一行地址 LCALL WRITE_CMD MOV R7,#10H MOV R6,#00H MOV DPTR,#TABDISPMSG1_1:MOV A,R6 MOV C A,A+DPTR MOV DAT_BYTE,A LCALL WRITE_DAT ;写数据 INC R6 DJNZ R7,DISPMSG1_1 RET;-显示第二行-DISPMSG2: MOV A,2CH ADD A,#30H ;得到十位数的ASCII码 MOV 11H,A MOV A,2BH ADD A,#30H ;得到个位数的ASCII码 MOV 12H,A MOV 13H,#2EH ;得到小数点符号. MOV A,2BH ADD A,#30H ;得到小数点后数的ASCII码 MOV 14H,A MOV 15H,#223 MOV 16H,#067 ;得到温度单位符号 MOV CMD_BYTE,#0C6H LCALL WRITE_CMD MOV R1,#11H MOV R2,#4DISPMSG2_2:MOV A,R1 MOV DAT_BYTE,A LCALL WRITE_DAT INC R1 DJNZ R2,DISPMSG2_2 RET;-第一行字符-TAB: DB "Now Temperature:";-延时子程序-DELAY: MOV R4,#2DEL02: MOV R3,#250DEL03: DJNZ R3,DEL03 DJNZ R4,DEL02 ; RETDELAY1: MOV R3,#38H ;延时DL3: MOV R4,#86H DL2: MOV R5,#20HDL1: NOP NOP DJNZ R5,DL1 DJNZ R4,DL2 DJNZ R3,DL3 RET END6 实现结果6.1 PROTEUS仿真软件简介PROTEUS是一款集单片机仿真和SPICE分析于一身的EDA仿真软件,经过多年的发展,已成为当前EDA市场上性价比最高、性能最强的一款软件。PROTEUS现已在50多个国家得到应用,广泛应用于高校的大学生或研究生电子教学与实验以及公司实际电路设计与生产。PROTEUS除了具有和其它EDA工具一样的原理图设计、PCB自动生成及电路仿真的功能外,最大特点是PROTEUS VSM (Virtual System Modelling)实现了混合模式的SPICE电路仿真,它将虚拟仪器、高级图表仿真、微处理器软仿真器、第三方的编译器和调试器等有机结合起来,在世界范围内第一次实现了在硬件物理模型搭建成功之前,即可在计算机上完成原理图设计、电路分析与仿真、处理器代码调试及实时仿真、系统测试,以及功能验证。6.2 仿真结果图13仿真结果图在PROTEUS软件中调试仿真系统成功后,运行系统。在该系统中,可以通过调节U2传感器按钮改变模拟环境温度值,当调节模拟温度值在0100范围内变化时,液晶显示值也会随之改变,且与模拟温度值保持一致。例如:当模拟温度值调节为47.9时,液晶显示“Now temperature:48.2”,如图13所示。液晶显示值与模拟环境温度值之间的误差为0.3,满足精度要求。通过调节U2传感器按钮,笔者随机采样温度,得到如表1所示的数据组。仿真实验结果表明,该数字温度计的测量范围达到0100,测量误差小于±0.5,且显示直观,达到设计要求。 表1 模拟环境温度值与液晶显示温度值对比表模拟环境温度值液晶显示温度值误差5.35.40.117.717.5-0.225.625.80.247.948.20.387.487.3-0.16.3 实际结果仿真调试成功后,开始实物制作。首先,准备好万用板、STC89C51单片机、102可调电阻、DS18B20 温度传感器、LCD1602液晶等元器件材料;然后,按照仿真电路图焊接硬件电路、烧录程序、软硬联调;最后,调试成功,制作完成数字温度计,如图14所示。图14 数字温度计实物制作图在室温下做实际实验,首先通过USB口给实验电路板供5V电压,数字温度计开始工作,然后通过调节LCD1602液晶102可调电阻的电阻大小来调节液晶背光,液晶清晰显示:“Now temperature:27.9”。通过高精度温度计测量得到当时环境温度值为27.5,计算出液晶显示温度值的误差为0.4,完全达到精度要求。结 论本课题采用STC89C51单片机为控制核心,以DS18B20温度传感器为测温元件,以LCD1602液晶作为显示器件,设计并制作了一个数字温度计。该数字温度计实现的测量范围为0100,测量精度达±0.5,兼有显示直观与测量准确可靠的优点,并且体积小、响应快,具有较高的性能价格比。该数字温度计仍然存在一些改进的空间,比如测量范围可以扩展到0100外,测量精度还可进一步提高,可以采用纽扣电池供电以便携带等。随着温度传感技术的发展,高性能温度传感器的价格会不断下降,数字温度计的性价比还会进一步提高,其在各领域的应用也会不断扩大。致 谢这次毕业设计在设计与操作的过程中,感谢指导老师给了我很大的帮助。同时也离不开同学的热情帮助,是他们在我遇到困难的过程中给了我启发,通过本次毕业设计,我在专业知识、专业技能和解决问题方面都得到了很大的提高。更深入了解和掌握了传感器的基本理论知识,并在单片机实际电路开发和常用编程设计思路方面有了一定程度的提高,虽然本次设计不是很完美,但是为我以后的设计累积了经验。然而由于缺乏实际工程经验,加之设计水平有限,设计中不妥之处在所难免,请各位老师批评指正。祝全体老师身体健康,万事如意,工作顺利!参 考 文 献1 赵秀珍. 单片微型计算机原理及其应用. 中国水利水电出版社,20082 李朝青. 单片机原理及接口技术. 北京航空航天大学出版社,20083 潘新民, 王燕芳. 微型计算机控制技术. 北京:电子工业出版社,20034 李广弟. 单片机技术M. 北京:航空航天大学出版社.20015 阎石. 数字电子技术基础(第三版). 北京:高等教育出版社,20096 黎旺星. 项目驱动式单片机教程. 北京:中国电力出版社,20097 王勇, 叶敦范. 基于AT89C51的便捷式实时温度检测仪J.仪表技术与传感器,2006(1)8 沈德金, 陈粤初. 单片机接口电路与应用程序实例. 北京:航空航天大学出版社,20089 赵俊生. 单片机技术项目化原理与实训. 北京:电子工业出版社,200910 李学礼. 基于Proteus 的8051单片机的实例教程. 北京:电子工业出版社,200811

    注意事项

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

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




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开