Возникла такая проблема...
Необходимо осуществить работу часов при помощи микросхемы DS1994 из серии IButton и микроконтроллера mega128L. При получении новой DS1994 я обнаружил, что она защищена от записи специальными битами и никак не могу их снять.
В официальной документации написано, что необходимо осуществить команду копирования буфера три раза подряд. Сделал: биты защиты WPC WPI WPR как стояли, так и стоят (при этом бит RO был установлен в 1, осциллятор работает, DSEL тоже стоит в 1).
После неудачи начал тестировать процедуру записи на ошибки: проверяю состояние битов АА (Authorization Accepted), OF (флаг переполнения) и PF (флаг неполного байта). Везде результат отрицательный: после записи и последующего чтения scratchpad биты OF и PF в нуле, а после первого копирования scratchpad в память флаг AA устанавливаниеся в 1. Делаю процедуру копирования 3 раза подряд - защита не снимается
.
И еще второй вопрос из той же темы: почему при запуске программы на микроконтроллере микросхема бывает недоступна в течение некоторого времени? Это выражается в том, что DS1994 не отвечает на запросы, например, при попытке прочесть регистр статуса читаются одни единицы.
Уже не знаю что и думать, на 10 раз проверял установки задержек в интерфейсе - вроде правильно, сам интерфейс должен работать. Кроме того, раньше уже работал с однопроводным MicroLan, и все было ок.
Если кто-то ранее имел дело с DS1994, буду рад любой помощи. Заранее благодарю!