Инструкция по эксплуатации Rainbow Electronics DS1982

Страница 14

Advertising
background image

DS1982

быть 0, должен быть выдан импульс сброса и программирование байта по этому адресу должно
быть повторено. Если байт состояния EPROM содержит 0 в нужных позициях, значит
программирование прошло успешно и DS1982 автоматически инкрементирует свой счетчик
адреса для выбора следующего байта в поле состояния EPROM. Младший байт нового 2-байтного
адреса загружается в генератор 8-битной CRC в качестве начального значения. Затем мастер шины
с помощью восьми интервалов записи передает следующий байт данных.
Как только DS1982 принимает этот байт данных в блокнот, данные вдвигаются в генератор CRC,
который загружен младшим байтом текущего адреса. Результатом является 8-битная CRC нового
байта данных и младшего байта нового адреса. После передачи байта данных мастер считывает
эту 8-битную CRC из DS1982 с помощью восьми интервалов чтения, чтобы убедиться в том, что
адрес инкрементирован правильно и данные переданы без ошибок. Если CRC, прочитанная
мастером, является неправильной, должен быть выдан импульс сброса и команда записи
состояния должна быть повторена. Если прочитанная мастером CRC является правильной, мастер
выдает импульс программирования и выбранный байт состояния записывается.
Заметьте, что при первоначальном проходе по блок-схеме команды записи состояния 8-битная
CRC является результатом сдвига в генератор CRC байта команды, 2-байтного адреса и байта
данных. При последующих проходах по блок-схеме, когда DS1982 должен автоматически
инкрементировать свой адресный счетчик, генерируется 8-битная CRC, которая является
результатом загрузки (а не сдвига) младшего байта нового (инкрементированного) адреса в
генератор CRC, а затем сдвига нового байта данных.
В обоих случаях решение продолжать запись (выдавать импульс программирования на DS1982)
принимает исключительно мастер, так как DS1982 не может определить, совпадает ли 8-битная
CRC, вычисленная мастером, с 8-битной CRC, вычисленной в DS1982. Если неправильная CRC
будет игнорирована и мастер выдаст импульс программирования, произойдет неверное
программирование DS1982. Заметьте также, что DS1982 всегда инкрементирует свой внутренний
счетчик адреса после приема восьми интервалов чтения, использующихся для подтверждения
программирования выбранного байта состояния EPROM. Решение продолжать запись снова
принимает исключительно мастер; поэтому если байт состояния EPROM не совпадает с
переданным мастером байтом данных, но мастер продолжит запись, произойдет неверное
программирование DS1982. Процесс записи байтов состояния может быть прерван в любой
момент выдачей импульса сброса.

1-ПРОВОДНАЯ ШИНА
1-проводная шина представляет собой систему, в которой имеется один мастер шины и одно или
несколько подчиненных устройств. Во всех случаях DS1982 является подчиненным устройством.
Мастером шины обычно является микроконтроллер. Обсуждение данной системы можно разбить
на три части: аппаратная конфигурация, последовательность пересылки и 1-проводные сигналы
(типы сигналов и их временные параметры). Протокол 1-проводной шины определяет пересылки с
помощью понятия специальных временных интервалов, которые начинаются спадом импульса
синхронизации, выдаваемого мастером. Более детальное описание протокола приведено в главе 4
книги «Book of DS19xx iButton Standards».

АППАРАТНАЯ КОНФИГУРАЦИЯ
1-проводная шина по определению имеет только одну линию; важным является тот факт, что
каждое устройство, подключенное к шине, может в соответствующие моменты времени ею
управлять. Для обеспечения такой возможности каждое устройство, подключенное к 1-проводной
шине, должно иметь выход с открытым стоком или с тремя состояниями. DS1982 имеет выход с
открытым стоком, его внутренняя схема эквивалентна показанной на рис. 7. Мастер шины может
иметь такую же эквивалентную схему. Если двунаправленные выводы отсутствуют, могут быть
соединены отдельные входной и выходной выводы.

14 из 23

Advertising