Immer dann, wenn er adressiert wurde. Das entscheidet entweder die Hardware-Mimik des Slave-Controllers, sofern man ihn als (ideal: interruptgetriebenen) Slave konfiguriert hat - oder die Firmware.
Naja, Interrupt oder eben Polling. Mehr Auswahl gibt es meines Wissens nicht.
Dann bleibt die Kommunikation stecken - ohne wenn und aber - so ist I2C spezifiziert. Abhilfe kann ein Timeout-Zähler und Warteschleifenabbruch schaffen.
Lesezeichen