文档库 最新最全的文档下载
当前位置:文档库 › 数字温度计的设计

数字温度计的设计

内容摘要

本文将介绍一种基于单片机控制的数字温度计,就是用单片机实现温度测量,传统的温度检测大多以热敏电阻为温度传感器,但热敏电阻的可靠性差,测量温度准确率低,而且必须经过专门的接口电路转换成数字信号才能由单片机进行处理。本次采用DS18B20数字温度传感器来实现基于AT89S52单片机的数字温度计的设计用LCD数码管以串口传送数据,实现温度显示,能准确达到以上要求,可以用于温度等非电信号的测量,主要用于对测温比较准确的场所,或科研实验室使用,能独立工作的单片机温度检测、温度控制系统已经广泛应用很多领域。

索引关键词:温度计单片机数字控制 DS18B20

目录

第一章绪论 (1)

1.1 前言 (1)

1.2 数字温度计设计方案 (1)

1.3 总体设计框图 (1)

第二章硬件电路设计 (1)

2.1 主要芯片介绍 (1)

2.2 温度传感器 (4)

2.3 主板电路 (5)

2.4 显示电路 (5)

第三章软件设计 (6)

3.1 主程序流程图 (6)

3.2读出温度子程序流程图 (6)

3.3 温度转换命令子程序流程图 (7)

3.4 计算温度子程序流程图 (8)

3.5 显示数据刷新子程序流程图 (9)

第四章 Proteus仿真调试 (9)

4.1 Proteus软件介绍 (9)

4.2 本次设计仿真过程 (10)

后记 (12)

参考文献 (13)

数字温度计设计

第一章绪论

1.1 前言

随着人们生活水平的不断提高,单片机控制无疑是人们追求的目标之一,它所给人带来的方便也是不可否定的,其中数字温度计就是一个典型的例子,但人们对它的要求越来越高,要为现代人工作、科研、生活、提供更好的更方便的设施就需要从数单片机技术入手,一切向着数字化控制,智能化控制方向发展。随着时代的进步和发展,单片机技术已经普及到我们生活,工作,科研,各个领域,已经成为一种比较成熟的技术,单片机已经在测控领域中获得了广泛的应用

本设计所介绍的数字温度计与传统的温度计相比,具有读数方便,测温范围广,测温准确,其输出温度采用数字显示,该设计控制器使用单片机AT89C51,测温传感器使用DS18B20,用LCD数码管以串口传送数据,实现温度显示,能准确达到以上要求。

1.2 数字温度计设计方案

在单片机电路设计中,大多都是使用传感器,所以这是非常容易想到的,所以可以采用一只温度传感器DS18B20,此传感器,可以很容易直接读取被测温度值,进行转换,就可以满足设计要求。

1.3 总体设计框图

温度计电路设计总体设计方框图如图1-1所示,控制器采用单片机AT89C51,温度传感器采用DS18B20,用LCD液晶显示屏以串口传送数据实现温度显示:

图1-1

第二章硬件电路设计

2.1 主要芯片介绍

一 AT89C51的介绍

选用的AT89C51在功能上最突出是的可以实现在线的编程。用于实现系统的总的控制。其主要功能特性列举如下:

·与MCS-51 兼容

·4K字节可编程FLASH存储器

·寿命:1000写/擦循环

·数据保留时间:10年

·全静态工作:0Hz-24MHz

·三级程序存储器锁定

·128×8位内部RAM

·32可编程I/O线

·两个16位定时器

·5个中断源

·可编程串行通道

·低功耗的闲置和掉电模式

·片内振荡器和时钟电路

二 AT89C51各引脚功能介绍

VCC:供电电压。

GND:接地。

P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P0口的管脚第一次写1时,被定义为高阻输入。

P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。

P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。

P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL 门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。

P3口也可作为AT89C51的一些特殊功能口,如下表所示:

口管脚备选功能

P3.0 RXD(串行输入口)

P3.1 TXD(串行输出口)

P3.2 /INT0(外部中断0)

P3.3 /INT1(外部中断1)

P3.4 T0(记时器0外部输入)

P3.5 T1(记时器1外部输入)

P3.6 /WR(外部数据存储器写选通)

P3.7 /RD(外部数据存储器读选通)

P3口同时为闪烁编程和编程校验接收一些控制信号。

RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。

ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。

/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。

/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。

XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。

XTAL2:来自反向振荡器的输出。

图2-1

振荡器特性: XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大

器可以配置为片内振荡器。

2.2 温度传感器

一 DS18B20介绍

DS18B20是Dallas公司推出的数字温度测控器件。 2.7~ 5.0V供电电压,测量温度范围为-55~+125℃,9位数字量表示温度值,分辨率为0.5℃。在0~+70℃精确度为

0.5℃,-40~0℃和+70~+85℃精确度为1℃,-55~-40℃和+85~ +125℃精确度为2℃。TH 和TL寄存器中的温度报警限设定值存放在非易失性存储器中,掉电后不会丢失。通过三线串行接口,完成温度值的读取和TH、TL的设定。DS18B20的外围接线简单,使用灵活。使用时请注意它的测量范围及精度能否满足要求。用作热继电器使用时必须写入控制寄存器操作模式和TH、TL寄存器的温度设定值。

二DS18B20引脚功能说明

图2-2

DS1620采用8脚DIP封装或8脚SOIC封装。引脚排列如图2-2所示,引脚功能说明如下所列。

DS18B20引脚功能说明

1.DQ

三线制的数据输入/输出

2.CLK/CONV

三线制的时钟输入和标准转换输入

3.RST

