关于DS1624 2线通信SDA保持时间的说明

Abstract

DS1624的2线通信时序与I²C标准不同。本应用笔记详细描述了两者之间的差异。SDA信号并非由DS1624内部保持。在SCL信号下降沿结束前,一直由总线主机来保持SDA信号。

前言

本篇应用笔记详细说明了DS1624的2线时序与I²C之间的差异。在I²C中,SDA信号在从机内部被延迟了至少300ns,因此允许同时改变SCL和SDA电平。但DS1624并不针对SCL信号延迟SDA信号,因此在SCL完全转变为逻辑低电平前总线主机必须将SDA信号保持在正确的逻辑状态,以防止误触发START和STOP操作。

正确的时序

DS1624的SDA线并没有针对SCL进行内部延迟。因此,写入数据时,在SCL转变为低电平前,SDA的逻辑电平必须在DS1624外部被保持。否则,会被误认为是启动或停止信号。在2线总线上写逻辑“1”时,在SDA电平降低到安全的逻辑高域值电平VIH (0.7 x VDD最小)前,必须保证SCL电平已经低于逻辑低域值电平VIL (0.3 x VDD最大)。写逻辑“0”时,在SDA电平上升到VIL前,SCL电平必须已经低于VIL。产生START信号时,在SCL降低到VIH前SDA必须已经低于VIL。产生STOP信号时,SCL降低到VIH前SDA必须已高于VIH。每个器件的VIL和VIH值都进行了生产测试。以保证在整个电压和温度范围内,即使存在器件制造容差,这个时序都能正确运行。

图1.

图1.

图2.

图2.

总结

DS1624的时序与I²C标准相比有些差异。DS1624并不针对SCL在内部延迟SDA。因此要求系统主机在SCL下降沿保持SDA电平,以防止逻辑“1”被误认为是START信号,逻辑“0”被误认为是STOP信号。