①系统的特性:测温精度为士0.5℃;测温范围为-55℃~+125℃ ;温度传感器可编程的分辨率为9~12位 温度转换为12位数字格式最大值为750毫秒 用户可定义的非易失性温度报警设置 ;可以通过数据线供电,具有超低功耗工作方式。
②系统成本:新型大规模集成电路随着计算机技术和微电子技术的发展,自身功能变得越来越强大,体积也越来越小,而价格缺越来越低。DS18B20的价格在五元人民币左右,大小相当于我们平常使用的三极管。
③系统复杂度:由于DS18B20是单总线器件,微处理器与其接口时仅需占用1个I/O端口且一条总线上可以挂接几十个DS18B20,测温时无需任何外部元件,因此,与模拟传感器相比,可以大大减少接线的数量,降低系统的复杂度,减少工程的施工量。
④系统的文护:随着微电子技术的发展,传感器的引线鱼类越少减少,系统接口配置也大为简化,这给系统的调试带来方便。同时又因为DS18B20是全数字元器件,故障率很低,抗干扰性强,大大减少了系统的日常文护工作。
3.2.3 DS18B20供电方式
DS18B20温度传感器只有三根外引线:单线数据传输总线端口DQ ,外供电源线VDD,共用地线GND。通过这三根外引线,DS18B20同时拥有两种不同的供电方式:在这种状态下DS18B20的VDD端口接地。通过这样的方式,它只能在内部电容空闲时从数据线获取能量,来完成温度转换,因此系统完成温度转换所需的时间较长;另一种是寄生电源供电方式,相应的完成温度测量的时间较短,为保证在有效的DS18B20时钟周期内提供足够的电流,可用单片机的一个I/O口来完成对总线的上拉。
当DS18B20进行温度A/D转换操作或者写存储器操作时,总线上需有有强的上拉,上拉的开启时间最大可设为10us。但需要注意的是,如果采用寄生电源供电时,VDD一端必须接地。在温度高于100℃的情况下,则不宜采用寄生电源供电方式,而应采用外部电源供电方式。
3.2.4 DS18B20的数据操作
(1)初始化 初始化过程是主机通过向作为从机的DS18B20芯片发一个有时间宽度要求的初始化脉冲实现的。只有在初始化完成后,才可进行读写操作。单总线的所有处理均从初始化开始。
(2) ROM操作命令 总线主机检测到DS18B20的存在 便可以发出ROM操作命令。命令表如下表所示:
表3: ROM操作命令
指 令 代 码
Read ROM(读ROM) [33H]
Match ROM(匹配ROM) [55H]
Skip ROM(跳过ROM] [CCH]
Search ROM(搜索ROM)
[F0H]
Alarm search(告警搜索)
[ECH]
(3)存储器操作 DS18B20内部存储器由一个高速暂存器和一个非易失性可擦出EEPRAM组成。其中,高速暂存器用来保持数据的完整性,EEPRAM用来存储高低温报警触发值TH和TL。
DS18B2可以采用如下的存储器操作命令:
表4: 存储器操作命令
指令 代码
Write Scratchpad(写暂存存储器) [4EH]
Read Scratchpad(读暂存存储器) [BEH]
Copy Scratchpad(复制暂存存储器) [48H]
Convert Temperature(温度变换) [44H]
Recall EPROM(重新调出) [B8H]
Read Power supply(读电源) [B4H]
单总线上的所有传输过程都是以初始化开始的。而初始化过程则是由主机发出的复位脉冲和从机响应的应答脉冲组成。在主机初始化进行的过程,主机通过拉低单总线来产生复位脉冲。然后,主机释放总线进入接收模式。当总线被释放后,上拉电阻将单总线拉高。在单总线器件检测到上升沿后,延时15~60us,接着通过拉低总线60~240us,以产生应答脉冲。 STC89C52单片机活体水产品长距离物理监控系统设计(10):http://www.youerw.com/zidonghua/lunwen_7007.html