新闻中心

EEPW首页>测试测量>设计应用> 基于1一Wire总线的嵌入式测温系统设计

基于1一Wire总线的嵌入式测温系统设计

作者: 时间:2009-05-08 来源:网络 收藏
温度作为一种基本的环境因素,直接影响着工业控制、化工、医药、航空航天等生产工艺过程。因此如何安全、可靠、快速地取得温度值就显得尤为重要。随着计算机软件、硬件技术及集成电路工业的迅速发展,各种温度采集技术不断出现。这里介绍一种基于DSl8820的1一系统设计。
1一是美国Dallas公司的一项专有技术――单技术(1一Bus Technology),该技术在理论上每条总线连接的1一Wire器件数量可达248。支,适用于单主机、多从设备的系统。它与其他串行通信方式最大的不同在于它采用单根信号线双向传输数据。以其节省I/0口线资源,成本低廉,体积小,便于总线扩展和维护等优点,在串行数据通信领域占有越来越重要的地位。
1一Wire网络构成简单,一般情况下只使用电源线、地线、信号线3条线,当使用寄电方式供电时只需电源/信号线和地线2根线。
DSl8820是Dallas公司生产的一种简便易用的数字式温度传感器。它体积小巧,温度测量范围广(一55~+125℃),测量分辨率可选,分别为0.062 5 oC,0.125℃,0.25℃,0.5℃。

1 主要器件结构及工作原理
1.1 DSl8820结构及工作原理

Dallas公司生产的DSl8820可编程单总线数据温度传感器共有3种封装形式:8管脚SO封装、8管脚μSOP封装和3管脚TO一92封装。该设计中为了节省空间采用3管脚的TO一92封装,它的管脚排列图和底视图如图1所示,其中GND为接地管脚,VDD为外部供电电源管脚,DQ为数据输入/输出管脚。

本文引用地址://m.amcfsurvey.com/article/195868.htm

DSl8820内部结构如图2所示,包括供电电路、64 b ROM、内部存储器和存储器控制逻辑4部分。64 b ROM中存储着每个DSl8820芯片独有的64位ROM ID码,这是系统用来识别DSl8820芯片的标志。其中最低8位是DSl8820的家族码:28H。中间48位是每片DSl8820独有的串行码。最高8位是用前56位计算得到的循环冗余校验码。
内部存储器由9。Byte SRAM和3 B E。PROM组成。SRAM中:ByteO和Bytel是温度寄存器,用来存储采集到的温度值。Byte0的内容是温度的低8位,Bytel是温度的高8位。。Byte2和Byte3为高低温警报寄存器。Byte4为配置寄存器,用来设置器件温度采集精度。这3个字节中的值可以拷贝到E。PROM中,保证掉电后数据不会丢失,重新上电后E。PROM中的值将自动重载人SRAM中。Byte5,Byte6,Byte7保留为内部使用。Byte8存储CRC码。
DSl8820有2种供电方式:寄电方式和外部供电方式。寄电方式非常适用于需要远程温度测量和空间受限的场合。当工作于这种方式时,管脚3必须接地。总线处于高电平时DSl8820通过DQ管脚从1一Wire网络上窃取能量并存储一部分电荷到寄电电容中,总线处于低电平时释放寄电电容中的电荷给DSl8820供电。在寄电方式中寄电电容中存储的电荷能满足DSl8820大部分操作的要求,但是当执行温度转换和数据拷贝命令时操作电流提高到1.5 mA,这将导致内部弱上拉电阻上产生不可接受的压降,同时这个电流也高于寄电电容能够提供的电流,所以必须外接强上拉电路以满足这一类命令的要求。当处于外部供电方式下时则不需要外接强上拉电路,直接通过管脚3从外部供电。

在温度超过100℃条件时,处于寄电方式下的DSl8B20可能不能保证正常通信,所以在某些特殊场合下使用外部供电方式比寄电方式更加可靠。DSl8820是一种可编程的基于1一Wire总线标准的数字式温度传感器,可以通过SRAM中的配置寄存器来选择测量分辨率,其上电默认值为12位精度,对应分辨率为0.062 5℃。其他可选择的精度包括11位、 10位和9位,对应的分辨率分别为O.125℃,O.25℃, O.5℃。DSl8820上电后处于空闲状态,可通过微处理器发送转换命令44H来启动1次温度测量和A/D转换,并将结果存储在温度寄存器中,此后DSl8820返回空闲状态。如果Dsl8820处于外部供电模式,微处理器可以发送“读时隙”来查看温度采集转换过程是否完毕,如果结束则应答为1,没结束则应答为O。如果 DSl8820处于寄电方式下则不能使用该功能。DSl8820的温度数据值是以摄氏度为单位的。
1.2 DS2480B介绍及工作原理
1一Wire通信协议可以通过微处理器上的一个I/O 引脚实现,但是要创建可靠的1一Wire网络,必须提供正确的时序和适当的输出电压摆率,如果1一Wire主机发送的时序不正确会导致与1一Wire从器件之间的通信间断或完全失败,并限制网络的长度。DS2480B是从串行接口到1一Wire网络协议转换的桥接器。使用这个桥接器和UART连接就能产生严格定时和电压摆率控制的1一Wire波形,并能减轻主机产生1一Wire时序信号和对1一Wire总线进行采样的负担。Ds2480B 接收指令与数据,执行1一Wire操作,并将结果返回至主机。图3为1一Wire复位操作、写1/读数据操作、写 0操作的时序图,这3种操作是1一Wire操作中必须具备的基本操作,几乎所有的其他1一Wire操作都可以由这3种操作构成。由于该设计工作在Flexible模式下,以下提供的参数都是Flexible模式下适用的参数。

linux操作系统文章专题:linux操作系统详解(linux不再难懂)

上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