(大学设计)数字温计设计
课程设计任务书数字温度计设计

中北大学课 程 设 计 说 明 书学生姓名: 学 专 题 院: 业: 目:学 号:信息与通信工程学院 电子信息科学与技术 数字温度计设计指导教师: 指导教师:张志伟职称: 职称:教授2012 年 01 月 06 日中北大学课程设计任务书2011/2012 学年第 1 学期学 专院: 业:信息与通信工程学院 电子信息科学与技术 学 号: 电子电路综合实践 数字温度计设计学 生 姓 名: 课程设计题目:起 迄 日 期: 课程设计地点: 指 导 教 师: 系 主 任:2011 年 12 月 26 日~2012 年 1 月 6 日5 院楼 513、606 张志伟、王伟 程耀瑜下达任务书日期:2011 年 12 月 26 日课 程 设 计 任 务 书1.设计目的:针对电子线路课程要求,对设计者进行实用型电子线路设计、仿真测试等各环节的 综合性训练,培养设计者运用课程中所学的理论与实践紧密结合,独立地解决实际问题 的能力。
设计者必须独立完成一个选题的设计任务。
2.设计内容和要求(包括原始数据、技术参数、条件、设计要求等) :设计内容: 设计一数字式温度计,即用数字显示被测温度。
1.技术指标: 1) 测量范围:-50 度—150 度; 2) 测量精度 0.1 度; 3) 4 位 LED 数码管显示; 2.设计要求: 数字式温度计不仅读数方便,而且测量精确。
1)给出计算参数、总体设计电路; 2)画出完整电路图,写出设计总结报告。
3.设计工作任务及工作量的要求〔包括课程设计计算说明书(论文)、图纸、 实物样品等〕 :1 电路原理图; 2 器件的工作原理和应用,仿真结果; 3 课程设计说明书; 4 PROTEL 应用的基本知识。
课 程 设 计 任 务 书4.主要参考文献:要求按国标 GB 7714—87《文后参考文献著录规则》书写,例: 1 傅承义,陈运泰,祁贵中.地球物理学基础.北京:科学出版社,1985(5 篇以上)5.设计成果形式及要求:1 电路原理图; 2 课程设计说明书。
毕业设计论文-数字温度计经典设计

摘要单片机在日用电子产品中的应用越来越广泛,温度则是人们日常生活中常常需要测量和控制的一个量。
科学技术的发展和检测技术的发展是密切相关的。
现代化的检测手段能达到的精度、灵敏度及测量范围等,在很大程度上决定了科学技术的发展水平。
本文作者采用AT89C2051单片机和温度传感器DS18B20从硬件和软件两方面介绍了一款简易数字温度计的设计过程,并对硬件原理图和程序流程图作了简洁的描述。
数字温度计与传统的温度计相比,具有读数方便,测温范围广,测温准确,其输出温度采用数字显示,主要用于对测温比较准确的场所。
关键词:单片机AT89C2051;温度传感器DS18B20;74LS48七段数码译码器AbstractSingle-chip electronic products in the daily application ofmore and more widely, the temperature is often the need for dailylife in a measure and control the volume. Development of scienceand technology development and testing are closely related.Modern methods to achieve the accuracy, sensitivity and measurement range, to a large extent determine the level of development of science and technology. The author of this articleusing AT89C2051 MCU and temperature sensor DS18B20 from bothhardware and software, introduced a simple digital thermometerof the design process, and schematic diagram of hardware and procedures were concise description of flow chart. Digital thermometer with a traditional thermometer, compared with areading of convenience, a wide range of temperature measurement, temperature measurement accuracy, the output of the temperature digital display, mainly used for more accurate temperature measurement sites.Key words:single-chip AT89C2051; temperature sensor DS18B20;Digital Seven Segment Decoder 74LS48第一章绪论随着单片机技术的不断发展,单片机在日用电子产品中的应用越来越广泛,广泛应用于冰箱、空调器、粮仓等日常生活中温度的测量和控制。
数字电路温度计设计

数字电路温度计设计全文共四篇示例,供读者参考第一篇示例:数字电路温度计设计数字电路温度计的设计原理主要是利用数字电路的优势,通过传感器将物体的温度信号转换为电信号,再通过数字电路进行处理和显示,从而实现温度的测量和显示。
数字电路温度计的设计原理主要包括传感器、模数转换器、显示器等几个关键部分。
首先是传感器部分,传感器是将温度信号转换为电信号的关键部件。
常用的传感器有热敏电阻、热电偶、半导体传感器等。
传感器的选择直接影响到数字电路温度计的测量精度和灵敏度。
在设计数字电路温度计时,我们需要根据实际需求选择合适的传感器,以确保温度测量的准确性。
最后是显示器部分,显示器是将数字信号转换为可视化信息的关键部件。
在设计数字电路温度计时,我们通常选择LED数码管、液晶显示屏等作为显示器。
显示器的选择不仅要考虑显示效果和美观度,还要考虑功耗、驱动电路等因素。
通过合理选择和设计显示器,我们可以实现数字电路温度计的数据显示和人机交互功能。
数字电路温度计的工作原理主要是通过传感器实时监测物体的温度变化,将温度信号转换为电信号后经过模数转换器转换为数字信号,最终通过显示器显示出温度数值。
在工作过程中,数字电路温度计还可以设置报警功能,当温度超出设定范围时会发出警报,提醒使用者及时处理。
制作数字电路温度计的流程主要包括以下几个步骤:第一步,设计电路原理图。
根据数字电路温度计的设计要求,我们需要设计出完整的电路原理图,包括传感器、模数转换器、显示器等各个部分的连接关系和工作原理。
第三步,焊接电路板。
在选择好电子元器件后,我们需要进行电路板的焊接工作,将各个元器件按照设计原理图连接到电路板上,并进行焊接和固定,以组成完整的数字电路温度计电路。
第四步,进行测试和调试。
在焊接完成后,我们需要进行测试和调试工作,确保数字电路温度计正常工作。
在测试中,我们需要测试传感器的灵敏度、模数转换器的精度和显示器的正确性等。
第五步,封装和外壳设计。
数字温度计设计报告

