Скачать: https://github.com/geegrow/I2CTransport
Часто возникает проблема с использованием I2C при прерываниях по таймеру. Стандартная библиотека TwoWire не способна зваимодействовать с таймерами. Эта библиотека решает проблему и позволяет вам выбрать то, что вы хотите: TwoWire или аппаратную библиотеку I2C, которая может работать с преываниями. Более того, она позволяет получить доступ к I2C из любого места кода, как обычно делают со стандартной библиотекой Arduino Wire.
Мы также добавили параметр protectFreezing в каждую функцию send, потому что некоторые периферийные устройства могут время от времени зависать в вашей системе.
Для получения дополнительной информации вы можете посетить https://github.com/geegrow/I2CTransport