Использую PIC18LF2520. Система состоит из 3 процессоров. Они обмениваются друг с другом по I2C. При этом один является мастером, а 2 других - слейвы. Один слейв я для отладки выключил.
Собственно суть проблемы: Мастер производит постоянное (через 10мс) чтение 16 байт с одного из слейвов. Сначала все идет по графику. А через некоторое время (может быть как 2мин, так и 40) мастер уходит в постоянную генерацию. Т.е. на линии SCL наблюдается постоянная генерация тактовых импульсов, а на SDA - постоянная 1. При этом что интересно процессор может так глючить какое-то время (обычно десятки минут) а затем восстановить нормальную работу. Перерыли казалось бы все... Кварц исправен, WDT включен на 4с., Подтяжка I2C 5,6кОм на питание.
И, кстати, еще, снимая питание с MCLR ноги обоих слейвов мастеру попрежнему кто-то в линии I2C отвечает. Фьюз = MCLREN. Так что оба слева вообще должны быть выключены... Кто тогда мастеру отвечает? Сам себе?
ПОМОГИТЕ!!! Тупим уже втроем... Все перебрали...