DS1672
12 of 15
Data valid: The state of the data line represents valid data when, after a START condition, the
dat a line is st able for the durat ion o f the high per iod of the c lock s ig nal. The dat a o n the line must
be changed during the low perio d o f the clock s igna l. There is one clock pulse per bit of data.
Each data transfer is initiated with a START condition and terminated with a STOP condition.
The nu mber of data b ytes tr ansferr ed bet ween t he S T ART a nd the STOP condit ions is no t limit ed,
and is determined by the master device. The information is transferred byte-wise and each
receiver acknowledges with a ninth bit. Within the I2C bus specifications a standard mode
(100kHz clock rate) and a fast mo de (400kHz clo c k r ate) are defined.
Acknowledge: Each receiving device, when addressed, is obliged to generate an acknowledge
after the reception of each byte. The master device must generate an extra clock pulse that is
associated with t h is acknow ledge bit.
A device that acknowledges must pull dow n the SDA line during t he acknowledge clock pu lse in
such a way that the SDA line is stable LOW during the HIGH per iod o f the acknowledge re lat ed
clock pu lse. O f co urse, setu p and ho ld t imes must be t aken int o account . A ma ster must sig nal a n
end of data to the slave by not generating an acknowledge bit on the last byte that has been
clocked out of the sla ve. In t h is case, the s la ve mu st lea ve t he d ata line HIGH to enable the ma ster
to generate the ST OP co nd ition.
Figures 7 and 8 detail how dat a t r ansfer is accomplished on the I2C bus. Depending upon the state of the
R/W bit, two types o f data t r ansfer are poss ible:
1) Data transfer from a master transmitter to a slave receiver. The first byte transmitted by the
master is the slave address. Next fo llows a number of data bytes. T he slave returns an acknowledge
bit after each received byte.
2) Data transfer from a slave transmitter to a master receiver. The first byte (the slave address) is
transmitt ed by t he master. The slave then returns an acknow ledge bit. Next fo llo ws a number of d ata
bytes transmitt ed by t he slave to the master. The master returns an acknow ledge bit aft er all rece ived
byt es other t han the la st b yte. At t he end of the last r eceived byte, a “no t ack no wledge” is r etu r ned.
The master device generates all of the serial clock pulses and the START and STOP conditions. A
transfer is e nded w it h a STOP co ndit io n or with a repeated START condition. Since a repeated START
condition is also t he be ginnin g of the next se rial tran sfer, the bus wi l l not be releas ed.
The DS1672 can operate in t he following two mo des:
1) Slave receiver mode (DS1672 write mode): Serial data and clock are received through SDA and
SCL. After each byt e is rece ived, an ackno wledge bit is t r ansmit ted. START and STOP conditio ns ar e
recognized as the beginning and end of a serial transfer. Address recognition is performed by
hardware after r ecep tion of the slave addr ess a nd d irection bit ( F igure 7 ) . T he slave addr ess b yte is th e
first byte received after the START condition is generated by the master. The slave address byte
contains the 7-bit DS1672 address, which is 1101000, follo wed by the direct ion bit (R/W), wh ich for
a write is a 0. After receiving and decoding the slave address byte the DS1672 outputs an
acknowledge on the SDA line. After the DS1672 acknowledges the slave address + write bit, the
master trans mits a wor d address to the DS1672. This w ill set t he r egist er po int er o n t he DS 1672, w ith
the DS1672 acknowledging the transfer. The master may then transmit zero or more bytes of data,