29.01.2015 Views

STM32F101xx, STM32F102xx, STM32F103xx, STM32F105xx and ...

STM32F101xx, STM32F102xx, STM32F103xx, STM32F105xx and ...

STM32F101xx, STM32F102xx, STM32F103xx, STM32F105xx and ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Inter-integrated circuit (I 2 C) interface<br />

RM0008<br />

Communication flow<br />

In Master mode, the I 2 C interface initiates a data transfer <strong>and</strong> generates the clock signal. A<br />

serial data transfer always begins with a start condition <strong>and</strong> ends with a stop condition. Both<br />

start <strong>and</strong> stop conditions are generated in master mode by software.<br />

In Slave mode, the interface is capable of recognizing its own addresses (7 or 10-bit), <strong>and</strong><br />

the General Call address. The General Call address detection may be enabled or disabled<br />

by software.<br />

Data <strong>and</strong> addresses are transferred as 8-bit bytes, MSB first. The first byte(s) following the<br />

start condition contain the address (one in 7-bit mode, two in 10-bit mode). The address is<br />

always transmitted in Master mode.<br />

A 9th clock pulse follows the 8 clock cycles of a byte transfer, during which the receiver must<br />

send an acknowledge bit to the transmitter. Refer to the following figure.<br />

Figure 231. I 2 C bus protocol<br />

SDA<br />

MSB<br />

ACK<br />

SCL<br />

1 2 8 9<br />

Start<br />

condition<br />

Stop<br />

condition<br />

Acknowledge may be enabled or disabled by software. The I 2 C interface addresses (dual<br />

addressing 7-bit/ 10-bit <strong>and</strong>/or general call address) can be selected by software.<br />

The block diagram of the I 2 C interface is shown in Figure 232.<br />

626/995 Doc ID 13902 Rev 9

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!