Functional Description
http://www.motorola.com/computer/literature
3-25
3
I
2
C Random Read
The I
2
C random read begins in the same manner as the I
2
C byte write. The
first step in the programming sequence should be to test the i2_cmplt bit
for the operation-complete status. The next step is to initiate a start
sequence by first setting the i
2
_start and i
2
_enbl bits in the I
2
C Control
Register and then writing the device address (bits 7-1) and write bit (bit
0=0) to the I
2
C Transmitter Data Register. The i
2
_cmplt bit will be
automatically clear with the write cycle to the I
2
C Transmitter Data
Register. The I
2
C Status Register must now be polled to test the i
2
_cmplt
and i
2
_ackin bits. The i
2
_cmplt bit becomes set when the device address
and write bit have been transmitted, and the i
2
_ackin bit provides status as
to whether or not a slave device acknowledged the device address. With
the successful transmission of the device address, the word address will be
loaded into the I
2
C Transmitter Data Register to be transmitted to the slave
device. Again, i
2
_cmplt and i
2
_ackin bits must be tested for proper
response. At this point, the slave device is still in a write mode. Therefore,
another start sequence must be sent to the slave to change the mode to read
by first setting the i
2
_start and i
2
_enbl bits in the I
2
C Control Register and
then writing the device address (bits 7-1) and read bit (bit 0=1) to the I
2
C
Transmitter Data Register. After i
2
_cmplt and i
2
_ackin bits have been
tested for proper response, the I
2
C master controller writes a dummy value
(data=don’t care) to the I
2
C Transmitter Data Register.This causes the I
2
C
master controller to initiate a read transmission from the slave device.
Again, i2_cmplt bit must be tested for proper response. After the I
2
C
master controller has received a byte of data (indicated by i
2
_datin=1 in the
I
2
C Status Register), the system software may then read the data by polling
the I
2
C Receiver Data Register. The I
2
C master controller does not
acknowledge the read data for a single byte transmission on the I
2
C bus,
but must complete the transmission by sending a stop sequence to the slave
device. This can be accomplished by first setting the i
2
_stop and i
2
_enbl
bits in the I
2
C Control Register and then writing a dummy data (data=don’t
care) to the I
2
C Transmitter Data Register. The I
2
C Status Register must
now be polled to test i
2
_cmplt bit for the operation-complete status. The
stop sequence will relinquish the ASIC master’s possession of the I
2
C bus.
shows the suggested software flow diagram for programming
the I
2
C random read operation.
Summary of Contents for MVME5100 Series
Page 1: ...MVME5100 Single Board Computer Programmer s Reference Guide V5100A PG2 September 2001 Edition ...
Page 16: ...xvi ...
Page 20: ...xx ...
Page 28: ...xxviii ...
Page 62: ...1 34 Computer Group Literature Center Web Site Product Data and Memory Maps 1 ...
Page 278: ...3 88 Computer Group Literature Center Web Site System Memory Controller SMC 3 ...
Page 288: ...4 10 Computer Group Literature Center Web Site Hawk Programming Details 4 ...
Page 320: ...Index IN 12 Computer Group Literature Center Web Site I N D E X ...