DS18B20简介
特点:
1.电压范围宽,为3——5.5V;
2.单线接口方式,DS18B20与微处理器连接仅需要一条口线即可实现双向通信;
3.支持多点组网功能,多个DS18B20可以并联在唯一的三线上;
4.使用中无需外围原件,全部传感器及转换电路集成在形如一只三极管的集成电路里;
5.温度测量范围为-55~+125℃,在-10~+85℃时精度为±0.5℃;
6.可编程的分辨率为9~12位,分别对应0.5,0.25,0.125,0.0625℃;
7.在9位分辨率时最多93.75ms把温度转化成数字,在12位时最多在750ms把温度转化成数字;
8.测量结果直接输出数字温度信号,以一根总线串行传送给CPU,同时可传送CRC校验码,抗干扰能力强;
9.负压特性:电源极性接反时,芯片不会因为发热而烧毁,但不能正常工作。
结构:
1.64位光刻只读存储器,包含8位系列码,48位序列号,8位CRC,光刻CRC使每个DS18B20各不相同,可以实现一根总线上挂接多个DS18B20。
2.温度的转换规则:BS18B20的核心功能是可以直接读出数字的温度数值,其精度是用户可编程的。在上电状态下默认的精度为12位。如果温度为正,高字节的前五位为0,如果温度为负,高字节的前五位为1,实际温度需要取反码计算。
DS18B20启动后保持低功耗等待状态,当总线控制器发出44H的命令后,执行温度测量和AD转换的操作,结束转换操作后,产生的温度数据以两个字节的形式存储在高速缓存存储器的温度寄存器章,DS18B20保持等待的状态。
高速暂存器的字节组成
3.温度传感器的存储器:包括一个高度的暂存器RAM和一个EEPROM,后者存放了高温度和低温度触发器TH,TL和配置寄存器。
4.配置寄存器:为存储器的第四位,通过设定R0和R1位来设定精度,上电时默认为12位的精度。
暂存器的位7和0~4位被器件保留,禁止写入。
DS18B20的工作步骤
1.DS18B20初始化
2.执行ROM指令
3.执行DS18B20的功能指令
1.DS18B20初始化
1.数据线拉低。
2.延时480us(480—960us)。
3.数据线拉高。
4.延时约80us,若初始化成功,那么会在15—60us内产生一个由DS18B20返回的低电平0(在这段时间内可以进行超时判断)。
5.CPU读到数据线上的低电平,延时一段时间。
(步骤3到步骤5至少需要480us)
2.DS18B20写时序(CPU往DS18B20中写字节)
1.数据线先置低电平。
2.延时15us。
3.从低到高发送数据。
4.延时60us。
5.数据线拉到高电平。
6.重复1—5步骤,直到一个字节发送完成。
7.数据线拉高。
3.DS18B20读时序(CPU从DS18B20中读取字节)
1.将数据线拉低
2.延时1us。
3.将数据线拉高,释放总线准备读数据
4.延时10us。
5.读数据线一个状态位,处理数据。
6.延时45us。
(重复1—7步骤,直到一个字节被读完)
ROM指令
RAM指令