
16
SMS45
2079  1.2  05/24/04
SUMMIT MICROELECTRONICS, Inc.
Preliminary Information
Figure 12.  Write Flow Chart
Acknowledge Polling
When the SMS45 is performing an internal Write operation
it will ignore any new Start conditions.  Since the device will
only return an acknowledge after it accepts the Start the
part can be continuously queried until an acknowledge is
issued, indicating that the internal Write cycle is complete.
See the flow chart for the proper sequence of operations for
polling.
READ OPERATIONS
Read operations are initiated with the R/W bit of the
identification field set to 1.  There are two different Read
options:  1. Current Address Byte Read, and 2. Random
Address Byte Read.
Current Address Read (memory only)
The SMS45 contains an internal address counter which
maintains the address of the last word accessed, incre-
mented by one.  If the last address accessed (either a
Read or Write) was to address location n, the next Read
operation would access data from address location n+1
and increment the current address pointer.  When the
SMS45 receives the Slave address field with the R/W bit
set to 1 it issues an acknowledge and transmits the 8-Bit
word stored at address location n+1.  The current address
byte Read operation only accesses a single byte of data.
The Master sets the SDA line to NACK and generates a
stop condition.  At this point the SMS45 discontinues data
transmission.
Random Address Read (Register and Memory)
Random address Read operations allow the Master to
access any memory location in a random fashion.  This
operation involves a two-step process.  First, the Master
issues a write command which includes the start condi-
tion and the Slave address field (with the R/W bit set to
Write), followed by the address of the word it is to Read.
This procedure sets the internal address counter of the
SMS45 to the desired address.  After the word address
acknowledge is received by the Master it immediately
reissues a Start condition, followed by another Slave
address field with the R/W bit set to READ.  The SMS45 will
respond with an Acknowledge and then transmit the 8 data
bits stored at the addressed location.  At this point the
Master sets the SDA line to NACK and generates a Stop
condition.  The SMS45 discontinues data transmission and
reverts to its standby power mode.
Sequential READ (Memory Only)
Sequential Reads can be initiated as either a current
address Read or random access Read.  The first word is
transmitted as with the other byte Read modes (current
address byte Read or random address byte Read);
however, the Master now responds with an Acknowledge,
indicating that it requires additional data from the SMS45.
The SMS45 continues to output data for each Acknowl-
edge received.  The Master terminates the sequential
Read operation by responding with a NACK, and issues
a Stop condition.  During a sequential Read operation the
internal address counter is automatically incremented
with each Acknowledge signal.  For Read operations all
address bits are incremented, allowing the entire array to
be read using a single Read command.  After a count of
the last memory address the address counter will rollover
and the memory will continue to output data.
    Next 
Operation
 a Write
    ACK
Returned
  Issue
Address
Proceed
   With
  Write
   Await
    Next
Command
Issue Stop
 Issue Slave
Address and
  R/W = 0
Issue  Stop
Write Cycle 
In Progress
Yes
No
Issue Start
2047 Fig12
Yes
No
I
2
C PROGRAMMING INFORMATION (CONTINUED)