DS18B20数字温度计设计实验报告

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

湖北科技学院

单片机原理及应用

课程设计报告书

题目:DS18B20数字温度计的设计

姓名:

指导老师:

设计时间: 2014年12月1日—12月20日

电子与信息工程学院

目录

1.引言 (3)

1.1.设计意义 (3)

1.2.系统功能要求 (3)

2.方案设计 (3)

3.硬件设计 (2)

4.软件设计 (5)

5.系统调试 (7)

6.设计总结 (8)

7.附录 (9)

8.作品展示 (15)

9.参考文献 (17)

DS18B20数字温度计设计

1.引言

1.1. 设计意义

在日常生活及工农业生产中,经常要用到温度的检测及控制,传统的测温元件有热电偶和热电阻。而热电偶和热电阻测出的一般都是电压,再转换成对应的温度,需要比较多的外部硬件支持。其缺点如下:

●硬件电路复杂;

●软件调试复杂;

●制作成本高。

本数字温度计设计采用美国DALLAS半导体公司继DS1820之后推出的一种改进型智能温度传感器DS18B20作为检测元件,测温范围为-55~125℃,最高分辨率可达0.0625℃。

DS18B20可以直接读出被测温度值,而且采用三线制与单片机相连,减少了外部的硬件电路,具有低成本和易使用的热点。

1.2. 系统功能要求

设计出的DS18B20数字温度计测温范围在-55~125℃,误差在±0.5℃以内,采用LED数码管直接读显示。

2.方案设计

按照系统设计功能的要求,确定系统由3个模块组成:主控制器、测温电路和显示电路。

数字温度计总体电路结构框图如4.1图所示:

图4.1

3. 硬件设计

温度计电路设计原理图如下图所示,控制器使用单片机AT89C2051,温度传

感器使用DS18B20,使用四位共阳LED 数码管以动态扫描法实现温度显示。

AT89C2051 主 控

器 DS18B20 显示电路 扫描驱动

主控制器单片机AT89C2051

具有低电压供电和小体积等特点,两个端口刚好满足电路系统的设计需要,很适合便携手持式产品的设计使用。系

统可用两节电池供电。AT89C2051的引

脚图如右图所示:

1、VCC:电源电压。

2、GND:地。

3、P1口:P1口是一个8位双向

I/O口。口引脚P1.2~P1.7提供内部上

拉电阻,P1.0和P1.1要求外部上拉电

阻。P1.0和P1.1还分别作为片内精密

模拟比较器的同相输入(ANI0)和反相

输入(AIN1)。P1口输出缓冲器可吸收

20mA电流并能直接驱动LED显示。当P1口引脚写入“1”时,其可用作输入端,当引脚P1.2~P1.7用作输入并被外部拉低时,它们将因内部的写入“1”时,其可用作输入端。当引脚P1.2~P1.7用作输入并被外部拉低时,它们将因内部的上拉电阻而流出电流。

4、P3口:P3口的P3.0~P3.

5、P3.7是带有内部上拉电阻的七个双向I/O 口引脚。P3.6用于固定输入片内比较器的输出信号并且它作为一通用I/O引脚而不可访问。P3口缓冲器可吸收20mA电流。当P3口写入“1”时,它们被内部上拉电阻拉高并可用作输入端。用作输入时,被外部拉低的P3口脚将用上拉电阻而流出电流。

5、RST:复位输入。RST一旦变成高电

平所有的I/O引脚就复位到“1”。当振荡器

正在运行时,持续给出RST引脚两个机器周

期的高电平便可完成复位。每一个机器周期

需12个振荡器或时钟周期。

6、XTAL1:作为振荡器反相器的输入和

内部时钟发生器的输入。

7、XTAL2:作为振荡器反相放大器的输出。

总线驱动器 74LS244

74LS244为3态8位缓冲器,一般用作总线驱动器。引脚图见上图。

显示电路

显示电路采用4位共阳极LED数码管,从P1口输出段码,列扫描用P3.0~P3.3口来实现,列驱动用8055三极管。

温度传感器 DS18B20

DS18B20的性能特点:

1、适应电压范围更宽,电压范围:3.0~5.5V,在寄生电源方式下可由数据线供电。

2、独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。

3、 DS18B20支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现组网多点测温。

4、DS18B20在使用中不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管的集成电路内。

5、温范围-55℃~+125℃,在-10~+85℃时精度为±0.5℃。

6、可编程的分辨率为9~12位,对应的可分辨温度分别为0.5℃、0.25℃、0.125℃和0.0625℃,可实现高精度测温。

7、在9位分辨率时最多在 93.75ms内把温度转换

为数字,12位分辨率时最多在750ms内把温度值转换

为数字,速度更快。

8、测量结果直接输出数字温度信号,以"一线总

线"串行传送给CPU,同时可传送CRC校验码,具有极

强的抗干扰纠错能力。

9、负压特性:电源极性接反时,芯片不会因发热

而烧毁,但不能正常工作。DS18B20与单片机的接口

电路(引脚图见右图)

DS18B20可以采用电源供电方式,此时DS18B20的第1 脚接地,第2脚作为信号线,第3脚接电源。

4. 软件设计

系统程序主要包括主程序、读出温度子程序、温度转换命令子程序、计算温度子程序和显示数据刷新子程序等。

4.1 主程序

主程序的主要功能是负责温度的实时显示、读出并处理DS18B20的测量温度值。温度测量每1s进行一次。主程序流程图如图4.1所示。

4.2 读出温度子程序

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

相关文档
最新文档