基于单片机DS18B20温度控制器课程设计
基于DS18B20的温度控制器

if((m/100==0)&&((m%100)/10==0))//消隐
TempData[2]=0;
else
TempData[2]=dofly_DuanMa[(m%100)/10]; //十位温度
TempData[3]=dofly_DuanMa[(m%100)%10]|0x80;//个位温度,带小数点
七. 参考文献
[1]LY-51S v2.3 c 语言程序 122-1 个 18B20 温度传感器 数码管显示 [2]LY-51S v2.3 c 语言程序 59-独立按键依次输入数据 [3]LY-51S v2.3 c 语言程序 125-超温报警测试 [4]LY-51S v2.3 c 语言程序 126-温度可调上下限 1602 显示
} /********************************************************/ else if(!KEY3) //如果检测到低电平,说明按键按下
{ DelayMs(10); //延时去抖,一般 10-20ms if(!KEY3) //再次确认按键是否按下,没有按下则退出 {
{ while(!KEY4);//如果确认按下按键等待按键释放,没有则退出 { return 4; }
} } /********************************************************/ else if(!KEY5) //如果检测到低电平,说明按键按下 {
DelayMs(10); //延时去抖,一般 10-20ms if(!KEY5) //再次确认按键是否按下,没有按下则退出
附:源程序
/*----------------------------------------------名称:DS18b20 数码管显示 论坛: 编写:shifang 日期:2009.5 修改:无 内容:显示格式 符号 xxx.x C 可以显示负温度
数字温度计DS18B20课程设计报告

数字温度计DS18B20课程设计报告1. 课程设计背景数字温度计是一款可以测量温度并输出数字信号的电子设备。
它具有高精度、可编程、低功耗等优点,因此在很多领域都有广泛应用,比如环境温度监测、工业控制、食品加工等。
DS18B20是一款数字温度传感器,它以数字方式输出采集到的温度值,精度高达±0.5℃,提供了多种通信协议,应用灵活。
在本次课程设计中,我们将学习如何使用DS18B20来制作一款数字温度计。
2. 课程设计目标在本次课程设计中,我们的目标是:1.学习数字温度计的工作原理和基本构成;2.掌握DS18B20的使用方法和通信原理;3.制作一款数字温度计,并进行温度测量和数据传输。
3. 课程设计内容3.1 数字温度计的工作原理数字温度计的工作原理是利用温度传感器采集温度信息,然后通过模数转换器(ADC)将模拟信号转换成数字信号,并且通过数字信号处理单元进行处理,并显示在屏幕上。
温度传感器一般分为两种类型,即模拟温度传感器和数字温度传感器。
3.2 DS18B20的使用方法和通信原理DS18B20可以通过多种通信协议与主控板进行通信,如1-wire协议、I2C协议等。
1-wire协议是一种仅使用单个总线的串行协议,利用单总线实现数据传输。
3.3 制作数字温度计我们可以通过编程语言来控制DS18B20进行温度采集,并用LCD屏幕显示温度值。
首先要准备所需的材料和工具,包括Arduino开发板、DS18B20传感器、LCD显示屏、杜邦线、面包板等。
具体步骤如下:•连接DS18B20传感器•连接LCD显示屏•编写程序4. 课程设计成果经过学习和实际操作,我们可以掌握数字温度计的工作原理和基本构成,以及DS18B20的使用方法和通信原理。
同时,我们可以独立制作一款数字温度计,在温度测量和数据传输方面有了实际经验。
这些知识和技能对于我们学习和研究电子技术都非常有帮助。
5.通过本次课程设计,我们学习了数字温度计的工作原理和基本构成,以及DS18B20的使用方法和通信原理。
基于DS18B20的智能温度控制器设计

第三章硬件设计
第 2 页 / 共 39 页
3.1 AT89C51 单片机
主控制单元是单片机选用市场上常见的美国 ATMEL 公司的 AT89C51 作为控制元件,以下 是一些 AT89C51 的 介绍:AT89C51 是一种带 4K 字节 FLASH 存储器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低电压、高性能 CMOS 8 位微处理器, 俗称单片机。该器件采用 ATMEL 高密度非易失存储器制造技术制造,与工业标准的 MCS-51 指令集和输出管脚相兼容。由于将多功能 8 位 CPU 和闪烁存储器组合在单个芯片中,ATMEL 的 AT89C51 是一种高效微控制器,AT89C2051 是它的一种精简版本。AT89C51 单片机为很多 嵌入式控制系统提供了一种灵活性高且价廉的方案。外形及引脚排列如下所示
第一章 引言
温度控制系统无论是工业生产过程,还是日常生活都起着非常重要的作用,过低或过高 的温度环境不仅是一种资源的浪费,同时也会对机器和工作人员的寿命产生严重影响,极有 可能造成严重的经济财产损失,给生活生产带来许多利的因素,基于 AT89C51 的单片机温度 控制系统与传统的温度控制相比具有操作方便、价价格便宜、精确度高和开展容易等优点, 因此市场前景好。
《单片机原理及应用》
课程设计报告书
学院(系): 年级专业: 学 号: 学生姓名: 指导教师: 教师职称: 成 绩:
************* 10 电子信息工程 ************
**** **** ******
制作日期 2012 年 11 月 16 日
目录
第一章 引言 .................................................................................................................... 1 第二章 系统设计 ............................................................................................................. 1 2.1 方案论证................................................................................................................... 1 2.1 系统的总设计 ........................................................................................................... 1 2.2 功能模块................................................................................................................... 2 第三章硬件设计 ............................................................................................................... 2 3.1 AT89C51 单片机......................................................................................................... 3 3.2 温度信号采集单元 ..................................................................................................... 6 3.3 液晶显示屏输出....................................................................................................... 11 3.4 蜂鸣器报警电路....................................................................................................... 15 第四章软件设计 ............................................................................................................. 16 4.1 主程序..................................................................................................................... 16 4.2 温度采集子程序....................................................................................................... 17 4.3 温度处理及显示子程序 ........................................................................................... 18 4.4 报警子程序.............................................................................................................. 20 4.5 升降温程序及 LED 显示子程序................................................................................. 20 第五章 系统调试 ........................................................................................................... 22 5.1 keil 调试................................................................................................................ 22 5.2 Ptotues 硬件仿真 ................................................................................................... 23 第六章 心得体会 ........................................................................................................... 25 致谢............................................................................................................................... 25 【参考文献】................................................................................................................. 26 附录............................................................................................................................... 26 附录 1 硬件电路图......................................................................................................... 36 附录 2 源程序................................................................................................................ 26 附录 3 元件清单 ............................................................................................................ 36
基于DS18B20的温度系统的课程设计

基于DS18B20的温度系统•实验目的•了解DS1820数字温度传感器特性•掌握单片机基本功能的运用、简单接口电路如键盘、LED显示电路或LCD显示电路设计及其相应驱动软件的编制软、硬件系统的调试•实验任务设计一个具有基于DS1820数字温度传感器的温度检测及显示的系统。
要求系统具有以下功能:•两路温度检测;•具有显示功能;•具有用户输入功能;•可通过输入补偿温度设定校准;For personal use only in study and research; not for commercial use•实验原理原理简述:数字温度传感器DS1820把温度信息转换为数字格式;通过“1-线协议”,单片机获取指定传感器的数字温度信息,并显示到显示设备上。
通过键盘,单片机可根据程序指令实现更灵活的功能,如单点检测、轮转检测、越限检测等。
基于DS1820数字温度传感器的温度检测及显示的系统原理图如图1For personal use only in study and research; not for commercial use图 1 基于DS1820的温度检测系统框图•硬件设计For personal use only in study and research; not for commercial use电路设计--单片机基本系统电路:图 2 单片机基本系统电路原理图电路说明:综合考虑系统使用到的单片机内部存储资源、系统处理信号的种类、处理数据的速度、系统的I/O口开销,以及系统的可扩展性能,本系统选用了ATMEL公司的8位低功耗,高性能CMOS单片机,芯片内集成有通用8位中央处理器(兼容标准MCS -51指令系统及80C51引脚结构)和4K/8K Bytes ISP Flash存储单元(可实现在系统编程)。
复位电路采用上电复位加按键复位的方式。
采用无源晶体提供正弦振荡信号为系统提供时钟,其硬件原理图如图2所示。
基于18B20的单片机课程设计报告(含汇编程序)

电子温度计(基于18B20)课程设计报告可以实现:●数码管能够显示当前的温度值(两位小数);●能够通过按键设定报警温度;●温度上限或下限时能够通过蜂鸣器报警,警线可设;●开式,华氏,摄氏温标的转化。
实验要求(略)一.设计目的通过课程设计使学生达到以下能力训练:调查研究、分析问题的能力;查阅中外文献的能力;计算机软件应用的能力;设计计算和绘图的能力;语言文字表达的能力。
对软件的灵活运用,适时开发并创新的能力。
二、设计内容利用数字温度传感器DS18B20设计一个电子温度计,通过数码管来实时显示测得的温度值。
基本要求:⑴、设计实验电路⑵、分析实验原理⑶、列出实验接线表⑷、采用汇编语言编写实验程序⑸、通过实验验证功能的实现⑹、编写课程设计说明书三、设计方案在单片机电路设计中,大多都是使用传感器,所以可以采用一只温度传感器DS18B20,此传感器,可以很容易直接读取被测温度值,进行转换,就可以满足设计要求。
预计功能:(从主界面开始)1.按下键1,可显示当前温度(整数部分),和温度上限设定值;并且在3秒的有效时间内可用键2减小设定温度上限,键3可增加上限值。
最后一次按下按键后3秒自动返回主显示界面。
2.按下键3,可显示当前温度(整数部分),和温度下限设定值;并且在3秒的有效时间内可用键1减小设定温度上限,键2可增加上限值。
最后一次按下按键后3秒自动返回主显示界面。
3.按下键2,可实现开式,华氏,摄氏温标的循环转换。
4.温度小于下限温度警线,或是温度高于上限警线时,产生声光报警。
四、设计框图温度计电路设计总体设计框图如图1所示,控制器采用单片机AT89S51,温度传感器采用DS18B20,用八位LED数码管以并口传送数据实现温度显示。
图1总体设计框图五、显示电路显示电路采用两个4位共阳LED数码管,从P1口RXD,TXD串口输出段码。
温度传感器设计DS18B20是1-wire器件,1-wire单总线是Maxim全资子公司Dallas的一项专有技术,与目前多数标准串行数据通信方式,如SPI/I2C/MICROWIRE不同,它采用单根信号线,既传输时钟,又传输数据,而且数据传输是双向的。
DS18B20温度计课程设计完整版

目录1 前言 (1)1.1 设计背景 (1)1.2 设计目标 (1)1.3 实施计划 (1)2 总体方案设计 (2)2.1 方案比较 (2)2.1.1 方案一基于热敏电阻的温度计设计 (2)2.1.2 方案二基于SHT71的数字温度计设计 (2)2.1.3 方案三基于DS18B20的数字温度计设计 (3)2.2 方案论证 (3)2.3 方案选择 (4)3 硬件设计 (5)3.1 单元模块设计 (5)3.1.1 时钟和复位电路 (5)3.1.2 报警电路 (5)3.1.3 数码显示电路 (6)3.1.4 电源电路 (7)3.1.5 按键电路 (7)3.1.6 串口通信电路 (8)3.2 核心器件介绍 (8)3.2.1 单片机STC89C52介绍 (8)3.2.2 DS18B20介绍 (9)4 软件设计 (11)4.1 温度采集模块 (11)4.2 温度设定模块 (14)4.3 报警模块 (15)5 系统整合调试 (16)5.1 硬件调试 (16)5.2 软件调试 (16)6 系统功能、指标参数 (18)6.1 系统功能 (18)6.2 系统指标参数测试 (18)6.3 系统功能及指标参数分析 (19)7 结论 (20)8 总结与体会 (21)9 参考文献 (22)10 附录一:基于DS18B20数字温度计的设计原理图 (23)11 附录二:基于DS18B20数字温度计的设计PCB图 (24)12 附录三:基于DS18B20数字温度计的设计的实物图 (25)13 附录四:基于DS18B20数字温度计的设计C语言程序 (26)1前言自动控制领域中,温度检测与控制占有很重要的地位。
温度检测在工农业生产、科研和在人们的生活中得到广泛的运用。
目前,温度传感器正从模拟式向数字集成式方向飞速发出,单片机也是人们追求的目标之一,它所给人带来的方便也是不可否定的,其中数字温度计就是一个典型的例子,人们对它的要求越来越高,要为现代人工作、科研、生活、提供更好更方便的设施就需要从单片机技术入手,一切向着数字化、智能化方向发展。
基于单片机温度控制系统的设计DS18B20

基于单片机温度控制系统的设计DS18B20设计步骤如下:1.硬件设计:a.使用DS18B20温度传感器进行温度测量。
将DS18B20的VCC引脚连接到5V电源,GND引脚连接到地,以及数据引脚连接到单片机的一些GPIO口。
b.设计一个控制电路,可通过单片机的输出控制继电器或者电阻电路对温度进行调节。
根据具体需求,可以使用继电器进行开关控制,也可以使用调节电阻来实现温度控制。
c.将单片机的GPIO口与控制电路的输入端连接,以便通过电平控制控制电路的工作状态。
2.软件设计:a.在单片机的开发环境中,编写硬件驱动程序,以实现与DS18B20传感器的通信。
这包括初始化传感器、发送读取温度命令、接收并解析温度数据。
b.使用单片机的模拟/数字转换功能,将测量到的温度值转换为数字数据,并存储在单片机的内存中。
c.编写控制算法,根据所需的温度范围和精度,设置控制电路的工作状态。
这可以通过设置GPIO口的电平来实现。
d.设置一个循环,不断读取温度传感器的数据,与目标温度进行比较,并根据需要,调节控制电路的工作状态以实现温度控制。
3.系统测试:b.测试传感器的功能,确保能够准确读取到温度值。
c.设置一个合适的目标温度,并观察控制电路的工作状态,以确保能够实现温度控制。
d.通过改变目标温度,并观察系统的响应,调整控制算法,以优化温度控制的性能。
基于单片机温度控制系统的设计主要依赖于DS18B20温度传感器和单片机的硬件和软件设计。
通过适当地设计传感器和控制电路,以及编写合适的控制算法,可以实现对环境温度的精确控制。
设计完成后,可以应用于各种需要温度控制的场景,如恒温箱、温室等。
单片机DS18B20数字温度计课程设计报告

通信工程学院课程设计任务书题目DS18B20数字温度计设计课程名称单片机原理及应用B专业班级学生姓名学号设计地点指导教师设计起止时间:年月日至年月日目录一、绪论 (2)1.1 设计目的 (2)1.2设计内容 (2)1.3设计要求 (2)二、基本设计 (3)2.1 基本思路 (3)2.2系统设计原理…………………………………………………………………………….,32.3系统组成 (3)三、系统硬件设计 (6)3.1系统电路接线图 (6)3.2 主系统 (6)3.3 显示电路LM016L (9)3.4 蜂鸣器报警 (10)3.5 DS18B20传感器 (10)四、系统软件设计 (14)4.1具体步骤和设计内容 (14)4.1程序流程图................................................................................................. ..1234.2源程序清单.................................................................................................... 16.五、结果验证5.1测试结果 (23)5.2仿真结果 (23)六、学习小结错误!未定义书签。
、参考文献……………………………………………………………绪论1.1 设计目的1.掌握单总线协议的基本特点及通信过程;2. 掌握数字温度传感器DS18B20的基本特点及单总线控制协议;3. 掌握单片机IO端口模拟单总线时序控制程序的编写方法;4.掌握LCD液晶显示器的显示驱动方法。
1.2设计内容(1)基本内容:在nKDE51单片机实验教学系统上,利用DS18B20数字温度传感器连续测试环境温度,对测试数据进行处理计算,在RT-1602字符点阵LCD上实时显示环境温度值;(2)附加内容:实现环境温度越限告警功能。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《单片机原理及应用》课程设计报告题目:温度控制器电路专业:电子信息工程年级: 2010级学号: ********** 学生姓名: ******* 联系电话: ************ 指导老师: *******完成日期:2013年5月30摘要随着时代的进步和发展,温度的测试已经影响到我们的生活、工作、科研、各个领域,已经成为了一种非常重要的事情,因此设计一个温度测试的系统势在必行。
本文主要介绍了一个基于AT89C52单片机的数字温度报警器系统。
详细描述了利用数字温度传感器DS18B20开发测温系统的过程,重点对传感器在单片机下的硬件连接,软件编程以及各模块系统流程进行了详尽分析,对各部分的电路也一一进行了介绍,该系统可以方便的实现温度的采集和报警,并可以根据需要任意上下限报警温度,它使用起来相当方便,具有量程宽、体积小、功耗低等优点,适合于我们日常生活和工、农业生产中的温度测量,也可以当做温度处理模块潜入其他系统中,作为其他主系统的辅助扩展。
DS18B20与AT89C52结合实现最简温度报警系统,该系统结构简单,有广泛的应用前景。
关键词:单片机;温度检测;AT89C52;DS18B20;ABSTRACTWith the era of progress and development, the temperature test has affected our life, work, scientific research, each domain, has become a very important thing, be imperative system so the design of a temperature test.This paper introduces a digital temperature alarm system based on AT89C52 mcu. Detailed description of the process of digital temperature sensor DS18B20 temperature measurement system development, focusing on the sensor under the SCM hardware connection, software programming and system flow of each module are analyzed in detail, on the part of the circuit are one one are introduced, the system can facilitate the realization of temperature acquisition and alarm, and can according to need any alarm temperature, it is very convenient to use, has a wide range, small volume, low power consumption, suitable for our daily lives and industrial, agricultural production in the temperature measurement, can also be used as a temperature processing module into other systems, as other auxiliary system. DS18B20 combined with AT89C52 to achieve the most simple temperature alarm system, the system is simple in structure, has the widespread application prospect.Key word.Single chip microcomputer; temperature detection; AT89C52; DS18B20;目录摘要 (I)ABSTRACT........................................................... I I 1 设计要求及方案选择 (1)1.1设计要求 (1)1.2方案选择 (1)2 理论分析与设计 (1)2.1 芯片介绍 (1)2..1.1 DS18B20概述 (1)2.1.2 STC89C52介绍 (2)2.2系统结构框图 (3)2.3程序原理叙述 (3)3.电路设计 (3)3.1硬件设计 (3)3.1.1报警模块 (4)3.1.2单片机最小系统电路 (4)3.1.3温度采集模块 (5)3.2软件设计 (5)3.2.1流程框图 (6)3.2.2程序设计 (6)4、系统测试 (15)5、总结 (16).参考文献 (17)1 设计要求及方案选择1.1设计要求1制作完成温度检测系统2温度检测精度1度3温度控制在一定范围内,超出温度设定范围是报警(声光显示)4将学号和姓名打印在铜板上1.2方案选择方案一:采用热敏电阻,热敏电阻精度、重复性、可靠性较差,对于检测1摄氏度的信号是不适用的,在温度测量系统中,也常采用单片温度传感器,比如AD590,LM35等。
但这些芯片输出的都是模拟信号,必须经过A/D转换后才能送给计算机,这样就使测温系统的硬件结构较复杂。
要用到复杂的算法,一定程度上也增加了软件实现的难度。
方案二:采用单总线数字温度传感器DS18B20测量温度,直接输出数字信号。
便于单片机处理及控制,节省硬件电路。
且该芯片的物理化学性很稳定,此元件线形性能好,在0—100摄氏度时,最大线形偏差小于1摄氏度。
DS18B20的最大特点之一采用了单总线的数据传输,由数字温度计DS18B20和微控制器STC89C52构成的温度装置,它直接输出温度的数字信号到微控制器。
每只DS18B20具有一个独有的不可修改的64位序列号,根据序列号可访问不同的器件。
综上分析,我们选用第二种方案。
2 理论分析与设计2.1 芯片介绍2..1.1 DS18B20概述DS18B20是Dallas公司继DS1820后推出的一种改进型智能数字温度传感器,与传统的热敏电阻相比,只需一根线就能直接读出被测温度值,并可根据实际需求来编程实现9~12位数字值的读数方式。
DS18B20封装形式及引脚功能图2-1-1 DS18B20封装形式和引脚功能如图2-1-1所示,DS18B20的外形如一只三极管,引脚名称及作用如下:GND:接地端。
DQ:数据输入/输出脚,与TTL电平兼容。
VDD:可接电源,也可接地。
因为每只DS18B20都可以设置成两种供电方式,即数据总线供电方式和外部供电方式。
采用数据总线供电方式时VDD接地,可以节省一根传输线,但完成数据测量的时间较长;采用外部供电方式则VDD接+5V,多用一根导线,但测量速度较快2.1.2 STC89C52介绍STC89C52是一种低功耗、高性能CMOS 8位微控制器,具有8K在系统可编程Flash 存储器。
使用宏晶科技公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。
片上Flash允许程序存储器在系统可编程,亦适于常规编程器。
在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
由于此单片机应用在仓库温湿度检测上,所以本设计选用了低功耗、高性能、低价格。
小管脚(40脚)的STC89C52单片机。
如图2-1-2所示:图2-1-2 STC89C52单片机2.2系统结构框图系统主要包括数据采集模块,单片机控制模块,显示模块和温度设置模块,驱动电路五个部分。
系统框图如图2-2-1 所示。
图2-2-1系统结构款图2.3程序原理叙述其中温度采集模块负责利用DS18B20传感器实时采集温度数据,并将采集到的温度数据传输到单片机控制模块,单片机控制模块将检测到的数据进行处理后送到LCD 显示模块进行显示,同时将数据与系统默认的温度上限32°C 进行比较,如果检测到的温度超过32°C 或低于20°C ,就将发光二级管点亮进行报警。
3.电路设计3.1硬件设计3.1.1报警模块报警电路用一个三极管驱动一只蜂鸣器组成,驱动信号由芯片的管脚RD/P3.7控制。
当显示的温度不在设定的温度范围内,即不在TL与TH之间则驱动蜂鸣器发声报警,其电路如图3-1-1所示。
图3-1-1 报警电路3.1.2单片机最小系统电路在课题设计的温度控制系统设计中,控制核心是STC89C52单片机,该单片机为51系列增强型8位单片机,它有32个I/O口,片内含4K FLASH工艺的序存储器,便于用电的方式瞬间擦除和改写,而且价格便宜,其外部晶振为12M 一个指令周期为1μS。
使用该单片机完全可以完成设计任务,其最小系统主包括:复位电路、震荡电路以及存储器选择模式,如图3-2-1所示图3-1-2单片机最小电路3.1.3温度采集模块在硬件完成后,为了使作品能够实现预定的功能和效果,因此需要对环境温度进行采集.在本设计中采用外部供电方式实现DS18B20传感器与单片机的连接如图3-1-3所示.图3-1-3温度传感器接口3.2软件设计3.2.1流程框图图3-2-1程序流程框图3.2.2程序设计#include<reg52.h>#define uchar unsigned char #define uint unsigned intuchar i;sbit lcdrs=P2^5;sbit lcdrw=P2^6;sbit lcden=P2^7;sbit d1=P1^3;sbit d2=P1^4;uchar code t0[]="Nou temp is C ";uchar code t1[]="Make by teng bo ";uchar code wendu[]="0123456789"; //利用一个温度表解决温度显示乱码sbit DQ = P3^6;//定义ds18B20总线IOsbit beep=P3^7;//蜂鸣器//液晶显示模块void delay(uint z){uint x,y;for(x=100;x>1;x--)for(y=z;y>1;y--);}void write_com(uchar com){lcdrs=0;P0=com;delay(5);lcden=1;delay(5);lcden=0;}void write_date(uchar date) {lcdrs=1;P0=date;delay(5);lcden=1;delay(5);lcden=0;}void init_lcd(){lcden=0;lcdrw=0;write_com(0x38);write_com(0x01);write_com(0x0c);write_com(0x06);write_com(0x80);for(i=0;i<16;i++){write_date(t0[i]);delay(0);}write_com(0x80+0x40);for(i=0;i<16;i++){write_date(t1[i]);delay(0);}}//温度采集模块void tmpDelay(int num)//延时函数{while(num--) ;}/******************************************************************** **********/void Init_DS18B20()//初始化ds1820{unsigned char x=0;DQ = 1; //DQ复位tmpDelay(8); //稍做延时DQ = 0; //单片机将DQ拉低tmpDelay(80); //精确延时大于 480usDQ = 1; //拉高总线tmpDelay(14);x=DQ; //稍做延时后如果x=0则初始化成功 x=1则初始化失败tmpDelay(20);}unsigned char ReadOneChar()//读一个字节{unsigned char i=0;unsigned char dat = 0;for (i=8;i>0;i--){DQ = 0; // 给脉冲信号dat>>=1;DQ = 1; // 给脉冲信号if(DQ)dat|=0x80;tmpDelay(4);}return(dat);}void WriteOneChar(unsigned char dat)//写一个字节{unsigned char i=0;for (i=8; i>0; i--){DQ = 0;DQ = dat&0x01;tmpDelay(5);DQ = 1;dat>>=1;}}unsigned int Readtemp()//读取温度{unsigned char a=0;unsigned char b=0;unsigned int t=0;float tt=0;Init_DS18B20();WriteOneChar(0xCC); // 跳过读序号列号的操作WriteOneChar(0x44); // 启动温度转换Init_DS18B20();WriteOneChar(0xCC); //跳过读序号列号的操作WriteOneChar(0xBE); //读取温度寄存器a=ReadOneChar(); //连续读两个字节数据 //读低8位b=ReadOneChar(); //读高8位t=b;t<<=8;t=t|a; //两字节合成一个整型变量。