I2C zacyklení při přerušení komunikačních vodičů

Nevím jestli chápeš jak I2C funguje ale pokud master (to je Tvůj procesor) osloví I2C zařízení správnou adresou, tak zařízení přijetí adresy potvrzuje 9. bitem, tzv. ACK. Pokud se tak nestane, může funkce která se stará o komunikaci vrátit chybový kód. Navíc není od věci doplnit si do komunikace timeout. To znamená že pokud nepřichází odpovědi od zařízení a uplyne nastavený čas, program se s funkce nakonec vrátí (nejlépe opět s chybovým kódem).