三线制的复位输入

4.GND

5.TCOM

温度高/低限触发输出

6.TLOW

温度低限触发输出

7.THIGH

温度高限触发输出

8.VDD

3~5V电源

2.3 主板电路

系统整体硬件电路包括,传感器数据采集电路,温度显示电路,单片机主板电路等,如图2-3 所示:

图2-3

2.4 显示电路

显示电路是使用的串口显示,这种显示最大的优点就是使用口资源比较少,只用p2口串口的发送和接收,LCD液晶显示屏显示,显示比较清晰。温度显示电路如图2-4所示:

图2-4

第三章软件设计

3.1 主程序流程图

主程序的主要功能是负责温度的实时显示、读出并处理DS1620的测量的当前温度值,温度测量每1s进行一次。这样可以在一秒之内测量一次被测温度,其程序流程见图3-1示:

图3-1

3.2读出温度子程序流程图

图3-2

读出温度子程序的主要功能是读出RAM中的9字节,在读出时需进行CRC校验,校验有错时不进行温度数据的改写。其程序流程图如图3-2所示:

3.3 温度转换命令子程序流程图

温度转换命令子程序主要是发温度转换开始命令,当采用12位分辨率时转换时间约为750ms,在本程序设计中采用1s显示程序延时法等待转换的完成。温度转换命令子程序流程图如上图,图3-3所示:

图3-3

3.4 计算温度子程序流程图

计算温度子程序将RAM中读取值进行BCD码的转换运算,并进行温度值正负的判定,其程序流程图如图3-4所示:

图3-4

3.5 显示数据刷新子程序流程图

显示数据刷新子程序主要是对显示缓冲器中的显示数据进行刷新操作,当最高显示位为0时将符号显示位移入下一位。程序流程图如图3-5所示:

图3-5

第四章Proteus仿真调试

4.1 Proteus软件介绍

一 Proteus软件具有其它EDA工具软件的功能。这些功能是:

1.原理布图

2.PCB自动或人工布线

3.SPICE电路仿真

二革命性的特点

1.互动的电路仿真

用户甚至可以实时采用诸如RAM,ROM,键盘,马达,LED,LCD,AD/DA,部分SPI器件,部分IIC器件。

2.仿真处理器及其外围电路

可以仿真51系列、AVR、PIC、ARM、等常用主流单片机。还可以直接在基于原理图的虚拟原型

以上编程,再配合显示及输出,能看到运行后输入输出的效果。

4.2 本次设计仿真过程

一创建原理图

启动Proteus软件,单击挑选元件按钮,在元件库中选出所需元器件,出现如图4-1所示:

图4-1

二绘制的仿真原理图如4-2所示:

图4-2

三系统调试

双击单片机出现下图所示画面图4-3,在Program File一栏中选取仿真项目的源程序代码,点击OK。

图4-3

四开始仿真

单击Play按钮,进入仿真状态,出现下图4-4所示

图4-4

后记

经过将近几周的毕业设计,终于完成了我的数字温度计的设计,虽然没有完全达到设计要求,但从心底里说,还是高兴的,毕竟这次设计把仿真成功做了出来,高兴之余不得不深思呀!

在本次设计的过程中,我发现很多的问题,虽然以前还做过这样的设计但这次设计真的让我长进了很多,单片机毕业设计重点就在于软件算法的设计,需要有很巧妙的程序算法,。此外,本次毕业设计也使我对单片机技术有了更进一步的了解,实际操作和课本上的知识有很大的联系,又高于课本,一个看似很简单的电路,要动手做出来就比较困难了,因为是设计让我们在以后的学习中要注意这点,要把课本上所学的知识跟实际联系起来。有好多的东西,只有我们去试着做了,才能真正的掌握,只学习理论有些东西是很难理解的,更谈不上掌握,同时本次电路的设计巩固了所学知识,也使我们把理论与实际从真正的意义上结合起来了,增强了学习的兴趣,考验了我们借助书店、互联网搜索、查阅相关资料,以及综合能力。

从这次的毕业设计中,我真真正正的意识到,在以后的学习中,要理论联系实际,把我们所学的理论知识用到实际当中,学习单机片机更是如此,程序只有在经常的写与读的过程中才能提高,这就是我在这次毕业设计中的最大收获。

毕业设计是对大学三年所学知识的一次综合运用和检阅,同时也对自学能力提出很高的要求。虽然本次设计顺利完成了,但我觉得自己的理论知识掌握的不够扎实,有很多不足和欠缺的地方,希望老师多多批评指正。在以后的实践学习中我会时刻提醒自己做到认真学习不求最好只求更好。

参考文献

[1] 戴军,袁惠新.膜技术在含油废水处理中的应用[J].膜科学与技术,2002,22(2):59-64

[2] 毛侠,孙云.和谐图案的自动生成研究[A].第一届中国情感计算及智能交互学术会议论文集[C].北京:中国科学院自动化研究所,2003:277-279.

[3] 王湛.膜分离技术基础[M].北京:化学工业出版社,2000:14-21,30.

[4] 张志祥. 间断动力系统的随机扰动及其在守恒律方程中的应用[D].北京:北京大学数学学院,1998.

[5] 河北绿洲生态环境科技有限公司.一种荒漠化地区生态植被综合培育种植方法[P]:中国,01129210.5[P/OL]. 2001-10-24

[6] GB/T16159-1996,汉语拼音证词法基本规则[S].北京:中国标准出版社,1996.

[7] 毛侠.情感工学破解“舒服之谜”[N].光明日报,2004-04-17(B1).

相关文档