下载

1下载券

加入VIP
  • 专属下载特权
  • 现金文档折扣购买
  • VIP免费专区
  • 千万文档免费下载

上传资料

关闭

关闭

关闭

封号提示

内容

首页 数字温度传感器DS18B20的原理与应用

数字温度传感器DS18B20的原理与应用.doc

数字温度传感器DS18B20的原理与应用

cavinx
2010-11-30 0人阅读 举报 0 0 暂无简介

简介:本文档为《数字温度传感器DS18B20的原理与应用doc》,可适用于高等教育领域

数字温度传感器DSB的原理与应用作者:马云峰,陈子夫,李培全 文章来源:电子元器件应用 上网时间:  结束浏览引言        DSB是DALLAS公司生产的一线式数字温度传感器具有引脚TO-小体积封装形式温度测量范围为-℃~+℃,可编程为位~位AD转换精度测温分辨率可达℃被测温度用符号扩展的位数字量方式串行输出其工作电源既可在远端引入也可采用寄生电源方式产生多个DSB可以并联到根或根线上CPU只需一根端口线就能与诸多DSB通信占用微处理器的端口较少可节省大量的引线和逻辑电路。以上特点使DSB非常适用于远距离多点温度检测系统。DSB的内部结构        DSB内部结构如图所示主要由部分组成:位ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。DSB的管脚排列如图所示DQ为数字信号输入/输出端GND为电源地VDD为外接供电电源输入端(在寄生电源接线方式时接地见图)。        ROM中的位序列号是出厂前被光刻好的它可以看作是该DSB的地址序列码每个DSB的位序列号均不相同。位ROM的排的循环冗余校验码(CRC=X+X+X+)。ROM的作用是使每一个DSB都各不相同这样就可以实现一根总线上挂接多个DSB的目的。图DSB的内部结构图DSB的管脚排列(a)初始化时序(b)写时序(c)读时序图DSB的工作时序图DSB中的温度传感器完成对温度的测量用位符号扩展的二进制补码读数形式提供以℃LSB形式表达其中S为符号位。例如+℃的数字输出为DH+℃的数字输出为H-℃的数字输出为FFFH-℃的数字输出为FCH。----温度值低字节MSBLSBSSSSS温度值高字节        高低温报警触发器TH和TL、配置寄存器均由一个字节的EEPROM组成使用一个存储器功能命令可对TH、TL或配置寄存器写入。其中配置寄存器的格式如下:RRMSBLSB        R、R决定温度转换的精度位数:RR=“”位精度最大转换时间为msRR=“”位精度最大转换时间为msRR=“”位精度最大转换时间为msRR=“”位精度最大转换时间为ms未编程时默认为位精度。  高速暂存器是一个字节的存储器。开始两个字节包含被测温度的数字量信息第、、字节分别是TH、TL、配置寄存器的临时拷贝每一次上电复位时被刷新第、、字节未用表现为全逻辑第字节读出的是前面所有个字节的CRC码可用来保证通信正确。DSB的工作时序  DSB的一线工作协议流程是:初始化→ROM操作指令→存储器操作指令→数据传输。其工作时序包括初始化时序、写时序和读时序如图(a)(b)(c)所示。DSB与单片机的典型接口设计    图以MCS-系列单片机为例画出了DSB与微处理器的典型连接。图(a)中DSB采用寄生电源方式其VDD和GND端均接地图(b)中DSB采用外接电源方式其VDD端用V~V电源供电。    假设单片机系统所用的晶振频率为MHz根据DSB的初始化时序、写时序和读时序分别编写了个子程序:INIT为初始化子程序WRITE为写(命令或数据)子程序READ为读数据子程序所有的数据读写均由最低位开始。    DATEQUP    ……    INIT:CLREA    INI:SETBDAT    MOVR,#a)寄生电源工作方式(b)外接电源工作方式图DSB与微处理器的典型连接图INI:CLRDATDJNZR,INI主机发复位脉冲持续μs×=μsSETBDAT主机释放总线口线改为输入MOVR,#IN:DJNZR,INIDSB等待μs×=μsCLRCORLC,DATDSB数据线变低(存在脉冲)吗?JCINIDSB未准备好重新初始化MOVR,#INI:ORLC,DATJCINIDSB数据线变高初始化成功DJNZR,INI数据线低电平可持续μs×=μsSJMPINI初始化失败重来INI:MOVR,#IN:DJNZR,INIDSB应答最少μs×=μsRET------------------------WRITE:CLREAMOVR,#循环次写一个字节WR:SETBDATMOVR,#RRCA写入位从A中移到CYCLRDATWR:DJNZR,WR等待μsMOVDAT,C命令字按位依次送给DSBMOVR,#WR:DJNZR,WR保证写过程持续μsDJNZR,WR未送完一个字节继续SETBDATRET------------------------READ:CLREAMOVR,#循环次读一个字节RD:CLRDATMOVR,#NOP低电平持续μsSETBDAT口线设为输入RD:DJNZR,RD等待μsMOVC,DAT主机按位依次读入DSB的数据RRCA读取的数据移入AMOVR,#RD:DJNZR,RD保证读过程持续μsDJNZR,RD读完一个字节的数据存入A中SETBDATRET------------------------        主机控制DSB完成温度转换必须经过三个步骤:初始化、ROM操作指令、存储器操作指令。必须先启动DSB开始转换再读出温度转换值。假设一线仅挂接一个芯片使用默认的位转换精度外接供电电源可写出完成一次转换并读取温度值子程序GETWD。    GETWD:LCALLINIT    MOVA,#CCH    LCALLWRITE发跳过ROM命令    MOVA,#H    LCALLWRITE发启动转换命令    LCALLINIT    MOVA,#CCH    LCALLWRITE发跳过ROM命令    MOVA,#BEH    LCALLWRITE发读存储器命令    LCALLREAD    MOVWDLSB,A    温度值低位字节送WDLSB    LCALLREAD    MOVWDMSB,A    温度值高位字节送WDMSB    RET    ……        子程序GETWD读取的温度值高位字节送WDMSB单元低位字节送WDLSB单元再按照温度值字节的表示格式及其符号位经过简单的变换即可得到实际温度值。        如果一线上挂接多个DSB、采用寄生电源连接方式、需要进行转换精度配置、高低限报警等则子程序GETWD的编写就要复杂一些限于篇幅这一部分不再详述请参阅相关内容。        我们已成功地将DSB应用于所开发的“家用采暖洗浴器”控制系统中其转换速度快转换精度高与微处理器的接口简单给硬件设计工作带来了极大的方便能有效地降低成本缩短开发周期。

VIP免券下载文档

用户评价(0)

关闭

新课改视野下建构高中语文教学实验成果报告(32KB)

抱歉,积分不足下载失败,请稍后再试!

提示

试读已结束,如需要继续阅读或者下载,敬请购买!

文档小程序码

使用微信“扫一扫”扫码寻找文档

1

打开微信

2

扫描小程序码

3

发布寻找信息

4

等待寻找结果

我知道了
评分:

/6

数字温度传感器DS18B20的原理与应用

VIP

在线
客服

免费
邮箱

爱问共享资料服务号

扫描关注领取更多福利