DS18B20 的使用方法是什么
DS18B20是DALLAS公司推出的单总线温度传感器,因其具有结构简单、精度高等优点,而广泛应用于温度监控等单片机应用系统。
DS18B20是常用的数字温度传感器,其输出的是数字信号,具有体积小,硬件开销低,抗干扰能力强,精度高的特点。DS18B20数字温度传感器接线方便,封装成后可应用于多种场合,如管道式,螺纹式,磁铁吸附式,不锈钢封装式,型号多种多样,有LTM8877,LTM8874等等。
主要根据应用场合的不同而改变其外观。封装后的DS18B20可用于电缆沟测温,高炉水循环测温,锅炉测温,机房测温,农业大棚测温,洁净室测温,弹药库测温等各种非极限温度场合。耐磨耐碰,体积小,使用方便,封装形式多样,适用于各种狭小空间设备数字测温和控制领域。
1.DS18B20的引脚及性能指标DS18B20有3个引脚,分别是:
1)GND(引脚1),接地引脚。
2)DQ(引脚12),单总线的数据输入/输出和时钟信号引脚。
3)VDD(引脚3),接外部电源(电压范围为+3~+5.5V)的引脚,若采用寄生电源方式供电,则该引脚应接地。
DS18B20的主要性能指标有:
1)可测温度的范围为-55~+125℃。
2)温度分辨率可以配置为9~12位,在12位时的单次转换时间为750ms。3)温度测量在-10~+85℃时,测量精度为±0.5℃。
4)可以设置温度的上、下限报警值,并存在其内部的非易失存储器中。5)能够识别产生温度报警的器件。
2.DS18B20的操作指令
在单总线通信中,主机首先选择与之通信的DS18B20,然后通过给DS18B20发操作命令来控制其工作。DS18B20的所有操作命令均以8位二进制数表示,见表6-3由表6-3可知,ROM命令主要用于DS18B20的定位(如确定总线上哪一个DS18B20出现了报警),而存储控制命令主要用于控制温度转换和数据的读、写等。
表6-3 DS18B20的ROM命令
(1)DS18B20的ROM序列号
ROM序列号是每个单总线接口器件都有的唯一的编号,共64位,其中,最后8位是厂家号(Family Code),DS18B20的厂家号是10H;中间48位是序列号(Serial Number);最高8位是CRC冗余检验码(CRC Code)。
(2)DS18B20内部的存储结构
DS18B20内部存储资源由高速暂存器和EEPROM构成,如图6-22所示。其中,暂存器的第4个字节是配置寄存器(见表6-4),其第6位和第5位用于设置温度传感器的位数(即分辨率)。
图6-22 DS18B20的存储结构
表6-4 DS18B20的配置寄存器
DS18B20的默认分辨率为12位。温度值的低字节和高字节分别存放于暂存器的字节0和字节1。另外,DS18B20可以采集正、负温度,因此温度以补码形式存放。采用12位分辨率时的温度存放格式见表6-5,其中:
1)字母“S”代表温度的符号位,这些位为1时,温度为负数,否则为正数。
2)表格中的数字为对应二进制位的权重。其中低字节的bit3~bit0是二进制小数位,其余位是整数位。例如,若温度数据为0FE6FH(1111 1110 0110 1111B),则温度值为-25.0625=-1×211+1×210+1×29+1×28+1×27+1×26+1×25+0×24+0×23+1×22+1×21+0×20+1×2−1+1×2−2+1×2−3+1×2−4。在DS18B20复位时,暂存器字节0和字节1的值分别是50H和05H,则温度值为85℃。
表6-5温度存放格式
3.DS18B20的使用方法
若DS18B20采用其默认配置(12位的温度分辨率),并假设总线上只存在一个DS18B20,则DS18B20的使用步骤如下:
1)检测DS18B20是否存在(在线),若存在则进入下一步操作,否则不能进行通信。2)向DS18B20发送命令0CCH,即跳过ROM匹配环节。
3)向DS18B20发送命令44H,启动温度转换。
4)向DS18B20发送命令0BEH,准备读取转换结果。
5)连续从DS18B20的暂存器读取9个字节数据,其中第0个和第1个字节分别为温度的低字节和高字节。
DS1820使用中注意事项
DS1820虽然具有测温系统简单、测温精度高、连接方便、占用口线少等优点,但在实际应用中也应注意以下几方面的问题:
1、较小的硬件开销需要相对复杂的软件进行补偿,由于DS1820与微处理器间采用串行数据传送,因此,在对DS1820进行读写编程时,必须严格的保证读写时序,否则将无法读取测温结果。在使用PL/M、C等高级语言进行系统程序设计时,对DS1820操作部分最好采用汇编语言实现。
2、在DS1820的有关资料中均未提及单总线上所挂DS1820数量问题,容易使人误认为可以挂任意多个DS1820,在实际应用中并非如此。当单总线上所挂DS1820超过8个时,就需要解决微处理器的总线驱动问题,这一点在进行多点测温系统设计时要加以注意。
3、连接DS1820的总线电缆是有长度限制的。试验中,当采用普通信号电缆传输长度超过50m时,读取的测温数据将发生错误。当将总线电缆改为双绞线带屏蔽电缆时,正常通讯距离可达150m,当采用每米绞合次数更多的双绞线带屏蔽电缆时,正常通讯距离进一步加长。这种情况主要是由总线分布电容使信号波形产生畸变造成的。因此,在用DS1820进行长距离测温系统设计时要充分考虑总线分布电容和阻抗匹配问题。
4、在DS1820测温程序设计中,向DS1820发出温度转换命令后,程序总要等待DS1820的返回信号,一旦某个DS1820接触不好或断线,当程序读该DS1820时,将没有返回信号,程序进入死循环。这一点在进行DS1820硬件连接和软件设计时也要给予一定的重视。测温电缆线建议采用屏蔽4芯双绞线,其中一对线接地线与信号线,另一组接VCC和地线,屏蔽层在源端单点接地。
上一篇:DAC0832的扩展方式有哪些?