DS18B20温度采集系统
单总线温度传感器DS18B20简介
单总线温度传感器DS18B20简介DS18B20是DALLAS公司生产的单总线式数字温度传感器,它具有微型化、低功耗、高性能、搞干扰能力强、易配处理器等优点,特别适用于构成多点温度测控系统,可直接将温度转化成串行数字信号(提供9位二进制数字)给单片机处理,且在同一总线上可以挂接多个传感器芯片。
它具有3引脚TO-92小体积封装形式,温度测量范围为-55℃~+125℃,可编程为9位~12位A/D转换精度,测温分辨率可达0.0625℃,被测温度用符号扩展的16位数字量方式串行输出,其工作电源既可在远端引入,也可采用寄生电源方式产生,多个DS18B20可以并联到3根或2根线上,CPU只需一根端口线就能与多个DS18B20通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。
以上特点使DS18B20非常适用于远距离多点温度检测系统。
DS18B20外形及引脚说明外形及引脚如图2所示:图2 管脚排列图在TO-92和SO-8的封装中引脚有所不同,具体差别请查阅PDF手册,在TO-92封装中引脚分配如下:1(GND):地2(DQ):单线运用的数据输入输出引脚3(VDD):可选的电源引脚DS18B20工作过程及时序DS18B20内部的低温度系数振荡器是一个振荡频率随温度变化很小的振荡器,为计数器1提供一频率稳定的计数脉冲。
高温度系数振荡器是一个振荡频率对温度很敏感的振荡器,为计数器2提供一个频率随温度变化的计数脉冲。
初始时,温度寄存器被预置成-55℃,每当计数器1从预置数开始减计数到0时,温度寄存器中寄存的温度值就增加1℃,这个过程重复进行,直到计数器2计数到0时便停止。
初始时,计数器1预置的是与-55℃相对应的一个预置值。
以后计数器1每一个循环的预置数都由斜率累加器提供。
为了补偿振荡器温度特性的非线性性,斜率累加器提供的预置数也随温度相应变化。
计数器1的预置数也就是在给定温度处使温度寄存器寄存值增加1℃计数器所需要的计数个数。
DS18B20的工作原理
DS18B20的工作原理DS18B20是一款数字温度传感器,具有高精度、低功耗、数字输出等特点。
它采用了独特的1-Wire接口技术,可以通过单一的数据线进行通信和供电,非常适合在各种环境中进行温度监测和控制。
DS18B20的工作原理如下:1. 温度测量原理:DS18B20利用半导体材料的温度特性来测量温度。
它内部集成为了一个温度传感器,该传感器基于温度对硅芯片内部电压的影响进行测量。
当温度升高时,硅芯片内部的电压也会随之变化,通过测量这个变化的电压,就可以得到温度的数值。
2. 1-Wire接口技术:DS18B20采用了独特的1-Wire接口技术,这意味着它只需要一根数据线进行通信和供电。
在通信过程中,DS18B20会将温度数据转换为数字信号,并通过数据线传输给主控设备。
同时,主控设备也可以通过数据线向DS18B20发送指令,控制其工作模式和参数设置。
3. 工作电源:DS18B20可以通过1-Wire接口从主控设备获取电源,也可以通过外部提供的电源进行供电。
当通过1-Wire接口供电时,DS18B20会从数据线上提取能量,并利用内部的电源管理电路进行稳定的工作。
这种设计使得DS18B20在低功耗模式下工作,非常适适合于电池供电的应用场景。
4. 温度精度和分辨率:DS18B20具有高精度的温度测量能力,可以达到±0.5℃的精度。
同时,它还可以根据需要进行温度分辨率的设置,可选的分辨率包括9位、10位、11位和12位。
分辨率越高,测量的温度范围越小,但精度也相应提高。
5. 多个DS18B20的连接:由于DS18B20采用了1-Wire接口技术,可以通过将多个DS18B20连接在同一条数据线上,实现多个温度传感器的同时测量。
每一个DS18B20都有一个惟一的64位ROM代码,通过这个代码可以区分不同的传感器。
主控设备可以通过发送指令来选择特定的传感器进行温度测量。
总结:DS18B20是一款采用1-Wire接口的数字温度传感器,具有高精度、低功耗、数字输出等特点。
基于DS18B20的温度采集控制系统
,
如 图 2 中 的 U3
,
,
以动态方式显 示
口
显示
送 出
位 控 信 号 由 P2
【] 3
,
送 出
,
经 U2 (
图 1
总体控 制框 图
7 4 LS 2 4 4 ) 进
行信号放 大
以 产生足 够 大 的 电流驱 动数
、
码 管显 示
。
数码 管 与单 片机 的连 接 见 图 2 所示 U3
。
U2 和
这里 我们采用单 片机最小系统 图 2 所示
2 1
.
,
系统硬件 电路 图如
U 1 的连 接
。
2 4
.
电机 控 制 模块
电机 采 用 直 流 电机
,
主控 制模块
由于 系统控制方案 简单
,
如 图 2 中的 B
,
1
,
额 定 电压 5 V
.
,
数据量也不 大
’
,
考虑 到 电路
调速采用
PW M
调速方法
利用单片机
P0 1 口
,
通过软
,
的 简单 和成 本 等 因 素
3I
0ND
一 D M 7 LS 4 4 Z
P O 2
22
O D' 1 R
P I 2
.
RS v P D XTAL2
.
I ==.
} 。 。
R 1 c 1 l‘ 千 一 F 亍 { -_ _一 3 0 p
G XL N T1 A D
85 91 5
自动
匐
基于
DS 188 2 0
DS18B20智能温度控制器(附软件程序)
DS18B20智能温度控制器DALLAS最新单线数字温度传感器DS18B20简介新的“一线器件”体积更小、适用电压更宽、更经济 Dallas 半导体公司的数字化温度传感器DS1820是世界上第一片支持“一线总线”接口的温度传感器。
一线总线独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。
DS18B20、 DS1822 “一线总线”数字化温度传感器同DS1820一样,DS18B20也支持“一线总线”接口,测量温度范围为 -55°C~+125°C,在-10~+85°C范围内,精度为±0.5°C。
DS1822的精度较差为± 2°C 。
现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性。
适合于恶劣环境的现场温度测量,如:环境控制、设备或过程控制、测温类消费电子产品等。
与前一代产品不同,新的产品支持3V~5.5V 的电压范围,使系统设计更灵活、方便。
而且新一代产品更便宜,体积更小。
DS18B20、 DS1822 的特性 DS18B20可以程序设定9~12位的分辨率,精度为±0.5°C。
可选更小的封装方式,更宽的电压适用范围。
分辨率设定,及用户设定的报警温度存储在EEPROM中,掉电后依然保存。
DS18B20的性能是新一代产品中最好的!性能价格比也非常出色! DS1822与 DS18B20软件兼容,是DS18B20的简化版本。
省略了存储用户定义报警温度、分辨率参数的EEPROM,精度降低为±2°C,适用于对性能要求不高,成本控制严格的应用,是经济型产品。
继“一线总线”的早期产品后,DS1820开辟了温度传感器技术的新概念。
DS18B20和DS1822使电压、特性及封装有更多的选择,让我们可以构建适合自己的经济的测温系统。
DS18B20的内部结构DS18B20内部结构主要由四部分组成:64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。
DS18B20温度数据采集系统
目录摘要 (2)一、绪论 (3)二、系统方案实现 (3)2.1.设计要求 (3)2.2.设计方案论证 (3)2.3.总体设计框图 (4)三、主要硬件介绍 (4)3. 1.DS18B20 (4)3.1.1 DS18B20的主要特性 (4)3.1.2 DS18B20的外形和内部结构 (5)3.1.3 DS18B20工作原理 (6)3.1.4 高速暂存存储器 (7)3.2 AT89C51 (8)四、软件介绍 (9)4.1 功能概述 (9)4.2 系统软件流程图 (9)4.2.1程序 (9)4.2.2读出温度子程序 (10)4.2.3温度转换命令子程序 (11)4.3具体程序 (11)五、总结 (17)六、设计体会及今后的改进意见 (17)参考文献 (18)摘要本文基于DS18B20设计了一种温度数据采集系统,系统主要由AT89C51单片机,一个DS18B20 数字温度传感器以及一个液晶数码管构成。
软件方面,我们采用keil。
软件对程序进行编写以及调试,硬件方面,我们通过Proteus软件对硬件电路进行仿真以及测试,该系统结构简单,功耗较低,测温范围为- 50℃~ + 255℃。
现场温度直接以"一线总线"的数字方式传输,大大提高了系统的抗干扰性。
适合于恶劣环境的现场温度测量。
该系统硬件分为3部分:DS18B20 温度测量模块、单片机模块、显示模块。
关键词:DS18B20、7SEG-MPX4液晶数码管、AT89C51一、绪论在工业生产中,电流、电压、温度、压力、流量、流速和开关量都是常用的主要被控参数。
其中,温度控制也越来越重要。
在工业生产的很多领域中,人们都需要对各类加热炉、热处理炉、反应炉和锅炉中的温度进行检测和控制。
采用单片机对温度进行控制不仅具有控制方便、简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标,从而大大提高产品的质量和数量。
因此,单片机对温度的控制问题是工业生产中经常会遇到的控制问题。
DS18B20温度采集系统
1. MCS-51单片机的引脚图:
2. MCS-51单片机的内部结构图:
(1)电源引脚Vcc和Vss Vcc(40脚):电源端,+5伏 Vss(20脚):接地端
(2)时钟电路引脚XTAL1和XTAL2 XTAL1(18脚)和XTAL2(19脚):接外部晶体和微调晶体。在 89C51中,它们分别是震荡电路反向放大器的输入端和输出端, 震荡电路的频率就是晶体固有频率。 (3). 控制引脚信号RST,ALE,PSEN和EA RST/VpD(9脚):RST是复位信号输入端,高电平有效。此引 脚的第二功能是VpD,即备用电源的输入端。 ALE/PROG(ADDRESS LATCHENABLE/PROGRAMMING (30脚):地址锁存允许信号端。上电后,此端不断向外输出正脉 冲信号,此频率为振荡频率fosc的1/6。CPU访问片外存储器时, ALE输出信号作为所存低八位地址的控制信号。
P3口线的第二功能入下表所示
口 线 替代的第二功能
P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7
RXD(串行口输入) TXD(串行口输出) INT0(外部中断0输入) INT1(外部中断1输入) T0(定时器0的外部输入) T1(定时器1的外部输入) WR(片外数据存储器“写选通控制”输出) RD(片外数据存储器“读选通控制”输出)
DS18B20温度数据表
(3). 高速缓存器
DS18B20温度传感器的内部存储器包括一个高速暂存 RAM和一个非易失性的可电擦除的EEPRAM,后者存放高温度 TH、低温度触发器TL和配置寄存器中的信息。 高速暂存器RAM是一个连续8字节的存储器,前两个字节 是测得的温度信息,第1个字节的内容是温度的低8位,第2个 字节是温度的高8位。第3个和第4个字节是高温触发器TH、低 温触发器TL的易失性复制,第5个字节是配置寄存器的易失性 复制,以上字节的内容在每一次上电复位时被刷新。第6、7、 8个字节用于暂时保留为1。
DS18B20多点温度检测系统的设计
目录摘要2 ABSTRACT 3 第一章绪论4 §1.1 系统背景4 §1.2 系统概述4 第二章方案论证5 §2.1 传感器部分5 §2.2 主控制部分6 §2.3 系统方案6 第三章硬件电路设计7 §3.1 电源以及看门狗电路7 §3.2 键盘以及显示电路9 §3.2 温度测试电路11 §3.3 串口通讯电路15 §3.4 整体电路16 第四章软件设计16 §4.1 概述16 §4.2 主程序方案16 §4.3 各模块子程序设计18 第五章系统调试20 §5.1 分步调试20 §5.2 统一调试20 结束语21 参考文献22 附录一:软件流程图24 附录二:电路原理图25 致谢27多点温度检测系统设计作者:谭诗炜(电信200201 班)指导老师:冯杰摘要DS18B20 是一种可组网的高精度数字式温度传感器,由于其具有单总线的独特优点,可以使用户轻松地组建起传感器网络,并可使多点温度测量电路变得简单、可靠.本文结合实际使用经验,介绍了DS18B20 数字温度传感器在单片机下的硬件连接及软件编程,并给出了软件流程图.该系统由上位机和下位机两大部分组成.下位机实现温度的检测并提供标准RS232 通信接口芯片使用了ATMEL 公司的AT89C51 单片机和DALLAS 公司的DS18B20 数字温度传感器上位机部分使用了通用PC.该系统可应用于仓库测温、楼宇空调控制和生产过程监控等领域关键字:温度测量;单总线;数字温度传感器;单片机AbstractAs a kind of high-accuracy digital net temperature sensor,DS18 B20 can be used building a sensor net easily. It can also make the net simple and reliable with it's special 1-wire interface .This paper introduces the application of DS18B20 with single chip processor.The system is constituted by two parts the temperature measured part and displayed part. The temperature measured part has a RS232 interface. It used AT89C51 of ATMEL company and DS18B20 of DALLAS company .The displayed part uses PC .This system is applied in such domains as warehouse detecting temperature;air-conditioner controlling system in building and supervisory productive process etc.Key words:temperature measure;single bus;digital thermometer;single chip processor;第一章绪论§1.1 系统背景在工、农业生产和日常生活中,对温度的测量及控制占据着极其重要地位.首先让我们了解一下多点温度检测系统在各个方面的应用领域:消防电气的非破坏性温度检测,电力、电讯设备之过热故障预知检测,空调系统的温度检测,各类运输工具之组件的过热检测,保全与监视系统之应用,医疗与健诊的温度测试,化工、机械…等设备温度过热检测•温度检测系统应用十分广阔.§1.2 系统概述本设计运用主从分布式思想,由一台上位机(PC 微型计算机),下位机(单片机)多点温度数据采集,组成两级分布式多点温度测量的巡回检测系统.该系统采用RS-232 串行通讯标准,通过上位机(PC)控制下位机(单片机)进行现场温度采集•温度值既可以送回主控PC进行数据处理由显示器显示.也可以由下位机单独工作,实时显示当前各点的温度值,对各点进行控制. 下位机采用的是单片机基于数字温度传感器DS18B20 的系统.DS18B20 利用单总线的特点可以方便的实现多点温度的测量,轻松的组建传感器网络,系统的抗干扰性好、设计灵活、方便而且适合于在恶劣的环境下进行现场温度测量.本系统可以应用在大型工业及民用常温多点监测场合.如粮食仓储系统、楼宇自动化系统、温控制程生产线之温度影像检测、医疗与健诊的温度测试、空调系统的温度检测、石化、机械…等•第二章方案论证温度检测系统有则共同的特点:测量点多、环境复杂、布线分散、现场离监控室远等.若采用一般温度传感器采集温度信号,则需要设计信号调理电路、A/D 转换及相应的接口电路,才能把传感器输出的模拟信号转换成数字信号送到计算机去处理.这样,由于各种因素会造成检测系统较大的偏差;又因为检测环境复杂、测量点多、信号传输距离远及各种干扰的影响,会使检测系统的稳定性和可靠性下降.所以多点温度检测系统的设计的关键在于两部分:温度传感器的选择和主控单元的设计.温度传感器应用范围广泛、使用数量庞大,也高居各类传感器之首.§2.1 传感器部分采用热敏电阻,可满足40 摄氏度至90摄氏度测量范围,但热敏电阻精度、重复性、可靠性较差,对于检测1 摄氏度的信号是不适用的.而且在温度测量系统中,采用单片温度传感器,比如AD590,LM35 等.但这些芯片输出的都是模拟信号,必须经过A/D 转换后才能送给计算机,这样就使得测温装置的结构较复杂.另外,这种测温装置的一根线上只能挂一个传感器,不能进行多点测量.即使能实现,也要用到复杂的算法,一定程度上也增加了软件实现的难度.方案二:在多点测温系统中,传统的测温方法是将模拟信号远距离采样进行AD 转换,而为了获得较高的测温精度,就必须采用措施解决由长线传输,多点测量切换及放大电路零点漂移等造成的误差补偿问题.采用数字温度芯片DS18B20 测量温度,输出信号全数字化.便于单片机处理及控制,省去传统的测温方法的很多外围电路.且该芯片的物理化学性很稳定,它能用做工业测温元件,此元件线形较好.在0—100 摄氏度时,最大线形偏差小于1摄氏度.DS18B20 的最大特点之一采用了单总线的数据传输,由数字温度计DS1820 和微控制器AT89C51 构成的温度测量装置,它直接输出温度的数字信号,可直接与计算机连接.这样,测温系统的结构就比较简单,体积也不大且由于AT89C51可以带多个DSB1820,因此可以非常容易实现多点测量•轻松的组建传感器网络.采用温度芯片DS18B20 测量温度,可以体现系统芯片化这个趋势•部分功能电路的集成,使总体电路更简洁,搭建电路和焊接电路时更快•而且,集成块的使用,有效地避免外界的干扰,提高测量电路的精确度.所以集成芯片的使用将成为电路发展的一种趋势.本方案应用这一温度芯片,也是顺应这一趋势.§2.2 主控制部分此方案采用PC机实现.它可在线编程,可在线仿真的功能,这让调试变得方便•且人机交互友好但是PC机输出信号不能直接与DS18B20通信•需要通过RS232电平转换兼容,硬件的合成在线调试,较为繁琐,很不简便.而且在一些环境比较恶劣的场合,PC 机的体积大,携带安装不方便,性能不稳定,给工程带来很多麻烦!此方案采用AT89C51 八位单片机实现•单片机软件编程的自由度大,可通过编程实现各种各样的算术算法和逻辑控制•而且体积小,硬件实现简单,安装方便•既可以单独对多DS18B20 控制工作,还可以与PC 机通信•运用主从分布式思想,由一台上位机(PC 微型计算机),下位机(单片机)多点温度数据采集,组成两级分布式多点温度测量的巡回检测系统,实现远程控制•另外AT89C51 在工业控制上也有着广泛的应用,编程技术及外围功能电路的配合使用都很成熟•§•3系统方案综上所述,温度传感器以及主控部分都采用第二方案•系统采用针对传统温度测温系统测温点少,系统兼容性及扩展性较差的特点,运用分布式通讯的思想•设计一种可以用于大规模多点温度测量的巡回检测系统•该系统采用的是RS-232 串行通讯的标准,通过下位机(单片机)进行现场的温度采集,温度数据既可以由下位机模块实时显示,也可以送回上位机进行数据处理,具有巡检速度快,扩展性好,成本低的特点•实际采用电路方案如下图:第三章硬件电路设计系统底层电路的功能主要包括:多点温度测试及其相关处理,实时显示温度信息,与上位机通讯传输温度数据•硬件设计主要包括以下几个模块:电源以及看门狗电路,键盘以及显示电路,温度测试电路,串口通讯电路•下面对电路分模块进行说明§3.1电源以及看门狗电路a. 电源电路因为单片机工作电源为+5V,且底层电路功耗很小•采用7805三端稳压片即可满足要求• 具体电路图如下:b. 看门狗电路考虑到底层电路板的工作环境相对恶劣,单片机会受到周围环境的干扰,而出现程序跑飞,死机…等一些不可预知的不正常工作现象•工作人员也不可能到现场对单片机重起,本设计为单片机电路添加一个外部看门狗电路•定时查询单片机的工作状态,一但发现异常即对单片机延时重起•保证系统安全可靠的运行•NE56604能为多种微处理器和逻辑系统提供复位信号,其门限电平为4.2V •在电源突然掉电或电源电压下降到低于门限电平时.NE56604将产生精确的复位信号.NE56604内置一个看门狗定时器,用于监控微处理器,以确保微处理器的正常运行•看门狗能产生一个系统复位信号用来终止任何由于微处理器故障而引发的不正常的系统操作.NE56604 的看门狗的监控周期为100mS(典型值).特性.正负双逻辑输出的有效复位信号..精准的门限电平监测..上电复位内部延时..可利用外部电阻调节的内部看门狗定时器..看门狗定时器的监控周期为100mS 典型值..VCC=0.8VDC 时产生有效的复位信号典型值. .仅需很少的外围元件.具体电路图如下:§3.2 键盘以及显示电路键盘电路单片机应用系统中除了复位按键有专门的复位电路,以及专一的复位功能外,其它的按键或键盘都是以开关状态来设置控制功能或输入数据.键盘有编码和非编码两种.非编码键盘硬件电路极为简单.故本系统采用拨码开关来控制.具体电路如下:A. 开关状态的可靠输入键开关状态的可靠输入有两种解决方法.一种是软件去抖动:它是在检测到有键按下时,执行一个10ms 的延时程序后,再确认该键电平是否仍保持闭合状态电平,如保持闭合状态电平则确认为真正键按下状态,从而消除了抖动影响.另一种为硬件去抖动:即为按键添加一个锁存器.两种方法都简单易行,本设计采用的是硬件去抖.B. 对按键进行编码给定键值或给出键号对于按键无论有无编码,以及采用什么编码,最后都要转换成为与累加器中数值相对应的键值以实现按键功能程序的散转转移.为使编码间隔小, 散转入口地址安排方便, 常采用依次序排列的键号.拨码开关值含义0000 实时显示通道一的温度值0001 实时显示通道二的温度值0010 实时显示通道三的温度值0011 实时显示通道四的温度值0100 实时显示通道五的温度值0101 实时显示通道六的温度值0110 实时显示通道七的温度值0111 实时显示通道八的温度值1*** 自动循环显示所有通道的温度C. 选择键盘监测方法对是否有键按下的信息输入方式有中断方式与查询方式两种.本设计采用的查询法,即在在CPU 空闲时调用键盘扫描子程序.温度显示电路设计采用的是共阴极七段数码管.显示方式有动态扫描和静态显示,两种方法在本设计中皆可由于静态扫描要用到多片串入并出芯片,考虑到电路板成本计算.本人采用是节约硬件资源的动态扫描方式.即用两块芯片就可以完成显示功能.显示数据由4511 译码器输出,ULN2003 为位驱动扫描信号.具体电路图如下:§3.2 温度测试电路这里我们用到温度芯片DS18B20.DS18B20 是DALLAS 公司生产的一线式数字温度传感器, 具有3引脚TO-92小体积封装形式•测温分辨率可达0.0625C,被测温度用符号扩展的16位数字量方式串行输出.其工作电源既可在远端引入,也可采用寄生电源方式产生.CPU 只需一根端口线就能与诸多DS18B20 通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路•DS18B20支持一线总线”接口,测量温度范围为-55 C~+125°C,在-10~+85 °范围内精度为±).5 °现场温度直接以一线总线”的数字方式传输,大大提高了系统的抗干扰性•适合于恶劣环境的现场温度测量,如:环境控制、设备或过程控制、测温类消费电子产品等•DS18B20 内部结构(1) DS18B20 的内部结构如下图所示•DS18B20 内部结构图DS18B20 有4 个主要的数据部件:①64位激光ROM.64位激光ROM从高位到低位依次为8位CRC、48位序列号和8位家族代码(28H) 组成•②温度灵敏元件•③非易失性温度报警触发器TH和TL.可通过软件写入用户报警上下限值.④配置寄存器•配置寄存器为高速暂存存储器中的第五个字节•DS18B20 在0 工作时按此寄存器中的分辨率将温度转换成相应精度的数值,其各位定义如图所示•TM R1 R0 1 1 1 1 1MSB DS18B20 配置寄存器结构图LSB其中,TM:测试模式标志位,出厂时被写入0,不能改变;R0、R1:温度计分辨率设置位,其对应四种分辨率如下表所列,出厂时R0、R1置为缺省值:R0=1,R仁1(即12位分辨率),用户可根据需要改写配置寄存器以获得合适的分辨率• 配置寄存器与分辨率关系表:R0 R1 温度计分辨率/bit 最大转换时间/us0 0 9 93.750 1 10 187.51 0 11 3751 1 12 750(2) 高速暂存存储器高速暂存存储器由9个字节组成,其分配如下图所示.当温度转换命令发布后,经转换所得的温度值以二字节补码形式存放在高速暂存存储器的第0 和第1 个字节.单片机可通过单线接口读到该数据,读取时低位在前,高位在后,数据格式如图所示.对应的温度计算:当符号位S=0时, 直接将二进制位转换为十进制;当S=1 时,先将补码变为原码,再计算十进制值.温度低位温度高位TH TL 配置保留保留保留8 位CRCLSB DS18B20 存储器映像图MSB温度值格式图DS18B20 温度数据表:23 22 21 20 2-1 2-2 2-3 2-4MSB LSBS S S S S 26 25 24典型对应的温度值表:温度/c二进制表示十六进制表示+125+25.0625+10.125+0.5-0.5-10.125-25.0625-55 00000111 1101000000000001 1001000100000000 1010001000000000 0000100000000000 0000000011111111 1111100011111111 0101111011111110 0110111111111100 10010000 07D0H0191H00A2H0008H0000HFFF8HFF5EHFE6FHFC90HDS18B20 最大的特点是单总线数据传输方式,DS18B20 的数据I/O 均由同一条线来完成. 硬件连接电路如下图:本系统为多点温度测试.DS18B20 采用外部供电方式,理论上可以在一根数据总线上挂256 个DS18B20, 但时间应用中发现,如果挂接25 个以上的DS18B20 仍旧有可能产生功耗问题.另外单总线长度也不宜超过80M, 否则也会影响到数据的传输.在这种情况下我们可以采用分组的方式,用单片机的多个I/O 来驱动多路DS18B20. 在实际应用中还可以使用一个MOSFET 将I/O 口线直接和电源相连,起到上拉的作用.对DS18B20 的设计, 需要注意以下问题(1) 对硬件结构简单的单线数字温度传感器DS18B20 进行操作,需要用较为复杂的程序完成.编制程序时必须严格按芯片数据手册提供的有关操作顺序进行,读、写时间片程序要严格按要求编写.尤其在使用DS18B20 的高测温分辨力时,对时序及电气特性参数要求更高.(2) 有多个测温点时,应考虑系统能实现传感器出错自动指示,进行自动DS18B20 序列号和自动排序,以减少调试和维护工作量.(3) 测温电缆线建议采用屏蔽4 芯双绞线,其中一对线接地线与信号线,另一组接VCC 和地线, 屏蔽层在源端单点接地.DS18B20 在三线制应用时,应将其三线焊接牢固;在两线应用时,应将VCC与GND 接在一起,焊接牢固若VCC脱开未接传感器只送85.0 C的温度值.⑷实际应用时,要注意单线的驱动能力,不能挂接过多的DS18B20,同时还应注意最远接线距离.另外还应根据实际情况选择其接线拓扑结构.§3.3 串口通讯电路AT89C51 有一个全双工的串行通讯口,所以单片机和电脑之间可以方便地进行串口通讯.进行串行通讯时要满足一定的条件,比如电脑的串口是RS232 电平的,而单片机的串口是TTL 电平的,两者之间必须有一个电平转换电路,我们采用了专用芯片MAX232 进行转换,虽然也可以用几个三极管进行模拟转换,但是还是用专用芯片更简单可靠.具体电路如下:我们采用了三线制连接串口,也就是说和电脑的9 针串口只连接其中的3 根线:第5 脚的GND 、第2 脚的RXD 、第3 脚的TXD. 这是最简单的连接方法,但是对本设计来说已经足够使用了,电路如上图所示.通信线采用交叉接法,即两者信号线对应成为R—T,T—R. 具体连接电路如下:§3.4 整体电路见附件二(电路原理图)第四章软件设计§4.1 概述整个系统的功能是由硬件电路配合软件来实现的,当硬件基本定型后,软件的功能也就基本定下来了.从软件的功能不同可分为两大类:一是监控软件(主程序),它是整个控制系统的核心专门用来协调各执行模块和操作者的关系.二是执行软件(子程序),它是用来完成各种实质性的功能如测量、计算、显示、通讯等.每一个执行软件也就是一个小的功能执行模块.这里将各执行模块一一列出,并为每一个执行模块进行功能定义和接口定义.各执行模块规划好后就可以规划监控程序了.首先要根据系统的总体功能和键盘设置选择一种最合适的监控程序结构,然后根据实时性的要求,合理地安排监控软件和各执行模块之间地调度关系.§4.2 主程序方案主程序调用了 4 个子程序,分别是数码管显示程序、键盘扫描以及按键处理程序、温度测试程序、中断控制程序、单片机与PC机串口通讯程序.键盘扫描电路及按键处理程序:实现键盘的输入按键的识别及相关处理温度测试程序: 对温度芯片送过来的数据进行处理,进行判断和显示数码管显示程序:向数码的显示送数,控制系统的显示部分. 中断控制程序: 实现循环显示功能.串口通讯程序:实现PC 机与单片机通讯,将温度数据传送给PC 机.将各个功能程序以子程序的形式写好,当写主程序的时候,只需要调用子程序,然后在寄存器的分配上作一下调整,消除寄存器冲突和I/O 冲突即可.程序应该尽可能多的使用调用指令代替跳转指令.因为跳转指令使得程序难以看懂各程序段之间的结构关系.而调用指令则不同,调用指令使得程序结构清晰,无论是修改还是维护都比较方便.将功能程序段写成子程序的形式,除了方便调用之外,还有一个好处那就是以后写程序的时候如果要用到, 就可以直接调用这个单元功能模块.主程序流程图如右图:§4.3 各模块子程序设计下面对主要几个子程序的流程图做介绍:(1) 温度测试子程序设计见附录一:温度测试子程序流程图(2) 中断控制程序设计如右图:(3) 串口通信程序设计本次通讯中,测控系统分位上位机和下位机之间的通信,系统中单片机负责数据采集、处理和控制,上位机进行现场可视化检测,通信协议采用半双工异步串行通信方式,通过RS232 的RTS 信号进行收发转换,传输数据采用二进制数据,上位机与下位机之间采用主从式通讯.本人采用的VB环境下PC机与单片机之间实现串行通讯的软硬件方案.VB是Microsoft公司推出的Windows 应用程序开发工具,因其具有界面友好,编程简便等优点而受到广泛的使用,而且Visual Basic 6.0 版本带有专门实现串行通讯的MSCOMM 控件.MSComm控件串口具有完善的串口数据的发送和接收功能•通过此控件,PC机可以利用串行口与其它设备实现轻松连接,简单高效地实现设备之间的通讯.此控件的事件响应有两种处理方式.事件驱动方式:由MSComm 控件的OnComm 事件捕获并处理通讯错误及事件;查询方式:通过检查CommEvent 属性的值来判断事件和错误.1) MSComm 控件的主要属性和方法a. CommPort:设置或返回串行端口号,其取值范围为1—99,缺省为1b. Sett ing:设置或返回串行端口的波特率、奇偶校验位、数据位数、停止位c. PortOpe n:打开或关闭串行端口d. RThreshold: 该属性为一阀值,它确定当接收缓冲区内字节个数达到或超过该值后就产生MSComml-OnComm 事件.e. In put :从接收缓冲区移走一串字符.f. Output: 向发送缓冲区传送一字符串. 软件流程图如下:单片机程序流程图PC 通讯程序流程图参数设定:通信端口选择COM1,波特率设定为1200B/SmPort=1MSComm.Setting= “1200, n, 8, 1 ”.START: MOV SP,#60HMOV TMOD,#20HMOV TH1,#0E6HMOV TL1,#0E6H ;1200B/S,晶振为12MHZMOV PCON,#00HMOV SCON,#50HSETB TR1第五章系统调试§5.1 分步调试1 、测试环境及工具测试温度:0~100摄氏度.(模拟多点不同温度值环境)测试仪器及软件:数字万用表,温度计0~100 摄氏度,串口调试助手测试方法:目测.2、测试方法使系统运行,观察系统硬件检测是否正常(包括单片机最小系统,键盘电路,显示电路,温度测试电路等).系统自带测试表格数据,观察显示数据是否相符合即可. 采用温度传感器和温度计同时测量多点水温变化情况(取温度值不同的多点), 目测显示电路是否正常.并记录各点温度值,与实际温度值比较,得出系统的温度指标. 使用串口调试助手与单片机通讯,观察单片机与串口之间传输数据正确否.3、测试结果分析自检正常,各点温度显示正常,串口传输数据正确.因为芯片是塑料封装,所以对温度的感应灵敏度不是相当高,需要一个很短的时间才能达到稳定.§5.2 统一调试将硬件及软件结合起来进行系统的统一调试.实现PC 机与单片机通讯,两者可以实时更新显示各点温度值.结束语AT89C51的时钟为12M,I/O 口可达32个,高的时钟频率和丰富的I/O,都为实现电路功能提供了非常有利的条件.同时也AT89C51 内含4KB FLASH ROM, 开发环境友好,易用,方便,大大加快本系统设计开发.拨码开关的使用,使操作更为简洁,易懂.实时显示电路的设计,使温度信息更迅速,直观地发布.本制作的设计中使用了传感器的只是插座电路,因此,该系统的可扩展性很强.整个系统硬件简单、可靠,系统成本低.致此本人设计基本完成了预期的目标,系统在硬件自动测试,键盘操作,实时显示方面做的比较好.但是由于时间仓促、条件有限,设计成果并不是很完美,还存在下面问题:串口通讯不稳定未对温度数值统计处理以及存储.我准备在今后的工作过程中进一步完善此设计.参考文献[1] .贾振国.DS1820及高精度温度测量的实现[J].电子技术应用,2000(1):58 - 59.[2] . 余永权. 单片机原理及应用. 北京:电子工业出版社, 1997[3] . 邦田. 电子电路实用抗干扰技术. 北京: 人民邮电出版社,1994[4] . Dallas semiconductor inc,ds18b20 programmable resolution 1 —wiredigital thermometer 2001[Z] .[5] . 曲喜贵. 电子元件材料手册[ M]. 北京:电子工业出版社,1989.422-430.[6] . 黄贤武,郑筱霞,曲波等. 传感器实际应用电路设计[M]. 成都:电子科技大学出版社,1997.4-10.[7] . 刘君华. 智能传感器系统[M] . 西安:西安电子科技大学出版社,1999.[8] . 余永权. Flash 单片机原理及应用[M]. 北京:电子工业出版社,1997.[9] . 邦田. 电子电路实用抗干扰技术[M] . 北京:人民邮电出版社,1994.[10] . 周云波. 由DS18B20 单线数字温度计构成的单线多点温度测量系统. 电子技术应用,1996(2):15- 20.[11] . 吉鹏,马云峰等. 微机原理与接口技术[M]. 北京:高等教育出版社,2001.[12] . 振国. DS1820 及高精度温度测量的实现[J] . 电子技术应用,2000 (1) .[13] . 东耀,汪仁煌. 数字温度传感器在仓库温度检测系统的应用[J]. 传感器世界,2001(12):30- 33.[14] . 月霞,孙传友. DS18B20 硬件连接及软件编程[J]. 传感器世界,2001(12):25- 29.[15] . 一线数字温度传感器资料[M]. 武汉:武汉力源电子有限公司,1996.[16] . 贤武,郑霞,曲波. 传感器实际应用电路设计[M]. 成都:电子科技大学出版社,1997.[17] . 伟正. 单线数字温度传感器的原理与应用[1]. 电子技术应用,2000,6.66-68[18] . DALLAS 公司.DS18B20 数据手册[Z][19] . 周月霞,孙传友. DS18B20 硬件连接及软件编程[J]. 传感器世界,2001,(12).[20] . 单线数字温度传感器资料[M]. 武汉:武汉力源电子有限公司,1996.[21] . 贾东耀,汪仁煌. 数字温度传感器在仓库温度检测系统的应用[J]. 传感器世界,2001(12).[22] . 余永权. ATMEL 89 系列单片机应用技术[M]. 北京:北京航空航天大学出版社2002.[23] . 胡汉才. 单片机原理及系统设计[M]. 北京:清华大学出版社,2002[24] . 李更祥. 单总线数字式智能型温度传感器在测控领域中的应用[J]. 计算机自动测量与控制,1999,7(3):51-53.[25] . 忠梅. 单片机的C 语言应用程序设计[M]. 北京:北京航空航天大学出版社,1997。
DS18B20的工作原理
DS18B20的工作原理DS18B20是一种数字温度传感器,广泛应用于各种温度测量和控制系统中。
它采用了单总线接口,能够通过一条数据线进行通信和供电,具有高精度、低功耗、抗干扰等特点。
本文将详细介绍DS18B20的工作原理。
1. 基本原理DS18B20采用了数字温度传感技术,其基本原理是根据温度对半导体材料电阻的影响来测量温度。
在DS18B20内部,有一个温度传感器和一个数字转换器。
温度传感器由一段特殊的半导体材料构成,该材料的电阻随温度的变化而变化。
数字转换器负责将传感器测量到的电阻值转换成数字温度值。
2. 单总线接口DS18B20采用了单总线接口,即通过一条数据线进行通信和供电。
这条数据线同时承担了供电、数据传输和控制信号的功能。
在通信过程中,主控设备通过向数据线上发送特定的控制命令来获取温度值。
DS18B20在接收到命令后,将温度值通过数据线传输给主控设备。
3. 温度测量过程DS18B20的温度测量过程包括启动转换、温度转换和读取温度三个步骤。
首先,主控设备向DS18B20发送启动转换命令,DS18B20开始进行温度转换。
转换过程中,DS18B20通过内部的温度传感器感知温度变化,并将其转换为相应的电阻值。
一旦转换完成,DS18B20将温度值存储在内部的寄存器中。
最后,主控设备发送读取温度命令,DS18B20将温度值通过数据线传输给主控设备。
4. 精度和分辨率DS18B20具有高精度和可调节的分辨率。
其精度可达到±0.5℃,分辨率可调节为9位、10位、11位或者12位。
分辨率越高,温度测量的精度越高,但所需的转换时间和通信时间也会增加。
5. 供电方式DS18B20可以通过数据线进行供电,也可以通过外部供电。
当通过数据线供电时,主控设备需要提供足够的电源电压和电流来满足DS18B20的工作需求。
当通过外部供电时,DS18B20需要连接到外部电源,并通过数据线进行通信。
总结:DS18B20是一种数字温度传感器,采用了单总线接口,能够通过一条数据线进行通信和供电。
ds18b20工作原理
ds18b20工作原理DS18B20是一种数字温度传感器,它可以通过一根数据线进行温度的采集和传输。
DS18B20工作原理的核心是利用温度对半导体材料电阻的影响来实现温度的测量。
接下来,我们将详细介绍DS18B20的工作原理。
首先,DS18B20内部包含了一个温度传感器芯片,该芯片采用了数字信号输出的方式。
在DS18B20内部,有一个模拟-数字转换器(ADC),它可以将模拟信号转换为数字信号。
当DS18B20受到温度的影响时,芯片内部的电阻会发生变化,进而改变了电压信号的大小。
ADC会将这个模拟信号转换为数字信号,然后通过数据线输出给外部设备。
其次,DS18B20采用了一种叫做“单总线”(One Wire)的通信协议。
这意味着DS18B20只需要一根数据线就可以完成温度的采集和传输。
在通信过程中,DS18B20会将温度数据以数字信号的形式发送给外部设备。
外部设备可以通过读取数据线上的数字信号来获取温度信息。
此外,DS18B20还具有一些特殊的功能,比如温度的精度调节、温度报警功能等。
通过这些功能,DS18B20可以满足不同场景下的温度监测需求。
总的来说,DS18B20的工作原理是基于半导体材料电阻随温度变化的特性,利用ADC将模拟信号转换为数字信号,并通过单总线通信协议将温度数据传输给外部设备。
同时,DS18B20还具有一些特殊的功能,可以满足不同场景下的温度监测需求。
在实际应用中,DS18B20被广泛应用于各种温度监测系统中,比如智能家居、工业自动化等领域。
由于其简单、稳定、精准的特点,DS18B20在温度监测领域具有很高的性价比,受到了广泛的认可和应用。
综上所述,DS18B20是一种基于半导体材料电阻特性的数字温度传感器,其工作原理是通过ADC将模拟信号转换为数字信号,并通过单总线通信协议将温度数据传输给外部设备。
在实际应用中,DS18B20具有简单、稳定、精准的特点,被广泛应用于各种温度监测系统中。
51单片机DS18B20温度传感器原理及实验
51单片机DS18B20温度传感器原理及实验一、引言温度传感器是一种常用的传感器器件,它的作用是将物体的温度变化转换为电信号输出,以实现温度的监测和控制。
DS18B20是一种数字温度传感器,采用数字信号输出,具有体积小、精度高、线性度好等特点,被广泛应用于各种温度控制系统中。
本文将介绍DS18B20的工作原理及实验方法。
二、DS18B20的工作原理DS18B20是一种基于一线传输协议的数字温度传感器,其工作原理如下:1.接口电路:DS18B20具有三个引脚,分别是VDD、DQ和GND。
其中,VDD是供电引脚,DQ是数据引脚,GND是地引脚。
2.传感器原理:DS18B20内部包含一个温度传感器和一个数字转换器。
温度传感器采用热敏电阻的原理,通过测量热敏电阻的电阻值来反映物体的温度变化。
数字转换器将传感器测得的电阻值转换为数字信号输出。
三、实验流程以下是使用51单片机对DS18B20温度传感器进行实验的详细流程:1.硬件准备:-将DS18B20的VDD引脚连接到单片机的VCC引脚,DQ引脚连接到单片机的任意IO引脚,GND引脚连接到单片机的GND引脚。
-确保DS18B20的供电电压和单片机的工作电压一致。
2.初始化:-在程序中定义DS18B20的DQ引脚所对应的单片机的IO引脚。
-初始化DS18B20,即发送初始化指令给DS18B20。
3.温度转换:-发送温度转换指令给DS18B20,DS18B20开始测量温度。
-等待一定的延时,确保DS18B20完成温度转换。
4.读取温度:-发送读取温度指令给DS18B20,DS18B20将温度的原始数据发送给单片机。
-单片机通过计算将原始数据转换为温度值。
-温度值可以通过串口或LCD等方式进行显示。
5.循环实验:-以上步骤需要不断重复,以便实时监测温度的变化。
四、总结DS18B20温度传感器是一种常用的数字温度传感器,具有精度高、体积小、线性度好等特点,适用于各种温度控制系统。
DS18B20的工作原理
DS18B20的工作原理引言概述:DS18B20是一种数字温度传感器,具有精确度高、体积小、功耗低等特点,被广泛应用于各种温度测量场景。
本文将详细介绍DS18B20的工作原理及其相关特点。
一、温度传感原理1.1 热敏电阻原理DS18B20采用热敏电阻作为温度传感元件。
热敏电阻的电阻值随温度的变化而变化,其本质是利用材料在温度变化下的电阻变化特性来测量温度。
1.2 热敏电阻的特性热敏电阻的电阻值与温度呈负相关关系,即温度升高时电阻值下降,温度降低时电阻值上升。
这种特性使得热敏电阻可以通过测量电阻值的变化来间接测量温度。
1.3 DS18B20的温度测量原理DS18B20通过将热敏电阻与一个精确的参考电阻进行比较,利用电阻的变化来测量温度。
通过测量电阻值的变化,DS18B20可以准确地计算出当前的温度值,并以数字信号的形式输出。
二、数字温度传感器的工作原理2.1 单总线通信DS18B20采用单总线通信方式,即通过一个引脚同时实现数据传输和电源供应。
这种通信方式简化了电路设计,提高了系统的可靠性。
2.2 温度转换过程DS18B20在进行温度转换时,会向传感器发送一个转换命令。
传感器接收到命令后,会进行温度测量,并将测量结果存储在内部寄存器中。
用户可以通过读取寄存器的方式获取温度值。
2.3 精确度和分辨率DS18B20具有高精确度和可调节的分辨率。
其精确度可以达到±0.5℃,分辨率可调节为9位、10位、11位或12位,分别对应0.5℃、0.25℃、0.125℃和0.0625℃的分辨率。
三、DS18B20的电气特性3.1 供电电压DS18B20的供电电压范围为3V至5.5V,可以适应不同的电源系统。
3.2 通信速率DS18B20的通信速率可以选择为标准速率(最高16.25kbps)或高速速率(最高100kbps),可以根据实际需求进行设置。
3.3 工作温度范围DS18B20的工作温度范围为-55℃至+125℃,可以适应各种极端环境下的温度测量需求。
DS18B20的工作原理
DS18B20的工作原理DS18B20是一种数字温度传感器,常用于测量环境温度。
它采用单总线接口,具有高精度、低功耗和可靠性等特点。
下面将详细介绍DS18B20的工作原理。
1. 基本原理DS18B20采用了微处理器技术,内部集成了温度传感器和ADC(模数转换器),能够将温度转换为数字信号输出。
其工作原理基于半导体材料的温度特性,通过测量半导体材料的电阻值来计算温度。
2. 温度传感器DS18B20采用了精确度高的温度传感器,传感器的核心部分是一个由硅材料制成的温度感应器。
硅材料的电阻值随温度的变化而变化,通过测量电阻值的变化可以得到温度的信息。
3. 单总线接口DS18B20采用了单总线接口,即数据线(DQ)同时兼具供电和数据传输的功能。
通过单总线接口,可以实现多个DS18B20传感器的串联连接,从而方便进行温度的多点测量。
4. 工作原理DS18B20的工作原理如下:- 初始化:主机发送复位脉冲,DS18B20接收到复位脉冲后进行初始化操作。
- 通信:主机发送指令,DS18B20接收到指令后执行相应的操作,如温度转换、读取温度值等。
- 温度转换:DS18B20在接收到温度转换指令后,通过内部的温度传感器测量环境温度,并将温度转换为数字信号。
- 数据传输:DS18B20将转换后的温度值以序列的形式通过单总线接口发送给主机。
- 校验:主机接收到温度值后进行校验,确保数据的准确性。
5. 精度和分辨率DS18B20具有高精度和可调节的分辨率。
它可以实现0.5℃、0.25℃、0.125℃和0.0625℃四种分辨率的温度测量。
通过配置寄存器,可以根据需求选择不同的分辨率。
6. 供电方式DS18B20可以通过单总线接口直接从主机获取供电,也可以通过外部供电方式进行供电。
在从主机获取供电时,DS18B20的工作电流非常低,通常在1-1.5mA 之间。
7. 应用领域DS18B20广泛应用于温度测量和控制领域,如室内温度监测、恒温控制、气象站、冷链物流等。
友台半导体有限公司 DS18B20H 单总线温度传感器说明书
特点 ● 单总线接口,节约布线资源● 应用简单,无需额外器件● 转换温度时间500ms● 可编程9~12位数字输出●宽供电电压范围● 每颗芯片有可编程的ID 序列号 ● 用户可自行设置报警值 ● 超强ESD 保护能力(HBM>8000V )● 典型待机电流功耗1µA @3V ●典型换电流功耗0.6mA@3V典型应用● 便携应用,手机与穿戴设备● 温度监控 ●粮情监测● 智能家电系统 ● 水温测量● 建筑、设备或机房内部温度监测系统● 过程监测和控制系统概述是一款高精度的单总线温度测量芯片。
温度传感器的测温范围为-55°C 到+125°C ;根据用户需要通过配置寄存器可以设定数字转换精度和测温速度。
芯片内置4byte 非易失性存储单元供用户使用,2byte 用于高低温报警,另外2byte 用于保存用户自定义信息。
在-10°C 到+85°C 范围内最大误差为±°C 。
用户可自主选择电源供电模式和寄生供电模式。
单总线接口允许多个设备挂在同一总线,该特性使得也非常便于部署分布型温度采集系统。
管脚图和管脚描述34167852GNDDQ VDD MSOP82.5V-5.5V DS18B20H DS18B200.4DS18B20图1 DS18B20框图结构框图图1是DS18B20的原理框图。
64位ROM存储了器件的唯一序列码。
暂存器包含了两个字节的温度寄存器,存储来自于温度传感器的数字输出。
另外,暂存器提供了一高一低两个报警触发阈值寄存器(TH和TL)。
配置寄存器允许用户设定温度数字转换的分辨率为9,10,11或12位。
2个字节的用户可编程E2PROM是非易失性存储,器件掉电时数据不会失去。
DS18B20使用单总线协议,总线通讯通过一根控制信号线实现。
控制线需要一个弱上拉电阻这样所有的器件都通过三态或者开漏极端口(就是DS18B20的DQ引脚)连接到总线上。
基于51单片机DS18B20温度采集器详解
一核心器件的基本构成及特性1.1 AT89S51功能特性89C51是INTEL公司MCS-51系列单片机中基本的产品,它采用INTEL公司可靠的CHMOS工艺技术制造的高性能8位单片机,属于标准的MCS-51的HCMOS产品。
它结合了HMOS的高速和高密度技术及CHMOS的低功耗特征,它基于标准的MCS-51单片机体系结构和指令系统,属于80C51基础型单片机版本,集成了时钟输出和向上或向下计数器等更多的功能。
89C51内置8位中央处理单元、256字节内部数据存储器RAM、8k片内程序存储器(ROM)32个双向输入/输出(I/O)口、3个16位定时/计数器和5个两级中断结构,一个全双工串行通信口,片内时钟振荡电路。
此外,89C51还可工作于低功耗模式,可通过两种软件选择空闲和掉电模式。
在空闲模式下冻结CPU 而RAM定时器、串行口和中断系统维持其功能。
掉电模式下,保存RAM数据,时钟振荡停止,同时停止芯片内其它功能。
89C51有PDIP(40pin)和PLCC(44pin)两种封装形式。
1.2 AT89S51管脚介绍AT89C51单片机是把那些作为控制应用所必需的基本内容都集成在一个尺寸有限的集成电路芯片上。
如果按功能划分,它由如下功能部件组成,即微处理器(CPU)、数据存储器(RAM)、程序存储器(ROM)、并行I/O口(4个8位I/O口)、串行口、定时器/计数器、中断系统及特殊功能寄存器。
它们都是通过片内单一总线连接而成,其基本结构依旧是微处理器(CPU)加上外围芯片的传统结构模式。
但对各种功能部件的控制是采用特殊功能寄存器的集中控制方式,以实现不同的功能。
AT89C51单片机如图所示。
1.1.1引脚功能介绍Vcc(40引脚):接+5V电源。
Vss(20引脚):接地。
XTAL1(19引脚):片内振荡器反相放大器和时钟发生器电路的输入端。
XTAL2(18引脚):片内震荡器反相放大器的输出端。
RST:复位引脚,高电平有效。
DS18B20的工作原理
DS18B20的工作原理DS18B20是一种数字温度传感器,具有高精度和数字输出的特点。
它采用一线通信协议,可以直接与微控制器通信,广泛应用于温度监测领域。
本文将详细介绍DS18B20的工作原理。
一、温度测量原理1.1 DS18B20采用数字式温度传感器芯片,内部集成为了温度传感器和ADC转换器,能够直接输出数字信号。
1.2 DS18B20的温度传感器采用特殊的材料,随温度的变化而改变其电阻值,通过ADC转换器将电阻值转换为数字信号。
1.3 DS18B20的数字输出信号经过微处理器处理后,可以直接显示温度数值或者通过串口通信传输到其他设备。
二、通信协议2.1 DS18B20采用一线通信协议,只需一根数据线即可与微控制器通信,简化了连接方式。
2.2 通信协议中包括初始化、发送命令、读取数据等步骤,确保数据的准确传输。
2.3 通过一线通信协议,DS18B20可以实现多个传感器的串联连接,方便实现多点温度监测。
三、精度和分辨率3.1 DS18B20具有高精度的温度测量能力,温度测量误差仅为±0.5℃。
3.2 DS18B20的分辨率可调节,最高可达12位,能够满足不同应用场景的需求。
3.3 高精度和可调节的分辨率使得DS18B20在工业控制、医疗设备等领域得到广泛应用。
四、工作电压和功耗4.1 DS18B20的工作电压范围广泛,可在3V至5.5V之间工作,适合于不同的电源供应环境。
4.2 DS18B20的功耗较低,工作电流仅为1mA摆布,可以节省能源。
4.3 低功耗和广泛的工作电压范围使得DS18B20适合于电池供电或者低功耗设备。
五、应用领域5.1 DS18B20广泛应用于温度监测系统、气象站、医疗设备等领域。
5.2 DS18B20的高精度和数字输出特点使得其在工业控制、实验室研究等领域得到广泛应用。
5.3 DS18B20的一线通信协议和低功耗特点使得其在挪移设备、智能家居等领域具有广阔的应用前景。
温度传感器ds18b20
温度传感器ds18b20温度传感器DS18B201. 简介温度传感器DS18B20是一种数字温度传感器,可用于测量环境温度。
该传感器由Maxim Integrated公司生产,并在许多应用中得到了广泛的应用,如家庭自动化、气象站、工业控制等。
DS18B20采用了数字化接口,并具有高精度、可编程分辨率和低功耗等特点。
2. 技术规格DS18B20的技术规格如下:- 工作电源:3.0V至5.5V- 测量范围:-55°C至+125°C- 分辨率:可编程为9、10、11或12位- 精度:±0.5°C(在-10°C至+85°C范围内)- 通信接口:一线式数字接口3. 工作原理DS18B20采用了一线式数字接口,这意味着它只需要一根数据线进行通信。
传感器从控制器接收命令,并通过数据线将温度数据发送回控制器。
传感器的数据线同时起到了供电的作用。
DS18B20通过内部的精密温度传感器测量环境温度。
传感器将温度转换为数字信号,并通过数据线将其发送给控制器。
传感器的分辨率可以根据需要进行编程,从而在精度和响应速度之间进行平衡。
4. 使用方法使用DS18B20温度传感器非常简单。
首先,将传感器的电源引脚连接到可用的电源引脚,并将数据线连接到控制器的GPIO引脚。
然后,通过控制器向传感器发送命令,请求温度数据。
传感器将在一段时间后将温度数据发送回控制器,控制器可以读取这些数据并进行相应的处理。
DS18B20还具有一些特殊的命令,如启动温度转换、复位传感器和读取ROM代码等。
这些命令可以通过与控制器的通信来实现。
5. 应用领域温度传感器DS18B20在许多应用中得到了广泛的应用。
以下是一些常见的应用领域:- 家庭自动化:DS18B20可以用于监测室内温度,从而实现智能化的温控系统。
- 气象站:DS18B20可以用于监测室外温度,并将数据发送到气象站系统进行分析和显示。
DS18B20的工作原理
DS18B20的工作原理DS18B20是一种数字温度传感器,具有高精度和数字输出的特点。
它采用1-Wire总线通信协议,可以方便地与微控制器进行通信。
本文将介绍DS18B20的工作原理,以帮助读者更好地理解这种传感器的工作方式。
一、DS18B20的基本结构1.1 DS18B20传感器由温度传感器、存储器和控制逻辑电路组成。
1.2 温度传感器部分采用模拟式温度传感器,能够将温度转换为电压信号。
1.3 存储器部分用于存储传感器的唯一标识号和温度数据。
二、DS18B20的工作原理2.1 当微控制器发送读取温度的命令时,DS18B20开始工作。
2.2 DS18B20将传感器测得的温度数据转换为数字信号,并通过1-Wire总线发送给微控制器。
2.3 微控制器接收到温度数据后,可以进行进一步的处理和显示。
三、DS18B20的精度和分辨率3.1 DS18B20具有高精度,温度测量精度可达±0.5°C。
3.2 DS18B20的分辨率可通过配置寄存器进行设置,最高可达12位。
3.3 高分辨率可以提供更精确的温度测量结果,但也会增加通信的时间。
四、DS18B20的应用领域4.1 DS18B20广泛应用于工业控制、电子设备和家用电器等领域。
4.2 在温度监控系统中,DS18B20可以实现对环境温度的实时监测和控制。
4.3 DS18B20还可以用于温度补偿、温度校准和温度报警功能。
五、DS18B20的优势和劣势5.1 DS18B20具有数字输出、高精度和简单的通信方式等优点。
5.2 DS18B20的缺点是对温度测量环境的要求较高,需要精确的供电和通信线路。
5.3 尽管存在一些局限性,但DS18B20仍然是一种性能稳定、可靠性高的温度传感器。
总结:DS18B20是一种高精度、数字输出的温度传感器,采用1-Wire总线通信协议。
通过本文的介绍,读者可以更好地了解DS18B20的工作原理和应用领域,为实际应用提供参考。
DS18B20数据手册-中文版
DS18B20数据手册-中文版关键信息项1、协议名称:DS18B20 数据手册中文版2、适用产品:DS18B20 传感器3、数据格式:详细说明数据的传输和存储格式4、测量范围:明确传感器能够测量的温度范围5、精度:给出测量温度的精度数值6、响应时间:描述传感器对温度变化的响应速度7、供电要求:说明所需的供电电压和电流等参数8、接口类型:注明与其他设备连接的接口类型和规范11 概述本协议旨在提供关于DS18B20 传感器的详细技术规格和使用说明,以确保用户能够正确、有效地使用该传感器进行温度测量和数据处理。
111 DS18B20 简介DS18B20 是一款数字式温度传感器,具有体积小、精度高、接口简单等优点,广泛应用于各种温度测量场景。
112 特点1、独特的单总线接口,仅需一根数据线即可与微控制器进行通信。
2、测量范围广,可满足大多数应用场景的需求。
3、在-10℃至+85℃范围内,精度可达 ±05℃。
12 技术规格121 测量范围-55℃至+125℃122 精度在-10℃至+85℃范围内,精度为 ±05℃;在其他温度范围内,精度会有所降低。
123 分辨率用户可通过编程设置分辨率,可选 9 位至 12 位。
124 响应时间典型的温度转换时间为 750ms(12 位分辨率)。
13 供电要求131 供电电压工作电压范围为 30V 至 55V。
132 电流消耗在待机模式下,电流消耗极低;在温度转换期间,电流消耗会有所增加。
14 接口类型141 单总线接口采用独特的单总线协议进行通信,数据线需要上拉电阻。
142 时序要求严格遵循单总线的时序要求,以确保数据的正确传输。
15 数据格式151 温度数据以 16 位补码形式存储温度值。
152 校验位包含校验位以确保数据的准确性。
16 操作指令161 初始化指令用于启动传感器与控制器之间的通信。
162 温度转换指令触发传感器进行温度测量和转换。
163 读取数据指令读取传感器转换后的温度数据。
DS18B20的工作原理
DS18B20的工作原理DS18B20是一种数字温度传感器,具有高精度、数字输出和单总线接口的特点。
它适用于各种温度测量和控制系统中,如温度监测、室内温度调节、自动化控制等领域。
DS18B20的工作原理如下:1. 原理概述DS18B20采用了基于CMOS工艺的数字温度传感器技术,利用温度对半导体材料电阻值的变化进行温度测量。
它内部集成了温度传感器、模数转换器和数字信号处理电路,能够将温度转换为数字信号输出。
2. 温度传感器DS18B20的温度传感器采用了精密的硅材料,具有较高的灵敏度和稳定性。
当温度发生变化时,硅材料的电阻值也会相应变化。
通过测量电阻值的变化,可以得到温度的数值。
3. 模数转换器DS18B20内部集成了一种精密的模数转换器(ADC),用于将传感器测得的温度值转换为数字信号。
模数转换器能够将连续变化的模拟信号转换为离散的数字信号,以便于处理和传输。
4. 单总线接口DS18B20采用单总线接口进行数据通信。
单总线接口是一种串行通信协议,通过一个引脚同时实现数据传输和电源供应。
这种接口简化了传感器与控制器之间的连接,减少了线缆的使用。
5. 工作原理DS18B20的工作原理是通过发送一系列命令和接收传感器的响应来实现温度测量和数据传输。
控制器向传感器发送开始转换的命令,传感器开始测量温度并将结果转换为数字信号。
控制器再发送读取命令,传感器将转换后的温度值通过单总线接口传输给控制器。
6. 精度和分辨率DS18B20具有较高的温度测量精度和分辨率。
它可以测量的温度范围为-55℃到+125℃,精度可达±0.5℃。
分辨率可以通过配置寄存器进行设置,可选择9位、10位、11位或12位的分辨率。
7. 应用领域DS18B20广泛应用于各种温度测量和控制系统中。
例如,它可以用于室内温度监测和调节,通过与控制器连接,实现自动化的温度控制。
此外,它还可以应用于电子设备的散热控制、温度报警系统等领域。
温度传感器18B20
温度采集电路设计跟以往的采用A/D转换器进行温度测量不同的是,本系统采用的是一线协议器件DS18B20进行温度测量,测量的方法不同,温度采集不同。
2.2.1温度采集芯片简介DS1820数字温度计提供9位温度读数,指示器件的温度。
信息经过单线接口送入DS1820或从DS1820送出,因此从中央处理器到DS1820仅需连接一条线(和地)。
读、写和完成温度变换所需的电源可以由数据线本身提供,而不需要外部电源。
因为每一个DS1820有唯一的系列号,因此多个DS1820可以存在于同一条单线总线上。
这允许在许多不同的地方放置温度灵敏器件。
此特性的应用范围包括HV AC环境控制,建筑物、设备或机械内的温度检测,以及过程监视和控制中的温度检测。
(1) DS18B20特性●独特的单线接口仅需一个端口引脚进行通讯;●无需外部器件;●零待机功耗;●测温范围-55℃~+1250℃,以0. 5℃递增。
华氏温度范围-67℉至257℉,以0.9℉递增;●温度以9位数字量读出;●温度数字量转换时间200ms(典型值);●用户可定义的非易失性温度报警设置;●报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;●应用包括温度控制、工业系统、消费品、温度计或任何热感测系统;(2) DS18B20引脚结构及说明DS18B20引脚结构如图2.5所示BOTTOM VIEWGND DQ VDD图2.5 引脚结构引脚说明:GND:接地。
DQ :数据输入/输出脚。
VDD:外接供电电源输入端(在寄生电源接线方式时接地)。
DS1820通过一个单线接口发送或接收信息,因此在中央微处理器和DS1820之间仅需一条连接线(加上地线)。
用于读写和温度转换的电源可以从数据线本身获得,无需外部电源。
因为每个DS1820都有一个独特的片序列号,所以多只DS1820可以同时连在一根单线总线上,这样就可以把温度传感器放在许多不同的地方。
这一特性在HV AC环境控制、探测建筑物、仪器或机器的温度以及过程监测和控制等方面非常有用。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程论文
(单片机原理及应用)
题目 DS18B20温度采集系统
学生姓名
学号200923050
院系滨江学院
专业电子信息工程
二零一二年五月
摘要
本论文介绍了一种以单片机为主要控制器件,以DS18B20为温度传感器的新型数字温度计。
主要包括硬件电路的设计和系统程序的设计。
硬件电路主要包括主控制器,测温控制电路和显示电路等,主控制器采用单片机AT89S52,温度传感器采用美国DALLAS半导体公司生产的DS18B20,显示电路采用8位共阴极LED数码管,ULN2803A为驱动的动态扫描直读显示。
测温控制电路由温度传感器和预置温度值比较报警电路组成,当实际测量温度值大于预置温度值时,发出报警信号,即发光二极管亮。
系统程序主要包括主程序,测温子程序和显示子程序等。
DS18B20新型单总线数字温度传感器是DALLAS 公司生产的单线数字温度传感器, 集温度测量和 A /D转换于一体 ,直接输出数字量,具有接口简单、精度高、抗干扰能力强、工作稳定可靠等特点。
关键词:显示电路,单片机,AT89S52,温度传感器,DS18B20 ,单总线
一:任务
设计一个以单片机为核心的温度测量系统,可实现的功能为:
(1)测量温度值精度为±0.5℃。
(2)系统允许的误差范围为0.5℃以内。
(3)系统可由用户预设温度值,测温范围为-55℃~+125℃。
(4)超出预置值时系统会自动报警,即发光二极管亮。
(5)系统具有数码显示功能,能实时显示设定温度值和测得的实际温度值。
二:原理图
三、程序流程图
四、实验原理
复位部位
该电路在最简单的复位电路下增加了手动复位按键,在接通电源瞬间,电容C上的电压很R上的电压接近电源电压,即RST为高电平,在电容充电的过程中RST 小,复位下拉电阻
RST
端电压逐渐下降,当RST端的电压小于某一数值后,CPU脱离复位状态,由于电容C1足够大,可以保证RST高电平有效时间大于24个振荡周期,CPU能够可靠复位。
增加手动复位按键是为了避免死机时无法可靠复位。
当复位按键按下后电容C1通过R5放电。
当电容C1放电结束后,RST端的电位由R5与R6分压比决定。
由于R5<<R6 因此RST为高电平,CPU处于复位状态,松手
后,电容C1充电,RST端电位下降,CPU脱离复位状态。
R5的作用在于限制按键按下瞬间电容C1的放电电流,避免产生火花,以保护按键触电。
复位电路原理图
晶振部分
AT89S52引脚XTAL1和XTAL2与晶体振荡器及电容C2、C1按图4-7所示方式连接。
晶振、电容C1/C2及片内与非门(作为反馈、放大元件)构成了电容三点式振荡器,振荡信号频率与晶振频率及电容C1、C2的容量有关,但主要由晶振频率决定,范围在0~33MHz之间,电容C1、C2取值范围在5~30pF之间。
根据实际情况,本设计中采用12MHZ做为系统的外部晶振。
电容取值为20pF。
晶振电路原理图
报警部分
当温度达到预置的温度值事,这时三极管就会导通,从而使得蜂鸣器响。
如图:
报警电路原理图
DS18B20的内部结构:
DS18B20内部结构主要由四部分组成:64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。
64位光刻ROM里存储了该片DS18B20独一无二的身份序列号,每一片DS18B20的身份序列号都不一样。
这意味着在一根总线上挂载多个DS18B20器件时,身份序列号可以用以识别出不同的DS18B20。
温度传感器可以测量实际温度。
报警触发器里面可以写入希望发生报警信号的温度值。
配置寄存器可以配置DS18B20的测量精度。
以下是几个寄存器详情:
温度数据存储器:
我们看到,因为DS18B20的转换精度最大可以达到12位,所以前面5位是符号位,剩下的是数据位;
配置寄存器:
这个寄存器只有两个有效位:R1和R2,下图说明的很清楚,注意默认位12bit 的精度:
64bit ROM:
可以看出,最高八位是8 bit的CRC校验码;接下来的48位是身份序列号,最后八位是器件系列码。
其实以上各种寄存器里,除了温度数据存储器,其他的寄存器是不必须要了解的,即便我们不了解,也足以使用DS18B20测试出当前温度。
现在我们进入DS18B20的实际操作,在此要先对各位说明的是,如果你的开发板是在一根总线上串接了一个以上的DS18B20,无论如何请先把其中一个拆掉。
原因是:在一根总线上挂载多个DS18B20,就需要我们使用身份序列号识别不同的器件。
如何得到这个序列号呢?要靠编写程序来读,读序列号之时总线上只能有一个DS18B20。
但是在此笔者为了降低难度,只使用一个DS18B20讲述本实验。
所以无论你是要做多个DS18B20还是单个,你都需要经过“总线上只有一个DS18B20的情况”。
我们先来看DS18B20的起始时序:
主机总线发送一复位脉冲(最短为 480us 的低电平信号)接着释放总线并进入接收状态。
DSl8B20在检测到总线的上升沿之后等待15-60us接着DS18B20发出存在脉冲(低电平持续60-240 us) 如图中灰色粗线所示。
所以要产生起始信号,则:将DQ拉成低电平保持最少480us,然后释放总线(设置为IO输入方向),延时15~60us,之后的60~240us之内检测DQ是否为低电平,再延时500us保持起始时序完整。
我们再来看DS18B20的四个时序,单总线的时序很简单,分别是:“写0”“写1”“读0”“读1”(对应下图的上左、上右、下左、下右):
以上就是DS18B20的读写时序,注意无论字节的读写,都是从最低位开始的。
下面是DS18B20的控制字,只列出足以让单个DS18B20正常工作的:
跳过ROM检测【0xcc】:此命令可以省去DS18B20内部ROM序列的匹配检测,在使用单个DS18B20器件时可以使用,节省时间。
温度变换【0x44】:此命令可以使DS18B20开始转换温度,按照精度在适当时间内完成转换。
温度数据读取【0xBE】:此命令写入后,DS18B20会输出内部温度数据暂存器的数据,这就是我们需要的温度测量数据。
所以我们要DS18B20转换温度并读出这个温度,遵循以下流程即可:
“复位——写0xcc(跳过匹配ROM)——写0x44(转换温度)——复位——写0xbe(读取温度)”,剩下的就是温度的显示问题了。
关于18B20工作原理请读者参考DALLAS公司资料。
89S52控制DS18B20 完成温度转换必须经过三个步骤:初始化、ROM操作指令、存储器操作指令。
必须先启动DS18B20开始转换,再读出温度转换值。
本实验系统挂接一个18B20芯片,可使用默认的12位转换精度,外接供电电源,单片机与18B20接口是用单片机的P2.4。
五、实物图
六、实验总结。