不同序列号的DS18B20的温度。在实际应用中,DS18B20不需要外部任何元器件即可实现测温,测量温度范围在-55℃到+125℃之间。用户可以从9位到12位选择温度传感器的分辨率。同时DS18B20内部有温度上、下限告警设置。图3.7DS18B203.3.2?DS18B20的引脚功能TO-92封装的DS18B20的引脚排列见图1,其引脚功能描述如下表所示:表1DS18B20引脚功能序号名称引脚功能描述1GND地信号2DQ数据输入/输出引脚。开漏单总线接口引脚。当被用着在寄生电源下,也可以向器件提供电源。3VDD可选择的VDD引脚。工作于寄生电源时,此引脚必须接地。3.3.3?DS18B20的时序DS18B20采用的是1-Wire总线协议方式,即在一根数据线实现数据的双向传输,对STC89C52单片机来说,硬件上并不支持单总线协议,因此,必须采用软件的方法来模拟单总线的协议时序来完成对DS18B20芯片的访问。由于DS18B20是在一根I/O线上读写数据,因此,对读写的数据位有着严格的时序要求。DS18B20有严格的通信协议来保证各位数据传输的正确性和完整性。该协议定义了几种信号的时序:初始化时序、读时序、写时序。所有时序都是将主机作为主设备,单总线器件作为从设备。而每一次命令和数据的传输都是从主机主动启动写时序开始,如果要求单总线器件回送数据,在进行写命令后,主机需启动读时序完成数据接收。根据DS18B20的通讯协议,单片机控制DS18B20完成温度转换必须经过三个步骤:每一次读写之前都要对DS18B20进行复位操作,复位成功后发送一条ROM指令,最后发送RAM指令,这样才能对DS18B20进行预定的操作。复位要求主CPU将数据线下拉500微秒,然后释放,当DS18B20收到信号后等待16~60微秒左右后,发出60~240微秒的存在低脉冲,主CPU收到此信号表示复位成功。