毕业设计论文_基于单片机的数字温度计设计

合集下载

毕业设计-基于STC12C5A60S2单片机的数字温湿度计设计

毕业设计-基于STC12C5A60S2单片机的数字温湿度计设计

东莞理工学院本科毕业设计毕业设计题目:温湿度控制器学生姓名:学号:系别:专业班级:指导教师姓名及职称:刘华珠高级工程师起止时间:2011年11月—— 2012年6月摘要本论文介绍了一种以单片机STC12C5A60S2为主要控制器件,以PT100,SHT15分别为温,湿度传感器。

本设计主要包括硬件电路的设计和系统软件的设计。

硬件电路主要包括控制器,测温湿控制电路和显示电路等。

控制器用带有AD转换的单片机,温度传感器PT100,湿度传感器采用SHT15,显示电路采用1个8位共阴极LED数码管,用锁存器是显示效果更好。

测温湿控制电路由温湿度传感器和预置温湿度值比较报警电路组成,当实际测量温湿度值大于预置温湿度值时,发出报警信号(发光二极管点亮)而且使外电路驱动(继电器动作)。

软件部分主要包括主程序,测温湿度子程序,显示子程序和按键子程序等。

本次设计采用的SHT15湿度传感器包括一个电容式聚合体测湿元件和一个能隙式测温元件,并与一个14位的A/D器以及串行接口电路在同一芯片上实现无缝链接,从而具有超快响应,抗干扰能力强,性价比高等优点。

而且PT100在要求的范围内线性度很好。