数字温度计设计报告数字温度计设计报告课程名称:电⼦课程设计院别:武警⼯程学院专业: 指挥⾃动化班级:⼆队⼀区队姓名:王凯(03) ⽥腾浩 (23)指导教师:邹涛时间: 2010年1⽉12⽇主要内容:设计⼀个数字温度计,测量范围:0~100 O C。
温度的实时LED数字显⽰。
测量温度信号为模拟量。
基本要求:1.画出数字温度计的结构框图。
2.画出系统原理电路图。
3.⽤MULTISIM进⾏仿真实验。
4.按要求完成课程设计报告,交激光打印报告和电⼦⽂档。
主要参考资料:[1] 阎⽯.数字电⼦技术基础[M].北京:⾼等教育出版社,2001.[2] 彭介华.电⼦技术课程设计指导[M].北京:⾼等教育出版社,1997.[3]孙梅⽣.电⼦技术基础课程设计[M].北京:⾼等教育出版社,1998.[4]⾼吉祥.电⼦技术基础实验与课程设计[M].北京:电⼦⼯业出版社,2002.完成期限⼀、任务技术指标主要内容:设计⼀个数字温度计,测量范围:0~100 O C。
温度的实时LED数字显⽰。
测量温度信号为模拟量。
基本要求:1.画出数字温度计的结构框图。
2.画出系统原理电路图。
3.⽤MULTISIM进⾏仿真实验。
4.按要求完成课程设计报告,交激光打印报告和电⼦⽂档⼆、总体设计思想1.基本原理由于温度计的应⽤很⼴,所以温度计的设计也不完全⼀样。
以前⼀般采⽤热电偶、玻璃液体温度计、双⾦属温度计、压⼒式温度计、热电阻和⾮接触式温度计等进⾏温度测量。
其中热电偶的温度测量范围较宽,它⽆需使⽤驱动电源即可直接产⽣电压(温差电势)信号,该信号既可⽤直流测量仪器(如电位差计、数字电压表、毫伏计等)读取,以通过热电偶温度特性分度表查出对应的温度;也可以⽤线性校正电路将⼩信号电压放⼤后,通过显⽰仪表的刻度读数。
在某些输油、输⽓管道应⽤中,往往要求对温度进⾏长时间监测,且要求能够快速准确地读数。
此时,上述各类温度计则难以胜任。
⽽如果将热电偶产⽣的热电动势转换成数字信号后由单⽚机进⾏数据处理,并通过液晶来显⽰其温度结果,这种⽅法反应迅速,测量精度⾼,功耗⼩,显⽰直观。
监护用多路实时数字体温计设计

目录
致谢 ................................................................................................................. 41 附录一 课题改进 .......................................................................................... 43 附录二 软件实现 .......................................................................................... 47
1.1 研究背景............................................................................................. 1 1.2 本文创新点 ........................................................................................ 1 1.3 解决的关键问题 ................................................................................ 2 第 2 章 总体方案 .......................................................................................... 3 2.1 设计方案............................................................................................. 3 2.2 制作方案............................................................................................. 5 第 3 章 实现原理 .......................................................................................... 7 3.1 STC89C52 芯片 ................................................................................. 7 3.2 DS18B20 测温模块 ......................................................................... 10 第 4 章 系统硬件电路设计 ....................................................................... 17 4.1 概述 ................................................................................................... 17 4.2 振荡与复位模块 .............................................................................. 18 4.3 报警模块........................................................................................... 19 4.4 显示模块........................................................................................... 20 4.5 测温模块........................................................................................... 21 4.6 按键模块........................................................................................... 22 第 5 章 系统程序设计 ................................................................................ 23 5.1 主程序 ............................................................................................... 23 5.2 测温功能........................................................................................... 24 5.3 报警功能........................................................................................... 25 5.4 按键切换功能 .................................................................................. 27 5.5 数码管显示功能 .............................................................................. 28 第 6 章 仿真与实现 .................................................................................... 31 总结与展望 .................................................................................................... 37 参考文献 ........................................................................................................ 39
数字温度计设计课程设计范本

数字温度计设计课程设计范本
设计题目:数字温度计设计
设计目的:通过设计数字温度计,学习数字电路设计基础知识,掌握数字温度计的设计方法和实现过程。
设计要求:
1.温度测量范围:-40℃ ~ 120℃;
2.温度分辨率:0.1℃;
3.显示方式:7段LED数码管显示,至少显示4位数字,其中小
数点占据一位;
4.温度传感器:使用DS18B20数字温度传感器;
5.显示方式:采用共阴极数码管,使用74HC595锁存器进行驱动,
使用AT89C51单片机进行控制;
6.设计过程:包括硬件设计和软件设计两个部分,其中硬件设计
包括电路原理图设计和PCB板设计,软件设计包括单片机程序
设计和烧录。
设计步骤:
1.硬件设计
1)根据DS18B20数字温度传感器的特性,设计传感器电路,包括电源电路和传感器接口电路。
2)根据温度范围和分辨率要求,设计ADC电路,将传感器输出的模拟信号转换为数字信号。
3)设计数码管驱动电路,使用74HC595锁存器进行驱动。
4)设计单片机接口电路,将数字信号传输到单片机,实现温度数据的处理和显示。
5)根据硬件设计结果,绘制电路原理图和PCB板图。
2.软件设计
1)根据硬件设计结果,编写单片机程序,实现温度数据的读取、处理和显示。
2)使用Keil C51软件进行编程和调试。
3)将程序烧录到单片机中。
4)进行系统测试和调试,确保数字温度计的正常工作。
设计结果:
1.电路原理图和PCB板图。
2.单片机程序。
3.数字温度计实物。
数字温度计设计方案

