Motorola DSP56009 User Manual page 177

24-bit digital signal processor
Table of Contents

Advertisement

In order for the DSP to initiate a data transfer the following actions are to be
performed:
• The DSP tests the HIDLE status bit.
• If the HIDLE status bit is set, the DSP writes the slave device address and the
R/W bit to the most significant byte of HTX.
• The SHI generates a Start event.
• The SHI transmits one byte only, internally samples the R/W direction bit
(last bit), and accordingly initiates a receive or transmit session.
• The SHI inspects the SDA level at the ninth clock pulse to determine the ACK
value. If acknowledged (ACK = 0), it starts its receive or transmit session
according to the sampled R/W value. If not acknowledged (ACK = 1), the
HBER status bit in HCSR is set, which will cause an SHI Bus Error interrupt
request if HBIE is set, and a Stop event will be generated.
The HREQ input pin is ignored by the I
cleared, and considered if either of them is set. When asserted, HREQ indicates that
the external slave device is ready for the next data transfer. As a result, the I
device sends clock pulses for the full data word transfer. HREQ is deasserted by the
external slave device at the first clock pulse of the next data transfer. When
deasserted, HREQ will prevent the clock generation of the next data word transfer
until it is asserted again. Connecting the HREQ line between two SHI-equipped
DSPs, one operating as an I
enables full hardware handshaking.
5.6.4.1
Receive Data in I
A receive session is initiated if the R/W direction bit of the transmitted slave device
address byte is set. Following a receive initiation, data in SDA line is shifted into
IOSR MSB first. Following each received byte, an acknowledge (ACK = 0) is sent at
the ninth clock pulse via the SDA line if the HIDLE control bit is cleared. Data is
acknowledged bytewise, as required by the I
HRX FIFO when the complete word (according to HM0–HM1) is filled into IOSR. It
is the responsibility of the programmer to select the correct number of bytes in an I
frame so that they fit in a complete number of words. For this purpose, the slave
device address byte does not count as part of the data, and therefore, it is treated
separately.
2
If the I
C slave transmitter is acknowledged, it should transmit the next data byte. In
order to terminate the receive session, the programmer should set the HIDLE bit at
the last required data word. As a result, the last byte of the next received data word is
not acknowledged, the slave transmitter releases the SDA line, and the SHI generates
the Stop event and terminates the session.
MOTOROLA
2
C master device if HRQE1 and HRQE0 are
2
C master device and the other as an I
2
C Master Mode
2
C bus protocol, and is transferred to the
DSP56009 User's Manual
Serial Host Interface
SHI Programming Considerations
2
C slave device,
2
C master
2
C
5-29

Advertisement

Table of Contents
loading

Table of Contents