Илья (30.07.2020 18:29, просмотров: 583) ответил =AK= на Если вдаваться в детали:
еще гипотеза. используется I2C аппаратный или программный?
Программный по правильному нужно делать через управление TRIS
(эмуляция ОК/OD) а не PORT. По стандарту Slave может затягивать
SCL. Если управлять через PORT, то редко (но возможно) появление
конфликта (Slave удерживает SCL в нуле если не готов, а Master
тянет его к 1) - отсюда лишние токи и/или неправильное считывание
данных и/или подвешивание Slave (с автоматическим "развешиванием"
последующим общением).