单片机课程设计之基于DS18B20的多点温度测量系统的设计.doc
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
单片机使用系统设计 课 题:基于DS18B20的多点温度测量系统的设计 姓 名: 班 级: 学 号: 指导老师: 日 期: 引 言 在粮库测温系统、冷库测温系统、智能化建筑控制系统、中央空调系统等多种系统中都 需要多点温度测量系统。因此,多点温度测量技术实现尤为重要。美国Dallas公司推出 的数字温度传感器DSl8B20,电源供电范围在3.0~5.5V;温度测量范围为- 55~+125 ;具有独特的单总线接口,仅需要占用一个通用I/O端口即可完成和微处理器 的通信;在- 10~+85 温度范围内具有±0.5 精度;用户可编程设定9~12位的分辨率。以上特性使得 DSl8B20非常适用于构建高精度、多点温度测量系统。 DS18B20简介 DSl8B20是美国Dallas半导体公司推出的一种智能数字温度传感器。和传统的热敏电阻相 比,它能够直接读出被测温度,并且可根据实际要求通过编程实现9~12位的数字值读数 方式;可以分别在93.75ms和750 ms内完成9位和12位的数字量;从DS18B20读出信息或写入DS18B20信息仅需要1根口线(单 线接口);温度变换功率来源于数据总线,总线本身也可以向所挂接的DS18B20供电,而 无需额外电源。使用DS18B20可使系统结构更趋简单,可靠性更高。 1系统硬件设计 由DS18B20和Atmel公司推出的单片机AT89C51以及相关外围电路组成的高精度、多点温度 测量系统的结构框图如图1所示。系统采用8片DS18B20构成小型温度传感器网络[3],通 过并行连接方式连接至单片机的通用I/O端口。单片机获得温度信息后,通过特定的算法 ,将处理后的温度信息通过LED显示出来,同时通过串行口送上位机处理。 DS18B20内部均有一个独立的64位序列号,单片机通过序列号可以对一条总线上的多支D S18B20进行控制,读取它们的温度。但是,要完成这个操作,软件设计比较复杂,同时 存在一个缺点——速度太慢。无法适用于一些实时性要求高的测温场合。所以本次设计采 取一种利用单片机的并口,同步快速读取8支DS18B20的方法。 2系统软件设计 2.1 并行同步快速读取8支DS18B20的方法 对于一支DS18B20,我们要输出或输入各类数据时,可以采用位寻址,比如:sbit DQ=P3^3; DQ=0; DQ=1; 而对于8支DS18B20,如果还采用位寻址的方法,采用单总线,通过查询序列号依次读取 ,程序就非常复杂,而且速度会大大减慢,所以将位寻址扩展为字节寻址,比如: #define DQ P3; DQ=0x00; DQ=0xff; 即可一次输出或输入8个位数据,从而达到同步读取的目的。 2.2 系统的温度合成处理 采用上述方法一次读取8支DS18B20的时间不超过1秒,但读取的数据在RAM中并不顺序排 列的。必须用软件合成处理,才能得到所需要的温度值。如表- 1所示,纵向排列的是存放每次读取数据的Buf,而横向才是我们需要的温度值,此时设计 一个将纵向数据转为横向温度的程序,连续执行两次,就可以将DS18B20的高和低字节全 部合成标准的温度数据。 2.3 系统软件流程图 主程序执行流程如图2所示,主程序先对各DS18B20进行初始化,然后重复调用写命令和 读数据模块,最后将数据处理后送入LED显示。 2. 4 系统电路图 3系统仿真 Proteus软件是Labcenter公司的一款电路设计和仿真软件,它包括ISIS、ARES等软件模 块,ARES模块主要用来完成PCB的设计,而ISIS模块用来完成电路原理图的绘制和仿真。 Proteus的软件仿真基于VSM技术,它和其他软件最大的不同也是最大的优势就在于它能 仿真大量的单片机芯片,比如MCS- 51系列、PIC系列等等,以及单片机外围电路,比如键盘、LED、LCD等等。通过Proteus 软件的使用我们能够轻易地获得一个功能齐全、实用方便的单片机实验环境。 本设计的核心部分为八点温度数据的快速准确读取,完成电路设计和软件编程后,将程 序在KEIL下编译,装入单片机,进行仿真,可以看到,同步快速多点温度测量得到了实 现。仿真中的一个画面如下面图3中的效果所示,此时采集的是第5通路的测量温度。 4系统运行和数据分析 根据系统软件和硬件设计方案搭建实际系统电路,依次采集八路温度测量数据,并且在 LED数码管上显示所测温度,同时和现场温度计测量值进行比较,系统运行结果如下,见 表-2: 表-2 传感器和温度计数据对照 测量结果数据和温度计直接测量吻合,符合仿真结果,本系统的测量范围为0-99 ,DS 18B20数字值读取位数为8位,精确到1 ,满足日常测量使用。另外可以通过改变DS18B2 0数字值读取位数提高精度,也可以根据实际使用要求扩大量程。在 本文档主要介绍了一个基于DS18B20的多点温度测量系统的设计,该系统广泛应用于粮库、冷库等环境的温度监控。DS18B20是一款由Dallas半导体公司制造的数字温度传感器,具备宽电源电压范围、高精度、单总线接口以及可编程分辨率等特点,特别适合构建多点温度测量系统。 DS18B20的特性包括3.0至5.5V的供电范围,-55至+125℃的测量温度范围,以及在-10至+85℃内±0.5℃的精度。传感器通过单总线接口与微控制器通信,仅需一个I/O端口,简化了系统设计。此外,每个DS18B20内置64位序列号,允许在同一线路上区分多个传感器。 系统硬件设计中,采用了8个DS18B20传感器并行连接到AT89C51单片机的I/O端口,通过特定算法处理后,通过LED显示温度信息,并通过串行口将数据传送给上位机。由于DS18B20的序列号控制复杂且速度较慢,设计选择了并行同步快速读取8个DS18B20的方法,通过扩展位寻址为字节寻址,实现同步读取,提高效率。 软件设计方面,首先进行初始化,然后通过写命令和读取数据模块循环执行,最后处理数据并在LED上显示。通过软件合成处理,将非顺序读取的数据转换为所需的温度值。系统软件流程清晰,主程序包含初始化、写命令、读数据和数据显示等步骤。 系统仿真采用了Proteus软件,它支持多种单片机芯片和外围设备的仿真,可以提供全面的单片机实验环境。经过仿真,实现了同步快速多点温度测量。 实际运行时,系统采集8路温度数据并与现场温度计对比,结果显示数据吻合,测量范围为0至99℃,精度为1℃,满足一般应用需求。系统可通过调整DS18B20的读取位数提升精度或扩展测量范围,以适应不同场景的需要。 这个基于DS18B20的多点温度测量系统设计,结合了DS18B20的优势,通过精心的硬件和软件设计,实现了高效、准确的多点温度监测,具有较高的实用价值。
- 「已注销」2024-01-11非常有用的资源,可以直接使用,对我很有用,果断支持!
- 粉丝: 199
- 资源: 3万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 计算机小白学习前端知识点
- 基于微信小程序的青少年科普教学系统平台设计与实现.docx
- 基于微信小程序的社区超市管理系统设计与实现.docx
- 基于微信小程序的社区车位租赁系统设计与实现.docx
- 基于微信小程序的网络安全科普系统设计与实现.docx
- 基于微信小程序的水果销售系统设计与实现.docx
- 基于微信小程序的刷题系统设计与实现.docx
- 基于微信小程序的微信小程序书店系统设计与实现.docx
- 基于微信小程序的微信平台签到系统设计与实现.docx
- 基于微信小程序的乡村政务服务系统设计与实现.docx
- 基于微信小程序的校园保修系统设计与实现.docx
- 基于微信小程序的校园自助打印系统设计与实现.docx
- 基于微信小程序的校园资料分享小程序设计与实现.docx
- 基于微信小程序的研学自习室选座与门禁系统设计与实现.docx
- 基于微信小程序的学生管理系统设计与实现.docx
- 基于微信小程序的学生实习与就业管理系统设计与实现.docx