Инструкция по эксплуатации Rainbow Electronics DS2490
Страница 28
DS2490
28 из 49
SEARCH ACCESS (Адресация путем поиска) — Команда SEARCH ACCESS используется либо для
адресации прибора при помощи команды Поиск ПЗУ, либо для идентификации приборов, подключен
ных к активным сегментам сети 1 Wire. Тип поиска определяется значением встроенного командного
бита SM. Встроенный бит RTS используется для управления информацией о несовпадении. Кроме то
го, для очистки буфера команд Обмена данными и FIFO буферов конечных точек EP2 и EP3 в случае
возникновения ошибки при выполнении команды может быть использован встроенный командный
бит F. Код ошибки NRS указывает на то, что при поиске ПЗУ, по крайней мере, на один из 64 х битов
не было получено ответа. Перед выполнением команды в FIFO буфер конечной точки EP2 должны
быть предварительно помещены данные идентификатора ПЗУ. Если размер возвращаемых данных пре
вышает размер FIFO буфера конечной точки EP3, то, чтобы избежать переполнения, во время выполне
ния команды необходимо контролировать состояние буфера (и, при необходимости, считывать из него).
Параметры команды:
2 байта: 1 байт — размер страницы, 1 байт — адрес страницы. Байт размера страни
цы указывает число байтов, составляющих страницу. Обычно размер страницы со
ставляет 32 байта для памяти данных, 8 байтов для памяти состояния и 40 байтов для
денежных iButton. Значение 0x00 соответствует странице размером 256 байтов. Ад
рес страницы задает номер страницы, используемый при первой попытке чтения
Данные EP2:
Длина
Описание
9 байт
8 байтный идентификатор ПЗУ адресуемого прибора 1 Wire, за
которым следует код команды 1 Wire для «Расширенного чтения
памяти» (Extended Read Memory)
Данные EP3:
Длина
Описание
Если CH = 1 или страница
не переадресована
1 байт + размер
страницы
Номер страницы и ее содержимое
Если CH = 0 и страница
переадресована
1 байт
Номер страницы, на которую была переадресована требуемая
страница
Регистр результатов:
Код
Условие
RDP, CRC, NRS
ICP = 0, NTF = 0 или 1: обнаружена ошибка
0x00
ICP = 0, NTF = 1: ошибок не обнаружено
Отсутствует
ICP = 0, NTF = 0: ошибок не обнаружено
Отсутствует
ICP = 1
Параметры команды:
2 байта: 1 байт — команда 1 Wire (Поиск ПЗУ или Условный поиск ПЗУ), 1 байт — чис
ло приборов. Байт числа приборов определяет максимальное число приборов, которые
будут обнаружены во время одного вызова команды. Значение 0x00 указывает на то,
что будут обнаружены все приборы, присутствующие в сети 1 Wire
Данные EP2:
Длина
Описание
8 байт
Идентификатор ПЗУ адресуемого прибора 1 Wire (SM = 0) или
идентификатор ПЗУ, с которого начнется процесс поиска (SM = 1)
Данные EP3:
Длина
Описание
Если SM = 0: Отсутствует
Возвращаемые данные отсутствуют
Если SM = 1:
Переменная,
8 байтные блоки
Идентификаторы ПЗУ обнаруженных приборов, за которыми следу
ют 8 байтов данных о несовпадении (если RTS = 1 и число приборов
в сети 1 Wire превышает значение, указанное во втором параметре)
Регистр результатов:
Код
Условие
EOS, NRS
ICP = 0, NTF = 0 или 1: обнаружена ошибка
0x00
ICP = 0, NTF = 1: ошибок не обнаружено
Отсутствует
ICP = 0, NTF = 0: ошибок не обнаружено
Отсутствует
ICP = 1