关键词:温度测量, 湿度测量,温度算法,PT100,SHT15ABSTRACTThis paper presents a new design of digital thermometers and hygrometer. It includes a main control device-microcontroller STC12C5A60S2 and a temperature and humidity sensor. This design includes hardware and system software .The hardware design includes a main controller circuit, Temperature and Humidity measurement and control circuits and show circuit. Main controller uses SCM STC12C5A60S2,temperature sensor uses PT100,and humidity sensor uses SHT15,Show circuit is a total of eight circuits using digital LED of the Altogether. Driver show circuit uses atches (74573). Temperature and Humidity control circuit includes the temperature and humidity sensor and preset temperature and humidity values compared alarm circuit. When the actual measurement of temperature or humidity values is greater than the preset temperature or humidity values, the alarm signal (Light emitting diode is lit) is sent. And output circuit will be sent(Relay action) .The major software includes the main routines, temperature and humidity routines, show routines and digital-to-analog routines.The humidity sensor (SHT15) in this design includes a capacitive polymer sensing element for power consumption makes it the ultimate choice for even relative humidity and a band gap temperature sensor. Both the most demanding applications are seamlessly coupled to a 14bit analog to digital converter with a 14 and the A / D, as well as serial interface circuits in the same chip on the realization of a Gap link to a super-fast response, anti-interference capability and cost-effective advantages.And PT100 within the required range linearity is very good.The design of digital thermometers and hygrometer with STC12C5A60S2 and PT100 and SHT15, not only has a simple external circuit, but also has a high-precision measurement.KEY WORDS: temperature measurement, humidity measurements, PT100,SHT15目录前言 (1)一设计任务要求和温湿度计的发展史 (1)1.1 设计任务及要求 (1)1.2 设计温湿度计的依据和意义 (1)1.3 温度计的发展史 (2)1.4 湿度计的由来 (3)1.5 露点意义 (3)二设计任务分析及方案论证 (4)2.1 设计总体方案及方案论证 (4)2.2 元器件的选择 (5)2.2.1 主控制器芯片 (5)2.2.2 温湿度传感器 (7)2.2.3 驱动显示电路 (8)2.3 温湿度测量的方法及分析 (9)三硬件电路的设计 (10)3.1 主控制电路和测温湿控制电路 (10)3.2 驱动显示电路 (12)四软件设计及分析 (13)4.1 SHT15传输时序和指令集]7[与测温模块 (13)4.1.1通讯复位时序 (13)4.1.2启动传输时序 (14)4.1.3 数据传输和指令集 (14)4.1.4湿度的测量时序 (15)4.1.5 输出转换为物理量 (15)4.1.6 SHT15的DC特性 (17)4.2 程序流程图 (19)4.3 程序的设计 (20)4.3.1 SHT15的初始化程序 (20)4.3.2 毕业设计.c是主函数,做了温度的算法 (26)4.3.3 AD转换子程序 (35)4.3.4 LED显示子程序 (36)4.3.5 软件在硬件上的调试分析 (45)结论 (46)参考文献 (47)致谢 (48)附录 (48)引言温度与湿度与人们的生活息息相关。

基于单片机的数字温度计的设计与实现毕业设计论文

基于单片机的数字温度计的设计与实现毕业设计论文

基于单片机的数字温度计的设计与实现摘要采用单片机来对他们控制不仅具有控制方便,简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标,从而能够大大的提高产品的质量和数量。

在生产过程中,为了高效地进行生产,必须对它的主要参数,如温度、压力、流量等进行有效的控制。

传统的测温元件有热电偶和二电阻。

而热电偶和热电阻测出的一般都是电压,再转换成对应的温度,这些方法相对比较复杂,需要比较多的外部硬件支持。

我们用一种相对比较简单的方式来测量。

温度范围为-55~125 ºC,最高分辨率可达0.0625 ºC。

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

本文介绍一种基于AT89C51单片机的一种温度测量及报警电路,该电路采用DS18B20作为温度监测元件,测量范围0℃-~+100℃,使用七级数码管LED模块显示,能设置温度报警上下限。

正文着重给出了软硬件系统的各部分电路,介绍了集成温度传感器DS18B20的原理,AT89C51单片机功能和应用,该电路设计新颖、功能强大、结构简单。

关键词:温度测量;DS18B20 ; AT89C51Design of Digital Thermomer Based on SCMABSTRACTControlled by single-chip microcomputer to control not only to them, advantages of simplicity and flexibility, and can significantly increase the temperature specifications, which can significantly increase the quality and quantity of the products. In the process of production, in order to efficiently produce, it must be the main parameters, such as temperature, pressure, flow, and other effective control. Traditional temperature measuring component thermocouple and resistance. Are generally voltage of thermocouple and thermal resistance measured, then converted to the corresponding temperature, these methods are relatively complex and requires more external hardware support. We are in a relatively simple way to measure.-55~125 ºc temperature range, maximum resolution up to 0.0625 ºc. DS18B20 can read temperature value, and wire connected to the microcontroller, reduced external hardware circuits, low cost and ease of use features.The introduction of a cost-based AT89C51 MCU a temperatur measurement circuits, the circuits used DS18B20 high-precision temperatur sensor, measuring scope 0℃-~+100℃,can set the warning limitation, the use of Seven digital tube seven segments LED that can be display the current temperature. The paper focuses on providing a software and hardware system components circuit, introduced the theory of DS18B20, the founctions and applications of AT89C51 .This circuit design innovative, powerful, can be expansionary strong.Keywords:Temperature measurement ;DS18B20 ;AT89C51目录摘要 (I)ABSTRACT (II)第一章绪论 (1)1.1 引言 (1)1.1.1 国内外现状 (1)1.1.2 课题背景及研究意义 (2)1.2 设计内容及性能指标 (2)1.3 系统概述 (3)1.3.1 系统方案论证与比较 (3)1.3.2 系统设计原理与组成 (5)第二章开发工具Proteus与Keil (6)2.1 Proteus软件 (6)2.1.1 Proteus简介 (6)2.1.2 4大功能模块 (6)2.1.3 Proteus简单应用 (8)2.2 Keil软件 (8)2.2.1 Keil软件简介 (8)2.2.2 Keil软件调试功能 (9)第三章系统硬件设计 (10)3.1 单片机的选择 (10)3.1.1 AT89C51单片机的介绍 (10)3.1.2 AT89C51单片机主要特性 (11)3.2 温度传感器的选择 (13)3.3 硬件电路设计 (17)第四章系统软件设计 (20)4.1 各模块的程序设计 (20)4.2 Protues测温仿真 (25)4.3 系统调试 (28)4.4 结果分析 (30)结论 (31)致谢 (32)参考文献 (33)附录1 全部程序清单 (34)附录2 系统总体设计图 (41)第一章绪论1.1引言1.1.1 国内外现状温度控制系统在国内各行各业的应用虽然已经十分广泛,但从国内生产的温度控制器来讲,总体发展水平仍然不高,同日本、美国、德国等先进国家相比,仍然有着较大的差距。

基于单片机的数字温度计设计本科毕业论文

基于单片机的数字温度计设计本科毕业论文

基于单片机的数字温度计的设计摘要温度作为一个重要的物理量,是工业生产过程中最普遍、最常用的测量及被控参数之一。

随着社会的发展、科学技术的不断更新,温度的测量范围要求不断扩大,同时温度的测量准确性要求不断提高。

它直接影响燃烧、化学反应、发酵、烘烤、蒸馏、浓度、挤压成形、结晶以及空气流动等物理和化学过程。

温度控制失误就可能引起生产安全、产品质量、产品产量等一系列问题, 因此对温度测量的意义就越来越大。

本文主要介绍了一个基于89S51单片机的测温系统,详细描述了利用数字温度传感器DS18B20开发测温系统的过程,重点对传感器在单片机下的硬件连接,软件编程以及各模块系统流程进行了详尽分析,对各部分的电路也一一进行了介绍,该系统可以方便的实现实现温度采集和显示,并可根据需要任意设定上下限报警温度,它使用起来相当方便,具有精度高、量程宽、灵敏度高、体积小、功耗低等优点,适合于我们日常生活和工、农业生产中的温度测量,也可以当作温度处理模块嵌入其它系统中,作为其他主系统的辅助扩展。

DS18B20与AT89S51结合实现最简温度检测系统,该系统结构简单,抗干扰能力强,适合于恶劣环境下进行现场温度测量,有广泛的应用前景。

本文主要包括两个方面的设计:一方面是硬件电路的设计,另一方面是系统程序的设计。

其中,硬件电路各部分组成如下:中央控制器采用单片机AT89S51,温度检测部分采用DS18B20温度传感器,用LCD液晶1602作为显示器。

其次,系统软件程序包括主程序,温度值读取、转换及计算程序,显示数据刷新程序等。

该温度计整体功能的实现是通过温度传感器DS18B20采集温度信号送该给单片机处理,单片机再把温度数据送液晶显示器1602显示。

关键词:单片机;温度传感器;DS18B20;LCD液晶显示器THE DESEGN OF THE ELECTRONIC THERMOMETERBASED ON MICROCONTROLLERAbstractTemperature as an important physics, is the most common industrial production process, the most commonly used one of measuring and controlled parameter. With the development of society, the science and technology unceasing renewal, temperature measurement range requirements, at the same time expanding temperature measurement accuracy requirement enhances unceasingly. It directly affects combustion, chemical reaction, fermentation, roasted, distillation, concentration, extrusion, crystallization and air flow etc physical and chemical processes. Temperature control error could cause a production safety, product quality, product yield and so on. So the significance of temperature measurement is more and more big.This paper describes the digital thermometer which is consisted of the central controller, temperature detectors, monitors and police components.The thermometer’s basic range is from -50 ℃ to 110 ℃,its accuracy error is less tha n 0.5 ℃ and LCD directly shows numerical temperature. When the measured temperature exceed the limit alarm doors, the system will output alarm signal.The paper includes tow aspects of the design: one is hardware circuit design, the other is the system process design. Among them, the hardware components are as following: the central controller SCM AT89S51,the temperature detection DS18B20 part of a temperature sensor,and LCD monitors, as LCD 1602 F; the system software programs, including the main program, the temperature reading, conversion and calculation procedures, the data show that refresh procedures and so on.Temperature Sensor DS18B20 acquisition of the temperature signal sent to SCM for processing, SCM then the temperature data sent 1602 F LCD display.Key words: temperature sensor;DS18B20;LCD liquid crystal display目录1 绪论 (4)1.1 设计背景及目的 (5)1.2 设计研究方法 (5)1.3 设计构成及内容 (7)2 数字温度计硬件电路的实现 (8)2.1 单片机的选取和介绍 (8)2.1.1 引脚描述 (8)2.1.2 特殊功能寄存器与存储结构 (10)2.1.3 编写方法 (11)2.2 复位电路及晶振电路设计 (12)2.2.1 复位电路 (12)2.2.2 晶振电路 (12)2.3 温度传感器设计 (12)2.3.1 DS18B20的外形及内部结构 (12)2.3.2 DS18B20工作原理 (15)2.3.3 DS18B20的外部电路图 (15)2.4 液晶显示电路设计 (16)2.4.1 1602的引脚功能介绍 (16)2.4.2 1602液晶模块内部的控制指令 (17)2.4.3 1602的外部电路图 (18)3 数字温度计软件设计流程 (18)3.1 主程序设计 (19)3.2 温度值读取程序设计 (20)3.3 计算温度程序设计 (21)3.4 显示数据及刷新程序设计 (21)4 仿真调试 (22)5 结论 (25)致谢 (26)参考文献 (27)附录 (29)附录A 原理图 (29)附录B 源程序 (29)附件附件1 开题报告(文献综述)附件2 译文及原文影印件1 绪论1.1 设计背景及目的传统的温度计有反应速度慢、读数麻烦、测量精度不高、误差大等缺点,本文介绍了一种基于 DS18B20 的数字温度计设计方案。

(完整版)基于单片机的PID温度控制毕业设计论文

(完整版)基于单片机的PID温度控制毕业设计论文

前言温度是表征物体冷热程度的物理量。

在很多生产过程中,特别是在冶金、化工、建材、食品、机械、石油等工业中,温度的测量和控制都直接和安全生产、提高生产效率、保证产品质量、节约能源等重大技术经济指标相联系。

因此,温度的测量与控制在国民经济各个领域中均受到了相当程度的重视。

单片机系统的开发应用给现代工业测控领域带来了一次新的技术革命,自动化、智能化均离不开单片机的应用。

将单片机控制方法运用到温度控制系统中,可以克服温度控制系统中存在的严重滞后现象,同时在提高采样频率的基础上可以很大程度的提高控制效果和控制精度。

现代自动控制越来越朝着智能化发展,在很多自动控制系统中都用到了工控机,小型机、甚至是巨型机处理机等,当然这些处理机有一个很大的特点,那就是很高的运行速度,很大的内存,大量的数据存储器。

但随之而来的是巨额的成本。

在很多的小型系统中,处理机的成本占了系统成本的比例高达20%,而对于这些小型的系统来说,配置一个如此高速的处理机没有任何必要,因为这些小系统追求经济效益,而不是最在乎系统的快速性,所以用成本低廉的单片机控制小型的,而又不是很复杂,不需要大量复杂运算的系统中是非常适合的。

随着电子技术以及应用需求的发展,单片机技术得到了迅速的发展,在高集成度,高速度,低功耗以及高性能方面取得了很大的进展。

现在完全可以运用单片机和电子温度传感器对某处进行温度检测,而且可以很容易地做到多点的温度检测,如果对此原理图稍加改进,还可以进行不同地点的实时温度检测和控制。

1绪论1.1研究的目的和意义温度是工业生产中主要被控参数之一,温度控制自然是生产的重要控制过程。

工业生产中温度很难控制,对于要求严格的的场合,温度过高或过低将严重影响工业生产的产质量及生产效率,降低生产效益。

这就需要设计一个良好温度控制器,随时向用户显示温度,而且能够较好控制。

单片机具有和普通计算机类似的强大数据处理能力,结合PID,程序控制可大大提高控制效力,提高生产效益[9]。

基于单片机的简易数字温度计的设计

基于单片机的简易数字温度计的设计

基于单片机的简易数字温度计的设计张逊摘要本文介绍了一种基于单片机的简易数字温度计的设计。

该设计主要由三个模块组成:温度采集模块,数据处理模块及显示模块。

温度采集主要由温度传感器DS18B20来完成,它负责把采集到的模拟量转换为相应的数字量在传送到数据处理模块。

数据处理则由芯片STC89C52RC来完成,其负责把DS18B20传送来的数字量经过一定的数据处理,产生相应的显示码送到显示模块进行显示;此外,它还控制着芯片DS18B20相互通讯。

该系统的数字温度计电路简单,所用的元件较少,成本低,且测量精度和可靠性较高。

此数字温度计可以测量得温度范围—55~+125℃并通过一个四位一体的7段数码管显示出来。

关键词单片机;数字温度计;温度传感器;STC89C52RC;DS18B20Based on single chip simple digitalthermometer designZhangXunAbstract This paper introduces a kind of based on single chip simple digital thermometer design. This design mainly consists of three modules: temperature acquisition module, data processing module and display module. Temperature acquisition is mainly composed of temperature sensor DS18B20 to complete, it is responsible for the collection of the analog conversion to the corresponding digital quantity in the transfer to the data processing module. Data processing by the chip STC89C52RC to complete, which is responsible for the DS18B20 transfer to the digital quantity in the course of data processing, produce the corresponding display code to display module display; In addition, it also control the chip DS18B20 mutual communication.The system of the digital thermometer circuit is simple, the element used less, low cost, and high measuring accuracy and reliability. The digital thermometer can measure temperature range - 55 ~ + 125 ℃ and through a quaternity seven period of digital tube display.Keywords Single-chip microcontroller; Digital thermometer; Temperature sensor; AT89C51; DS18b20目录1 引言 (1)2 设计总体方案 (2)2.1设计要求 (3)2.2 设计思路 (4)2.3 设计方案 (5)3 硬件电路设计 (6)3.1 温度采集模块 (3)3.2 单片机系统 (9)3.3 复位电路和时钟电路 (16)3.4 数码管显示系统设计 (18)3.5 总体电路设计 (21)4 程序设计 (14)4.1 程序设计总方案 (23)4.2 系统子程序设计 (23)5面包电路的搭建 (25)5.1 硬件的调试 (25)5.2 显示结果分析 (18)6实物的制作 (19)结论 (37)参考文献 (38)附录程序代码 (22)致谢 (39)1 引言在环境的舒适度测量中,温度、湿度和空气质量是最基本的三个被测量,其中温度的测量最为经常。

基于单片机的温度测量系统毕业设计论文

基于单片机的温度测量系统毕业设计论文

基于单片机的温度测量系统毕业设计论文摘要:本文设计了一种基于单片机的温度测量系统。

该系统主要由传感器、单片机、显示屏等组成,通过传感器获取环境温度数据,由单片机进行数据处理和显示,并通过显示屏将温度数据以直观的形式展现出来。

通过与市场上现有的温度测量设备对比,本系统具有体积小、功耗低、精确度高、价格便宜等优点。

该系统在工业生产、科研实验等领域具有广泛应用前景。

关键词:单片机;温度测量;传感器;显示屏第一章引言1.1研究背景温度是工业生产和科学研究中的一个重要参数,对于保证生产质量、保障实验准确性具有至关重要的作用。

在现有的温度测量设备中,电子温度计是一种常见的测量方法。

然而,由于传统电子温度计通常体积较大、功耗较高,不便携,而且价格较高,因此有必要设计一种体积小、功耗低、价格便宜的新型温度测量系统。

1.2研究目的本文的研究目的是设计一种基于单片机的温度测量系统,以提供一种便携、实用的温度测量解决方案。

通过传感器采集环境温度数据,通过单片机进行数据处理和显示,并通过显示屏将温度数据以直观的形式展现出来。

第二章原理与方法2.1系统组成在本系统中,主要使用了DS18B20数字温度传感器、STC89C52单片机、液晶显示屏等元件。

其中DS18B20传感器采用了一线总线通信,可直接与STC89C52单片机进行通信。

单片机通过扫描传感器获取温度数据,并通过液晶显示屏进行显示。

2.2系统设计系统的设计主要分为硬件设计和软件设计两部分。

硬件设计包括传感器和单片机的连接电路设计,以及显示屏的驱动电路设计。

软件设计包括单片机程序的编写和液晶显示屏的显示程序设计。

第三章系统实现3.1传感器连接电路设计通过DS18B20传感器的一线总线接口,将其与STC89C52单片机相连。

传感器的数据线连接到单片机的P2口,同时需要上拉电阻器上拉电平。

3.2显示屏驱动电路设计显示屏使用了基于平行接口的1602型液晶显示屏,根据显示屏的规格书,设计了驱动电路。

毕业设计毕业论文DOC

毕业设计毕业论文DOC

毕业设计论文毕业设计(论文)中文摘要控制系统的设计,对硬件原理图做简洁的描述。

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

软硬件分别调试完成以后,将程序下载入单片机中,电路板接上电源,电源指示灯亮,按下开关按钮,数码管显示当前温度。

由于采用了智能温度传感器DS18B20所以本文所介绍的数字温度计与传统的温度计相比它的转换速率极快,进行读、写操作非常简便。

它具有数字化输出,可测量远距离的点温度。

系统具有微型化、微功耗、测量精度高、功能强大等特点,加之DS18B2C内部的差错检验,所以它的抗干扰能力强,性能可靠,结构简单。

关键词:单片机数字控制温度计DS18B20毕业设计(论文)外文摘要keywords: Single-chip microcomputer, digital control, thermometer, DS18B2C目录1引言 (1)1.1背景 (1)1.2设计的目的和意义 (1)2设计要求与方案论证 (2)2.1设计要求 (2)2.2方案论证 (2)2.3总体设计方案 (3)3硬件设计 (4)3.1 主要元件介绍 (4)3.1.1 主控制器 (4)3.1.2 温度传感器DS18B20 (7)3.2 显示电路 (13)3.3 DS18B20 与单片机的接口电路 (16)3.4 复位电路 (18)4 软件设计 (19)5 调试 (20)5.1 软件调试 (20)5.2 系统调试 (20)5.3 数据检测 (20)总结 (22)致谢 (23)参考文献 (23)1 引言1.1 背景单片机,更确切的应称作微控制器,是20 世纪70年代中期发展起来的一种面向控制的大规模集成电路模块,其特点是功能强大、体积小、可靠性高、价格低廉。

它一面世便在工业控制、数据采集、智能化仪表、机电一体化、家用电器等领域得到广泛应用,极大地提高了这些领域的技术水平和自动化程度。

数字温度计毕业设计论文

数字温度计毕业设计论文

青岛农业大学毕业论文(设计)题目:数字温度计的设计与实现*名:***学院:理学与信息科学学院专业:电子信息科学与技术班级:2006级01班学号:********指导教师:代爱妮2010年6月13日目录摘要 (1)Abstract (1)前言 (1)1 绪论 (2)1.1 课题背景 (2)1.2 课题研究的目的和意义 (2)1.3 设计的主要任务 (2)2 DS18B20的应用 (4)2.1 温度传感器的发展趋势 (4)2.2 DS18B20数字温度传感器 (4)2.2.1 DS18B20简介 (4)2.2.2 DS18B20内外部结构 (5)2.2.3 DS18B20控制方法 (6)2.3 DS18B20的测温原理 (7)2.4 提高DS18B20测温精度的途径 (7)2.5 注意事项 (8)3 系统电路设计与分析 (9)3.1 系统方案实现论证 (9)3.2 单片机控制部分 (10)3.3 DS18B20部分 (11)3.4 LED数码管显示部分 (13)4 系统实现程序分析 (15)4.1 主程序流程图 (15)4.2 各子程序流程图 (15)4.2.1初始化程序 (15)4.2.2读取温度子程序 (16)4.2.3写流程图 (17)4.2.4读流程图 (18)5 PROTEUS仿真与实现 (20)5.1 PROTEUS仿真过程 (20)5.2 仿真结果 (21)5.3 具体实物图 (21)6 设计总结 (22)致谢: (24)参考文献 (25)附录: (26)数字温度计的设计与实现电子信息科学与技术专业崔新健指导教师代爱妮摘要:温度测量是现代工业测量中的关键技术,应用广泛。

为了实现对温度的精确测量,开发了一种由AT89C51单片机控制的数字温度计。

本系统采用的是美国DALLAS公司生产的单线数字温度传感器DS18B20,相比于其他模拟传感器,DS18B20能够直接输出数字信号,与单片机接线仅需要一条口线,外围电路简单,无需放大电路及A/D转换电路,节省了成本,并且测量精度高。

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

1.设计任务与要求本课题的研究方法是利用单片机和数字温度传感器DS18B20设计一台数字温度计。

单片机作为主控制器,数字温度传感器DS18B20作为测温元件,传感器DS18B20可以读取被测量温度值,进行转换,从而用4位共阳极LED数码管来显示转换后的温度值,可以设定温度的上下限报警功能,实现报警提示。

2.系统的总体设计方案本设计将利用DS18B20智能温度传感器和单片机小系统,设计一个数字温度采集系统。

并设计一个人机接口电路:键盘采用独立按键(功能自定义),显示器采用共阴极4位LED显示。

系统的总体设计方案框图如图2.1所示图2.1 系统的总体设计方案框图3.硬件设计本设计采用的是AT89C52单片机为核心的数字温度计,包含了利用温度传感器DS18B20的测温电路、外接键盘、显示电路、报警电路、复位电路和晶振电路。

以DS18B20为主要测温元件进行实时监控温度值。

以4位数码管为显示器件,利用单片机的P0口和电阻排来驱动4位数码管的显示;利用单片机的P1.7来驱动温度传感器DS18B20测温;报警电路利用三极管放大作用驱动报警器报警;按键是利用单片机的P1口和上拉电阻来驱动工作3.1复位电路设计复位电路有上电自动复位和按键手动复位两种方式。

上电自动复位是通过外部复位电路的电容充电来实现的,只要电源VCC的上升时间不超过1ms,就可以实现自动上电复位,即接通电源就成了系统的复位初始化。

按键手动复位有电平方式和脉冲方式两种。

其中,按键电平复位是通过使复位端经电阻与VCC电源接通而实现的,而按键脉冲复位则是利用RC微分电路产生的正脉冲来实现的。

本系统的复位电路采用上电复位方式。

复位电路图如图3.1所示:3.2 晶振电路设计图3.1 复位电路图对于每个系统工程的晶振电路,都是用于单片机工作所需要的时钟信号,单片机只有在时钟信号的控制下,其各部件之间才能协调一致工作,时钟信号控制着计算机的工作节奏。

彈贸摄尔霁毙攬砖卤庑。

在单片机的TXAL1、TXAL12、之间跨接晶体振荡器和微调电容,可以和单片机内部的振荡器构成一个稳定的自激振荡器,这就是单片机的晶振电路。

这种方式称之为内部的时钟源方式。

电容C1和C2的主要作用是帮助振荡器起振,且振荡器大小对振荡频率有微调作用,在80C51系列中电容的大小30皮法。

另外,振荡器的频率只要由石英晶振的频率来决定本次设计选用12MHz。

本系统的晶振电路如图3.2所示:謀荞抟箧飆鐸怼类蒋薔。

DS18B20主要由4部分组成:64位ROM 、温度传感器、非挥发的温度报警触发器TH 和TL 、配置寄存器。

DS18B20外形及管脚排列如图3.8和表3-3所示[5]。

DS18B20管脚排列如表3-1所示。

3.4 数的图3.3 DS18B20的测温电路3.5 按键模块设计利用单片机的IO口实现按键的中断输入。

另外需要一个与门实现与中断端口的连接。

按键电路如图3.4所示,期中按键K1为进入/退出设置键;K2为增加键;K3为减少键。

当按下K1 键一次时,进入温度报警上线调节,此时显示软件设置的温度报警上线,按K2或K3分别对报警温度进行加一或减一。

当再次按下K1 键时,进入温度报警下线调节,此时显示软件设置的温度报警下线,按K2或K3分别对报警温度进行加一或减一。

当第三次按下K1 键时,3.6 报警电路设计图3.5 报警电路图3.7显示电路设计采用四位共阴极LED数码管来显示温度的大小,可以直接读取。

四位数码管的显示电路如图3.6所示,从左到右依次是百位,十位,个位,十分位。

图3.6 显示电路图4. 系统软件设计系统程序主要包括主程序,读出温度子程序,温度转换命令子程序,计算温度子程序,显示数据刷新子程序和按键扫描处理子程序等。

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

这样可以在一秒之内测量一次被测温度,其程序流程见图4.1 所示。

图4.1 主程序流程图4.2 读出温度子程序读出温度子程序的主要功能是读出RAM 中的9 字节,在读出时需进行CRC 校验,校验有错时不进行温度数据的改写。

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

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

图4.4 计算温度子程序流程图4.5 显示数据刷新子程序显示数据刷新子程序主要是对分离后的温度显示数据进行刷新操作,当标志位位为1时将符号显示位移入第一位。

程序流程图如图4.5所示。

图4.5 显示数据刷新子程序流程图4.6 报警子程序设置报警标志位位beep,当温度大于设置的高限报警值或低于设置的低限报警值是,beep=1报警;当温度值在正常范围内时,beep=0.报警流程图如图4.6所示:图4.6 报警子程序流程图4.7 按键扫描处理子程序按键采用扫描查询方式,设置标志位,当标志位为1 时,显示设置温度,否则显示当前温度。

当按下K1 键一次时,进入温度报警上线调节,此时显示软件设置的温度报警上线,按K2或K3分别对报警温度进行加一或减一。

当再次按下K1 键时,进入温度报警下线调节,此时显示软件设置的温度报警下线,按K2或K3分别对报警温度进行加一或减一。

当第三次按下K1 键时,退出温度报警线设置。

显示当前温度。

如下图4.7所示。

图4.7 按键扫描处理子程序流程图5. Protues仿真5.1 Protues测温仿真通过仿真软件验证该原理图的可行性。

采用protues软件对电路仿真,可以得到预期效果。

数码管仿真图如图5.1所示。

温度传感器的仿真效果图如图5.2所示,此图验证了传感器的温度与数码管显示的数字一致。

图5.2 温度传感器的仿真效果图5.2 温度报警线设置仿真如图5.3是第一次按下K1键显示的上限温度报警值,此时按K2或K3键分别对上限温度报警值进行加一或减一;图5.4是第二次按下K1键显示的下限温度报警值,此时按K2或K3键分别对下限温度报警值进行加一或减一。

5.3 初始置零仿真当开始仿真时先使数码管显示为“0”,仿真图如图5.5所示。

6. 结果分析与心得体会经过系统的整体调试,本设计达到了规定的设计要求:能用数码管直接显示、能自由设定温度上下限报警值和实现报警。

本课题所设计的数字温度计包括硬件组成和软件的设计。

该系统在硬件设计上主要是通过其核心控制器件AT89C52将采集到的数字温度值经单片机处理得到相应的温度值,送到4位数码管进行显示,以数字形式显示测量的温度。

整个系统的软件编程就是通过C语言对AT89C52实现其控制功能。

通过为期一周单片机的课程设计使我对单片机的编程及其仿真又加深了印象。

不局限于课本的死知识,增强了动手能力和综合分析能力,更深入了解并掌握了传感器的基本理论知识。

本次设计还存在许多不完善的方面。

在整个设计过程中,由于难度的原因,系统实现的功能有限,与市场上同类产品存在相当的差距;在编程方面,虽然采用C语言编程,但是对其的理解不够透彻,还存在很大的提升空间。

尽管本次设计还不是很完善,但这为我以后的设计之路积累了宝贵的经验。

7. 参考文献[1] 余发山,王福忠编著. 单片机原理及应用技术.徐州:中国矿业大学出版社,2008.[2] 胡汉才编著,单片机原理及其接口技术,北京:清华大学出版社,1996.7[3] 金发庆.传感器技术与应用.北京:机械工业出版社,2002.34-36附录全部程序清单#include <reg51.h>#include<stdio.h>#include <intrins.h> //_nop_();延时函数用#define dm P0 //段码输出口#define uchar unsigned char#define uint unsigned intsbit DQ=P1^7; //温度输入口sbit L1=P2^0; //数码管1sbit L2=P2^1; //数码管2sbit L3=P2^2; //数码管3sbit L4=P2^3; //数码管4sbit beep=P3^5; //蜂鸣器sbit set=P1^4; //温度设置切换键sbit add=P1^5; //温度加sbit dec=P1^6; //温度减int temp1=0; //显示当前温度和设置温度的标志位为0 时显示当前温度uint h;uint temp;uchar r;uchar high=120,low=20;uchar sign;uchar q=0;uchar tt=0;uchar scale;uchar code ditab[16]={0x00,0x01,0x01,0x02, //温度小数部分用查表法0x03,0x03,0x04,0x04,0x05,0x06,0x06,0x07,0x08,0x08,0x09,0x09};uchar code table_dm[12]={0x3f,0x06,0x5b,0x4f, //小数断码表0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00,0x40};uchar table_dm1[]={0xbf,0x86,0xdb,0xcf, //共阴LED 段码表"0" "1" "2" "3" "4" "5" "6" "7" "8" "9" "不亮" "-"0xe6,0xed,0xfd,0x87,0xff,0xef}; //个位带小数点的断码表uchar data temp_data[2]={0x00,0x00}; //读出温度暂放uchar data display[5]={0x00,0x00,0x00,0x00,0x00}; //显示单元数据,共4 个数据和一个运算暂用void delay(uint t) // 延时函数{for (;t>0;t--);}void scan(){int j;for(j=0;j<4;j++){switch (j){case 0: dm=table_dm[display[0]];L4=0;delay(50);L4=1;//小数case 1: dm=table_dm1[display[1]];L3=0;delay(50);L3=1;//个位case 2: dm=table_dm[display[2]];L2=0;delay(50);L2=1;//十位case 3: dm=table_dm[display[3]];L1=0;delay(50);L1=1;//百位//else{dm=table_dm[b3];w3=0;delay(50);w3=1;}}}}ow_reset(void) //DS18B20 复位函数{char presence=1;while(presence){while(presence){DQ=1; //从高拉倒低_nop_();_nop_();DQ=0;delay(50); //50 usDQ=1;delay(6); //6 uspresence=DQ; //presence=0 复位成功,继续下一步}delay(45); //延时45 uspresence=~DQ;}DQ=1; //拉高电平}void write_byte(uchar val) //DS18B20 写命令函//向1-WIRE 总线上写1 个字节{uchar i;for(i=8;i>0;i--){DQ=1;_nop_();_nop_(); //从高拉倒低DQ=0;_nop_();_nop_();_nop_();_nop_(); //5 usDQ=val&0x01; //最低位移出delay(6); //66 usval=val/2; //右移1 位}DQ=1;delay(1);}uchar read_byte(void) //DS18B20 读1 字节函数//从总线上取1 个字节{uchar i;uchar value=0;for(i=8;i>0;i--){DQ=1;_nop_();_nop_();value>>=1;DQ=0;_nop_();_nop_();_nop_();_nop_(); //4 usDQ=1;_nop_();_nop_();_nop_();_nop_(); //4 usif(DQ)value|=0x80;delay(6); //延时66 us}DQ=1;return(value);}read_temp() //读出温度函数{ow_reset(); //总线复位delay(200);write_byte(0xcc); //发命令write_byte(0x44); //发转换命令ow_reset();delay(1);write_byte(0xcc); //发命令write_byte(0xbe);temp_data[0]=read_byte(); //读温度值的第字节temp_data[1]=read_byte(); //读温度值的高字节temp=temp_data[1];temp<<=8;temp=temp|temp_data[0]; // 两字节合成一个整型变量。

相关文档
最新文档