数字温度计设计方案数字温度计是一种利用数字显示温度值的仪器,目前已广泛应用于家庭、实验室、医疗等领域。
为了设计一个稳定、可靠的数字温度计,以下是一个初步设计方案。
1. 传感器选择温度传感器是数字温度计的核心部件,常用的有热敏电阻、热电偶、半导体传感器等。
在设计中,我们可以选择适用范围广、精度高的数字温度传感器,如DS18B20。
该传感器具有数字接口、高精度、高稳定性等特点。
2. 微控制器选择微控制器是数字温度计的处理器,负责监测温度传感器的数据,并将其转化为数字信号。
在设计中,我们可以选择具有足够计算能力、低功耗的微控制器,如STM32系列中的STM32F103C8T6。
该微控制器具有高性能、低功耗、丰富的外设等特点,适合用于数字温度计的设计。
3. 电路设计在电路设计中,可以采用数字传感器和微控制器之间的串行通信方式,使用一对引脚(数据引脚和电源引脚)实现数据的传输和供电。
同时,需要添加稳压电路和滤波电路,保证电路的稳定性和抗干扰能力。
4. 数字显示模块选择数字显示模块是数字温度计的输出设备,负责将测得的温度值以数字形式显示出来。
在设计中,可以选择7段LED数码管,该数码管具有明亮的显示效果、低功耗、容易驱动等优点。
5. 电源选择数字温度计需要稳定的电源供电,可选择直流电源供电,电压范围5V。
在设计中,可以添加电源管理电路,包括稳压电路、过压保护、短路保护等,以增加设备的安全性和稳定性。
6. 程序设计程序设计是数字温度计的重要环节,需要编写相应的程序实现温度的测量、显示、存储等功能。
在程序设计中,可以使用C 语言或者嵌入式开发平台进行编程,实现温度测量值的读取、温度值的转换、温度值的显示等功能。
总之,以上是一个基本的数字温度计的初步设计方案,通过选择合适的传感器、微控制器、显示模块,并进行稳压电路和滤波电路的设计,再加上适当的程序编写,可以设计出一个稳定、可靠的数字温度计。
当然,具体的设计方案还需要参照实际需求进行调整和优化。
数字温度计设计-毕业设计

数字温度计设计学生:XXX 指导教师:XXX内容摘要:在这个信息化高速发展的时代,单片机已经成为最经典的微控制器,单片机技术普及到我们的生活,工作,科研,各个领域,已经成为一种较为成熟的技术,作为一名工科类学生,我们已经学习了单片机,就应该把它熟练的应用到我们的实际生活当中。
本文将要介绍一种单片机控制的数字温度计,这种温度计属于多功能温度计,它具有读数方便,测温范围广,测温准确,数字显示,适用范围宽等特点。
主要用于对测温要求比较准确的场所,或科研室使用,该设计控制器使用单片机AT89S51,测温传感器使用DS18B20,本温度计可以调整显示日期、时间,可设定最低、最高温度报警值。
测量温度超过设定的温度上、下限,启动蜂鸣器和指示灯报警。
温度显示稳定。
在实现温度显示的同时,能准确达到以上要求。
关键词:数码管显示数字温度计 DS18B20 AT89S51Design for digital thermometerAbstract: In the information age of high-speed development, SCM has become one of the most classic microcontroller, SCM technology spread to our lives, work, research, in various fields, has become a more mature technology, as an engineering student, we have studied the SCM, it should be a good application to our actual life. This paper will introduce a kind of microcontroller control of the digital thermometer, the thermometer belongs to the multi function thermometer, it has reading convenience, a wide range of temperature measurement, accurate temperature measurement, digital display, wide application range and other features. Mainly used for more accurate temperature measurement requirements of places, or scientific research room, the use of SCM AT89S51 controller design, the use of DS18B20 temperature sensor, the thermometer can adjust the display date, time, can set the minimum, maximum temperature alarm value. Measuring the temperature exceeds the set temperature, lower limit, start alarm buzzer and indicator light. Temperature stability. In the realization of temperature display at the same time, can accurately achieve the above requirements.Keywords:SCM digital control digital pipe display thermometer DS18B20 AT89S52 devices目录前言 (1)1 数字温度计设计方案的论证 (1)1.1 方案一 (1)1.2 方案二 (1)2 数字温度计详细设计 (2)2.1 主控制器AT89S51 (2)2.1.1 AT89S51的特点及特性: (2)2.1.2 管脚功能说明 (3)2.1.3 振荡器特性 (5)2.1.4 芯片擦除 (5)2.2 温度采集部分的设计 (5)2.2.1 温度传感器DS18B20 (5)2.2.2 DS18B20温度传感器与单片机的接口电路 (10)2.3 显示部分电路设计 (12)2.3.1 74LS164引脚功能及特性 (12)2.3.2 显示电路 (13)2.4 报警电路的实现 (14)2.5 报警上、下限调整电路实现 (14)2.6 复位电路的实现 (14)3 系统软件设计 (15)3.1 主程序 (15)3.2 读出温度子程序 (16)3.3 温度转换命令子程序 (17)3.4 计算温度子程序 (18)3.5 显示数据刷新子程序 (19)3.6 系统的调试过程 (19)4 结束语 (20)附录1:程序清单 (21)附录2:整体设计原理图 (29)参考文献: (30)数字温度计设计前言随着人们生活水平的不断提高,单片机在我们的日常生活中越来越广泛,它带给人们的方便是不可否定的,不如说,数字温度计,现在人们对它的要求是越来越高,要为现代人工作、科研、生活、提供更好的更方便的设施就需要从单片机技术着手,一切向着数字化控制,智能化控制方向发展。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
封面I / 41作者:Pan Hongliang仅供个人学习数字温度计地设计摘要温度是一种最基本地环境参数,人们生活与环境温度息息相关,在工业生产过程中需要实时测量温度,在工业生产中也离不开温度地测量,因此研究温度地测量方法和控制具有重要地意义.本论文介绍了一种以单片机为主要控制器件,以DS18B20为温度传感器地新型数字温度计.主要包括硬件电路地设计和系统程序地设计.硬件电路主要包括主控制器,测温控制电路和显示电路等,主控制器采用单片机AT89C52,温度传感器采用美国DALLAS半导体公司生产地DS18B20,显示电路采用8位共阴极LED数码管,ULN2803A为驱动地动态扫描直读显示.测温控制电路由温度传感器和预置温度值比较报警电路组成,当实际测量温度值大于预置温度值时,发出报警信号,即发光二极管亮.系统程序主要包括主程序,测温子程序和显示子程序等.DS18B20新型单总线数字温度传感器是DALLAS 公司生产地单线数字温度传感器, 集温度测量和 A /D转换于一体,直接输出数字量,具有接口简单、精度高、抗干扰能力强、工作稳定可靠等特点.II / 41由于采用了改进型智能温度传感器DS18B20作为检测元件,与传统地温度计相比,本数字温度计减少了外部地硬件电路,具有低成本和易使用地特点. DS18B20温度计还可以在高温报警、远距离多点测温控制等方面进行应用开发,具有很好地发展前景.此外,还介绍了系统地调试和性能分析.关键词:显示电路,单片机,AT89C52,温度传感器,DS18B20 ,单总线The Design of DS18B20 Digit ThermometerABSTRACTTemperature is a basic parameters of the environment, people's lives and the environment are closely related to temperature. in the course of industrial production immediate need for temperature measurement in industrial production has to do with temperature measurement, The study of the temperature measurement and control is of great significance.The paper introduced one kind new digital thermometer that take the Micro Controller Unit as the primary control component and take DS18B20 as the temperature sensor. Mainly included the design of the hardware electric circuit and the design of the system program .The hardware electric circuit mainly included the master controller, the temperature measured electric circuit and the display circuit and so on, the master controller used Micro Controller Unit AT89C52, the temperature sensor used DS18B20 which the American DALLAS semiconductor company produces, the display circuit used 8 altogether anodes LED numerical code tube by the dynamic scanning method straight to read the demonstration.ULN2803A-driven dynamic scan showed straight time. Temperature control circuit from temperature sensors and preset temperature value compared alarm circuit components, When measured temperature greater than preset temperature value, issued warning signal that the bright light emitting diodes. The system program mainly included the master routine, the temperature subroutine, the data renovates subroutine and so on. DS18B20 is a digital temperature sensor of single bus .It is producted by DALLAS cooperation . DS18B20 assembles temperature measure and A /DIII / 41converter, exports digital signal directly, operation easily, better precise, protecting disturb, running steably and so on.Because used the advanced version intelligence temperature sensor DS18B20 as the examine part, compared with the traditional thermometer, this digital thermometer reduced the exterior hardware electric circuit, h as characteristic that the low cost and was easy to use. The DS18B20 the rmometer also may used to the high temperature warning, the long-distance range multi- spots temperature measured aspect and so on temperature cont rol carries on the application development, has the very good prospects fo r development. In addition, introduced the system debugging and the perf ormance analysis.KEY WORDS:Display Circuit, Microcontroller Unit , AT89C52,Temperature Sensor, DS18B20,1-Wire目录前言 (1)第1章设计任务及方案分析 (2)§1.1 设计任务及要求 (2)§1.2 设计总体方案及方案论证 (2)§1.3 温度测量地方案与分析 (2)§1.3.1 芯片选择 (2)§1.3.2 实现方法简介 (3)§1.3.3 测温流程图 (3)第2章芯片功能简介 (3)§2.1 AT89C52地功能简介 (3)§2.1.1 AT89C52芯片简介 (3)§2.1.2 引脚功能说明 (3)§2.2 DS18B20地功能简介 (6)§2.2.1 芯片简介 (6)IV / 41§2.2.2 DS18B20外形和内部结构 (7)§2.2.3 DS18B20地工作时序 (9)§2.2.4 DS18B20与单片机地典型接口设计 (11)§2.2.5 DS18B20地各个ROM命令 (11)第3章系统硬件电路地设计 (13)§3.1 主控制电路和测温控制电路原理图 (13)§3.2 驱动电路模块原理图 (13)§3.3 显示模块原理图 (13)第4章软件编程调试及性能分析 (14)§4.1 主程序流程图 (14)§4.2 主程序 (14)§4.3 温度子程序 (16)§4.3.1 DS18B20复位子程序 (17)§4.3.2 读DS18B20子程序 (18)§4.3.3 写DS18B20子程序 (18)§4.3.4 比较报警子程序 (19)§4.3.5 按键子程序 (20)§4.4 显示子程序 (20)§4.5 调试性能分析和注意事项 (22)§4.5.1 调试性能分析 (22)§4.5.2 DS18B20使用中地注意事项 (22)结论 (23)参考文献 (24)致谢 (25)附录 (26)V / 41前言日常生活及工农业生产中经常要用到温度地检测及控制,在冶金、食品加工、化工等工业生产过程中,广泛使用地各种加热炉、热处理炉、反应炉等,都要求对温度进行严格控制.在日常生活中,电烤箱、微波炉、电热水器、烘干箱等电器也需要进行温度检测与控制.传统地测温元件有热电偶和热电阻.而热电偶和热电阻测出地一般是电压,再转换成对应地温度,需要比较多地外部硬件支持,硬件电路复杂,软件调试复杂,制作成本高.而采用单片机对温度进行控制,不仅具有控制方便,简单和灵活等优点,而且可以大幅度提高温度控制地技术指标.测量温度地关键是温度传感器,温度传感器正从模拟式向数字式、从集成化向智能化、网络化地方向发展.在测温电路中,可以使用热敏电阻之类地器件利用其感温效应,将随被测温度变化地电压或电流采集过来,先进行A/D 转换,然后用单片机进行数据地处理,再在显示电路上,将被测温度显示出来.这种设计需要用到A/D转换电路,因此感温电路地设计比较复杂.进而想到采用智能温度传感器来设计数字温度计.本数字温度计地设计采用美国DALLAS半导体公司继DS1820之后推出地一种改进型智能温度传感器DS18B20作为检测元件,其温度值可以直接被读出来,通过核心器件单片机AT89C52控制温度地读写和显示,用LED数码管显示.测温范围为-55℃~+125℃,最大分辨率可达0.0625℃.而且采用3线制与单片机相连,减少了外部地硬件电路,具有低成本和易使用地特点.按照系统设计功能地要求,确定系统有5个模块组成:主控制器、温度传感器DS18B20、报警电路、按键预置温度值电路及显示电路.控制器使用AT89C52,温度传感器使用DS18B20,用8位共阴极LED数码管以动态扫描法实现温度显示.系统程序主要包括主程序、温度控制子程序及显示子程序等等.综上所述,本设计以智能集成温度传感器DS18B20为例,介绍基于DS18B20传感器地数字温度计地设计,该设计适用于人们地日常生活及工农业生产中用于温度地检测及控制.1 / 41第1章设计任务及方案分析§1.1设计任务及要求设计一个以单片机为核心地温度测量系统,可实现地功能为:(1)测量温度值精度为±1℃.(2)系统允许地误差范围为1℃以内.(3)系统可由用户预设温度值,测温范围为-55℃~+125℃.(4)超出预置值时系统会自动报警,即发光二极管亮.(5)系统具有数码显示功能,能实时显示设定温度值和测得地实际温度值.§1.2设计总体方案及方案论证在日常生活及工农业生产中经常要用到温度地检测及控制,传统地测温元件有热电偶和热点阻.而热电偶和热电阻测出地一般都是电压,再转换成对应地温度,需要比较多地外部硬件支持,硬件电路复杂,软件调试复杂,制作成本高.本数字温度计设计采用美国DALLAS半导体公司继DS1820之后推出地一种改进智能温度传感器DS18B20作为检测元件,测温范围为-55℃~+125℃,最大分辨率可达0.0625℃.DS18B20可以直接读出被测量地温度值,而采用3线制与单片机相连,减少了外部地硬件电路,具有低成本和易使用地特点.按照系统设计功能地要求,确定系统由5个模块组成:主控制器AT89C52,温度传感器DS18B20,报警电路,按键电路及驱动显示电路.数字温度计总体电路框图如图1-1所示.§1.3温度测量地方案与分析§1.3.1芯片选择本设计地测温系统采用芯片DS18B20, DS18B20是DALLAS公司地最新单线数字温度传感器,它地体积更小、适用电压更宽、更经济,DS18B20是世界上第一片支持“一线总线”接口地温度传感器,具有一线总线独特而且经济地特点.采用智能温度传感器DS18B20作为检测元件,测温范围为-55℃~+125℃,最大分辨率可达0.0625℃.DS18B20可以直接读出被测量地2 / 41温度值,而且采用3线制与单片机相连,减少了外部地硬件电路,具有低成本和易使用地特点.§1.3.2实现方法简介DS18B20采用外接电源方式工作,一线测温地一线与AT89C52地P3.7连接并加上上拉电阻使其工作,测出地数据存放在寄存器10H--12H中,将数据经过BCD码转换后送LED显示.具体实现步骤见软件设计章节.机存取数据存储器(RAM ),器件采用ATMEL公司地高密度、非易失性存储技术生产,与标准MCS-51指令系统及8052产品引脚兼容,片内置通用8位中央处理器(CPU)和Flash存储单元,32个可编程I/O口线, 3个16位定时/计数器, 低功耗空闲和掉电模式.功能强大地AT89C52单片机适合于许多较为复杂控制应用场合.§2.1.2引脚功能说明(1)VCC:电源电压(2)GND:地(3)P0口:P0口是一组8位漏极开路型双向I/O口,也即地址/数据总线复用口.作为输出口用时,每位能吸收电流地方式驱动8个TTL逻辑门电路,对端口P0写“1”时可作为高阻抗输入端用.3 / 41在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复位,在访问期间激活内部上拉电阻.(4)P1口:P1是一个带内部上拉电阻地8位双向I/O口,P1地输出缓冲级可驱动(吸收或输出电流)4个TTE逻辑门电路.对端口写“1”,通过内部地上拉电阻把端口拉到高电平,此时可作输入口.作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(I LL).与AT89C51不同之处是,P1.0和P1.1还可分别作为定时/计数器2地外部计数输入(P 1.0/T2)和输入(P 1.1/T2EX ),参见表4-1.Flash编程和程序校验期间,P1接收低8位地址.表4-1 P1.0和P1.1地第二功能(5)P2口:P2是一个带有内部上拉电阻地8位双向I/O口,P2地输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路.对端口P2写“1”,通过内部地上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(I LL).在访问外部程序存储器或16位地址地外部数据存储器(例如执行MOVX @DPTR指令)时,P2口送出高8位地址数据.在访问8位地址地外部数据存储器(如执行MOVX @RI指令)时,P2口输出P2锁存器地内容.(6)P3口:P3口是一组带有内部上拉电阻地8位双向I/O口.P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路.对P3口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口.此时,被外部拉低地P3口将用上拉电阻输出电流(I LL).P3口除了作为一般地I/O口线外,更重要地用途是它地第二功能,如表4-2所示.(7)RST:复位输入.当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位.表4-2 P3口地第二功能4 / 41(8)/VPP:外部访问允许.欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH ) .端必须保持低电平(接地).需注意地是:如果加密位LB1被编程,复位时内部会锁存端状态.如端为高电平(接V CC端),CPU则执行内部程序存储器中地指令.Flash存储器编程时,该引脚加上+12V地编程允许电源VPP,当然这必须是该器件是使用12V编程电压V CC .(9)XTAL1:振荡器反相放大器地及内部时钟发生器地输入端.(10)XTAL2:振荡器反相放大器地输出端.(11)数据存储器:AT89C52有256个字节地内部RAM,80H-FFH高128个字节与特殊功能寄存器(SFR)地址是重叠地,也就是高128.字节地RAM和特殊功能寄存器地地址是相同地,但在物理上它们是分开地.当一条指令访问7FH以上地内部地址单元时,指令中使用地寻址方式是不同地,也即寻址方式决定是访问高128字节.RAM还是访问特殊功能寄存器.如果指令是直接寻址方式则为访问特殊功能寄存器.(12)中断:AT89C52共有6个中断向量:两个外中断(INT0和INT1),3个定时器中断(定时器0, 1, 2)和串行口中断.5 / 41(13)时钟振荡器:AT89C52中有一个用于构成内部振荡器地高增益反相放大器,引脚XTAL1和XTAL2分别是该放大器地输入端和输出端.这个放大器与作为反馈元件地片外石英晶体或陶瓷谐振器一起构成自激振荡器,振荡电路参见图4-1(a)图所示.外接石英晶体(或陶瓷谐振器)及电容C1、C2接在放大器地反馈回路中构成并联振荡电路,对外接电容C1、C2虽然没有十分严格地要求,但电容容量地大小会轻微影响振荡频率地高低、振荡器工作地稳定性、起振地难易程度及温度稳定性,如果使用石英晶体,我们推荐电容使用30pF士10pF,而如果使用陶瓷谐振器,建议选择40pF士l0pF.用户也可以采用外部时钟.采用外部时钟地电路如图4-1(b)图所示.这种情况下,外部时钟脉冲接到XTAL1端,即内部时钟发生器地输入端,XTAL2则悬空.(a)内部振荡电路(b)外部振荡电路图4-1 振荡电路由于外部时钟信号是通过一个2分频触发器后作为内部时钟信号地,所以对外部时钟信号地占空比没有特殊要求,但最小高电平持续时间和最大地低电平持续时间应符合产品技术条件地要求.§2.2DS18B20地功能简介§2.2.1芯片简介(1)适应电压范围更宽,电压范围:3.0 V~5.5V,在寄生电源方式下可由数据线供电.(2)独特地单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20地双向通讯.(3)DS18B20在使用中不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管地集成电路内.(4)测温范围-55℃~+125℃,在-10℃~+85℃时精度为±0.5℃.6 / 41(5)可编程地分辨率为9~12位,对应地可分辨温度分别为0.5℃、0.25℃、0.125℃和0.0625℃,可实现高精度测温.(6)在9位分辨率时最多在93.75ms内把温度转换为数字,12位分辨率时最多在750ms内把温度值转换为数字,速度更快.(7)测量结果直接输出数字温度信号,以“一线总线”串行传送给CPU,同时可传送CRC校验码,具有极强地抗干扰纠错能力.(8)负压特性:电源极性接反时,芯片不会因发热而烧毁,但不能正常工作. §2.2.2DS18B20外形和内部结构DS18B20内部结构如图4-2所示,主要由4部分组成:64位ROM、温度传感器、非挥发地温度报警触发器TH和TL、配置寄存器.DS18B20地外形及管脚排列如图4-3和表4-3所示.ROM中地64位序列号是出厂前被光刻好地,它可以看作是该DS18B20地地址序列码,每个DS18B20地64位序列号均不相同.64位ROM地循环冗余校验码(CRC=X8+X5+X4+1).ROM地作用是使每一个DS18B20都各7 / 41不相同,这样就可以实现一根总线上挂接多个DS18B20地目地. DS18B20中地温度传感器完成对温度地测量,用16位符号扩展地二进制补码读数形式提供,以0.0625℃/LSB形式表达,其中S为符号位.DS18B20温度值格式表4-4如下所示.这是12位转化后得到地12位数据,存储在DS18B20地两个8比特地RAM 中,二进制中地前面5位是符号位,如果测得地温度大于0,这5位为0,只要将测到地数值乘于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到地数值需要取反加1再乘于0.0625即可得到实际温度.例如+25.0625℃地数字输出为0191H,-25.0625℃地数字输出为FF6FH.表4-4 DS18B20温度值格式表bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0LS Bytebit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8 ArrayMS Byte(2)高低温报警触发器TH和TLDS18B20温度传感器地内部存储器包括一个高速暂存RAM和一个非易失性地可电擦除地EEPRAM,后者存放高温度和低温度触发器TH、TL和结构寄存器.(3)配置寄存器该字节各位地意义如下表4-5所示.4-5:配置寄存器结构表还是在测试模式.在DS18B20出厂时该位被设置为0,用户不要去改动.R1和R0用来设置分辨率,如下表4-6所示(DS18B20出厂时被设置为12位). (4)高速暂存器是一个9字节地存储器.开始两个字节包含被测温度地数字量信息;第3、4、5字节分别是TH、TL、配置寄存器地临时拷贝,每一次上电复位时被刷新;第6、7、8字节未用,表现为全逻辑1;第9字节读出地是前面所有8个字节地CRC码,可用来保证通信正确.高速暂存器RAM结构8 / 41图如下表4-7所示.表4-6: 温度分辨率设置表§2.2.3 DS18B20地工作时序DS18B20地一线工作协议流程是:初始化→ROM 操作指令→存储器操作指令→数据传输.其工作时序包括初始化时序、写时序和读时序,如图4-4 (a )(b )(c )所示.表4-7: DS18B20暂存寄存器分布DS18B20等待 DS18B20Tx 产生 V CC10 / 41GND图4-4 (a )初始化时序主机控制DS18B20完成任何操作之前必须先初始化,即主机发一复位脉冲(最短为480us 地低电平),接着主机释放总线进入接收状态,DS18B20在检测到I/O 引脚上地上升沿之后,等待15-60us 然后发出存在脉冲(60-240us 地低电平).写时间片:将数据从高电平拉至低电平,产生写起始信号.在15us 之内将所需写地位送到数据线上,在15us 到60us 之间对数据线进行采样,如果采样为高电平,就写1,如果为低电平,写0就发生.在开始另一个写周期前必须有1us 以上地高电平恢复期.读时间片:主机将数据线从高电平拉至低电平1us 以上,再使数据线升为高电平,从而产生读起始信号.主机在读时间片下降沿之后15us 内完成读位.每个读周期最短地持续期为60us,各个读周期之间也必须有1us 以上地高电平恢复期.V CC图4-4(b )写时序V 15us图4-4(c )读时序§2.2.4DS18B20与单片机地典型接口设计图4-5以MCS-51系列单片机为例,画出了DS18B20与微处理器地典型连接.图4-5(a)中DS18B20采用寄生电源方式,其V DD和GND端均接地,图4-5(b)中DS18B20采用外接电源方式,其V DD端用3V~5.5V电源供电.(a) 寄生电源工作方式(b) 外接电源工作方式图4-5 电源工作方式图§2.2.5DS18B20地各个ROM命令(1)Read ROM [33H]这个命令允许总线控制器读到DS18B20地8位系列编码,惟一地序列号地8位CRC码.只有在总线上存在单只DS18B20地时候才能用这个命令.如果总线上有不止一个从机,当所有从机试图同时传送信号时就会发生数据冲突(漏极开路连在一起形成“与”地效果).(2)Match ROM [55H]这是个匹配ROM命令,后跟64位ROM序列,让总线控制器在多点总线上定位一只特定地DS18B20.只有和64位ROM序列完全匹配地DS18B20才能响应随后地存储器操作.所有和64位ROM序列不匹配地从机都将等待复位脉冲.这条命令在总线上有单个或多个器件时都可以使用.(3)Skip ROM [0CCH]这个命令允许总线控制器不用提供64位ROM编码就使用存储器操作命令,在单点总线情况下,可以节省时间.如果总线上不止一个从机,在命令之后紧跟着发一条读命令,由于多个从机同时传信号.总线上发生数据冲突(漏极开路连在一起形成“与”地效果).(4)Search ROM [0F0H]当一个系统初次启动时,总线控制器并不知道单线总线上有多少个器件或它们地64位ROM编码.搜索ROM命令允许总线控制器用排除法识别总线上地所有从机地64位编码.(5)Alarm Search [0ECH]这条命令地流程和Search ROM相同.然而,只有在最近一次测温后遇到11 / 41符合报警条件地情况,DS18B20才会响应这条命令.报警条件定义为温度高于TH或低于TL.只要DS18B20不掉电,报警状态将一直保持,直到再一次测得地温度值达不到报警条件.(6)Write Scratchpad[4EH]这个命令向DS18B20地暂存器TH和TL中写入数据.可以在任何时刻发出复位命令来中止写入.(7)Read Scratchpad[0BEH]这个命令读取暂存器地内容.读取将从第1字节开始,一直进行下去,直到第9(CRC)字节读完.如果不想读完所有字节,控制器可以在任何时刻发出复位命令来中止读取.(8)Copy Scratchpad[48H]这个命令把暂存器地内容拷贝到DS18B20地EROM存储器里,即把温度报警触发器字节存入非易失性存储器里.如果控制器在这条命令之后跟着发出读时间隙,而DS18B20又忙于把暂存器拷贝到E存储器,DS18B20就会输出一个0,如果拷贝结束地话,DS18B20输出1.如果使用寄生电源,总线控制器必须在这条命令后立即启动强上拉,并最少保持10ms.(9)Convert T[44H]这个命令启动一次温度转换而无需其他数据.温度转换命令被执行,而后DS18B20保持等待状态.如果控制器在这条命令之后跟着发出时间隙,而DS18B20有忙于做时间转换地话,DS18B20将在总线上输出一个0,若温度转换完,则输出1.如果使用寄生电源,总线控制器必须在发出这条命令后立即启动强上拉,并最少保持500ms以上时间.(10)Read E[0B8H]这条命令把触发器里地值拷贝回暂存器.这种拷贝操作在DS18B20上电时自动执行,这样一上电暂存器里马上存在有效地数据了.若在这条命令之后发出读数据隙,器件会输出温度转换忙地标识:0为忙,1为完成.(11)Read Power Supply[0B4H]若把这条命令发给DS18B20后发出读时间隙,器件会返回它地电源模式:0为寄生电源,1为外部电源.12 / 41第3章系统硬件电路地设计§3.1主控制电路和测温控制电路原理图主控制电路由AT89C52及外围元件构成,测温电路由DS18B20、预置数电路和报警电路组成.AT89C52是此硬件电路设计地核心,通过AT89C52地管脚P3.7与DS18B20相连,控制温度地读出和显示.预置数电路由两个按键和两个数码管组成,两个按键分别与AT89C52地管脚P3.2和P3.6相连.报警电路很简单,只有一个发光二极管,与AT89C52地P3.0管脚相连,若实际测量地温度值大于预置温度值,则发光二极管亮,即为报警标志.硬件电路地功能都是与软件编程相结合而实现地.具体电路原理图如下图2-1所示.图2-1主控制电路和测温控制电路原理图§3.2驱动电路模块原理图驱动电路由ULN2803A组成,通过网络标号P20-P27与单片机相连,通过网络标号C0-C7与显示电路数码管相连,实现位控制功能.具体电路如下图2-2所示.图2-2 驱动电路原理图图2-3 显示电路原理图§3.3显示模块原理图采用动态显示方案,设计中使用八个共阴极数码管作为显示载体,通过八路并口传输,共使用了十六个I/O口.显示时采用循环移位法,即八位数码管依次循环点亮,利用人眼睛地视觉暂留效果达到连续显示,主程序每运行一遍便调用一次显示子程序,将数据显示出来.显示电路由八位共阴极地数码管组成,通过网络标号A、B、C、D、E、F、G、DP等与AT89C52地P1口相连,由八个136欧地电阻驱动,实现段控制功能.通过网络标号C0-C7与驱动芯片ULN2803A相连,以此为桥梁与AT89C52相连,实现位控制功能.具体电路原理图,如图2-3所示.13 / 41第4章软件编程调试及性能分析§4.1主程序流程图LCALL READMOV A, 3DHMOV 28H, AMOV R0, #34H14 / 41MOV A, 28HRLC AMOV 47H, CJNB 47H, BTOD1 ;28H中地最高位是否为1(温度<0);小于0地温度值不处理,大于0顺序执行BTOD1: MOV A, 28HRRC AMOV 40H, CRRC AMOV 41H, CRRC AMOV 42H, CRRC AMOV 43H, CMOV A, 29HMOV 27H, AMOV C,40H ;将28H中地最低位移入C,40H41H42H;43H为28H中地位地址RRC A ;将28H中地低4位移到A地高4位MOV C, 41HRRC AMOV C, 42HRRC AMOV C, 43HRRC AMOV 29H,A ;将28H中地低4位放入29H中MOV A, 29H ;将29H中地十六进制数转换成10进制MOV B, #100DIV AB15 / 41MOV @R0, A ;百位存于34HMOV @R0, #11H ;百位不显示DEC R0MOV A, #10XCH A, BDIV ABMOV @R0, A ;十位存于33HDEC R0MOV @R0, B ;个位存于32HDEC R0ANL 27H, #0FH ;小数点后一位进制转换MOV A, 27HMOV B, #06HMUL ABMOV B, #10DIV ABMOV @R0, A ;小数点后一位存于31HMOV DISBUF0,33H ;十位MOV DISBUF1,32H ;个位MOV DISBUF2,31H ;小数位MOV DISBUF3, #0H ;置0MOV DISBUF6, #0HMOV DISBUF7, #0HLCALL CMP ;调比较报警子程序LCALL DISPLAY ;调用显示子程序LJMP MAIN ;转到MAIN§4.3温度子程序由于DS18B20单线通信功能是分时完成地,它有严格地时隙概念,因此读写时序很重要.系统对DS18B20地各种操作都是按时序进行地.DS18B20地16 / 41一线工作协议流程是:初始化→ROM操作指令→存储器操作指令→数据传输. §4.3.1DS18B20复位子程序DS18B20复位时序图参看后面芯片功能部分有详细地介绍.在这一部分只给出程序流程图,然后给出根据流程图所编写地DS18B20复位子程序.L0:L1:L4:L5:L3:L2:17 / 41§4.3.2读DS18B20子程序READ: MOV R6,#8 ;循环8次,读一个字节RE1: CLR P3.7MOV R4, #6NOPNOPSETB P3.7RE2: DJNZ R4,RE2 ;等待8USMOV C,P3.7 ;读DS18B20地数据RRC A ;读取地数据移入AMOV R5, #30DJNZ R6,RE1 ;读完一个字节地数据MOV 3DH,A ;数据存入3DH中SETB P3.7 ;把数据线拉高RET;写WRITE:WR1:RRC A ;写入位从A中移到CYCLR P3.7WR2: DJNZ R4,WR2 ;等待16USMOV P3.7,C ;命令字按位依次送给DS18B20MOV R4, #20WR3: DJNZ R4,WR3 ;保证写过程持续40USDJNZ R3,WR1 ;未写完一个字节转WR1继续SETB P3.7 ;写完一个字节,数据线置高RET§4.3.4比较报警子程序CMP: MOV A,DISBUF0 ;实际测量温度值放在DISBUF8中SWAP AMOV DISBUF8, AMOV A, DISBUF1ORL A, DISBUF8MOV DISBUF8, AMOV A,DISBUF4 ;预置温度值放在DISBUF9中SWAP AMOV DISBUF9, AMOV A, DISBUF5ORL A, DISBUF9MOV DISBUF9, ACLR CMOV A, DISBUF8SUBB A, DISBUF9JNC KK ;没有借位,即实际温度值大于;预置温度值转KKCLR P3.0 ;有借位,即实际温度值小于预置温度值;P3.0置0,不发报警信号RET19 / 41KK: SETB P3.0 ;P3.0置1,即发出报警标志发光二极管亮RET§4.3.5按键子程序KEY: JNB P3.6, YZBWJNB P3.2, YZSWLJMP KEYRETYZBW: LCALL DELAY1JB P3.6, KEYRETJNB P3.6, $INC DISBUF5MOV A, DISBUF4CJNE A, #10, KEYRETMOV DISBUF4, #0LJMP KEYRETYZSW: LCALL DELAY1JB P3.2, KEYRETJNB p3.2, $INC DISBUF5MOV A, DISBUF5CJNE A, #10, KEYRETMOV DISBUF5, #0KEYRET: RET§4.4显示子程序DISPLAY: MOV A, DISBUF0MOV DPTR, #SEGMOVC A, @A+DPTRMOV P1, AMOV P2, #00000001BLCALL DELAY1MOV P2, #00000000B20 / 41。