гом 0.5°C
Встроенные часы реального времени (RTC) и тай-
•
мер имеют точность ±2 минуты в месяц при температуре окружающей среды от 0 до 45°C
Схема автоматически включается и измеряет тем-
•
пературу через программируемые пользователем
интервалы времени в диапазоне 1…255 мин
Регистрируется до 2048 последовательных измере-
•
ний температуры в защищенной энергонезависимой (NV) памяти
Записывается долговременная гистограмма темпе-
•
ратуры с разрешением 2.0°C
Программируется верхний и нижний порог допус-
•
тимых значений температуры
Записывается до 24 отметок времени и продолжи-
•
тельность интервалов, когда температура выходила за пределы установленного диапазона, ограниченного пороговыми значениями
512-байтная энергонезависимая память для чте-
•
ния/записи данных общего назначения
Обмен информацией с мастером (ведущим) шины
•
Стандартный диаметр 16 мм и протокол 1-Wire
•
гарантируют совместимость с семейством i
Форма в виде таблетки обеспечивает автоматиче-
•
ское центрирование в считывающем устройстве
Долговечный корпус из нержавеющей стали с вы-
•
гравированным регистрационным номером обладает стойкостью к воздействиям окружающей среды
Легко прикрепляется с помощью самоклеющейся
•
подложки, фиксируется собственным фланцем или
напрессовываемым кольцом
Детектор присутствия выдает сигнал подтвержде-
•
ния при первом поступлении питания от считывающего устройства
Соответствует требованиям UL#913 (4-я редак-
•
ция); взрывобезопасное исполнение, утверждено
для использования в классе I, разделе 1, группы A,
B, C и D (возможность применения рассматривается)
КОРПУС F5 MICROCAN15™
5.89
0.36
0.51
осуществляется при помощи одного цифрового
сигнала на скорости 14.1 или 125 Кбит/с, используя протокол 1-Wire®
ОБЩИЕ ХАРАКТЕРИСТИКИ iButton
Уникальный, записанный лазером в процессе про-
•
YYWWREGISTEREDRR
C C 2 1
xx
15C000FBC52B
15C000FBC52B
изводства и проверенный 64-битный регистрационный номер (8-битный групповой код + 48битный серийный номер + 8-битная контрольная
сумма CRC) обеспечивает возможность абсолютного контроля, поскольку не существует двух устройств с одинаковыми номерами
Многоточечный контроллер для сети MicroLAN
•
Цифровая идентификация и считывание информа-
•
ции посредством мгновенного контакта
Носитель данных обеспечивает компактное хране-
•
ние информации на кристалле микросхемы
Доступ к данным может происходить при касании
•
объекта
Обмен данными с мастером (ведущим) шины осу-
•
ществляется при помощи одного цифрового сигнала на скорости 16.3 Кбит в секунду
тономную систему, которая измеряет температуру и записывает результат измерений в защищенную
область памяти. Запись осуществляется с установленной пользователем частотой, как в виде непосредственных значений температуры, так и в форме гистограммы. Сохраняются до 2048 значений температуры, измеренных через равноотстоящие интервалы времени в диапазоне от 1 до 255 мин. Гистограмма
предоставляет 63 буфера (приемника) данных, что обеспечивает разрешающую способность 2.0°C. Если температура выходит за запрограммированные пользователем пределы, DS1921L запишет, когда это
произошло, продолжительность времени, в течение которого температура находилась за пределами допустимого диапазона, а также была ли температура слишком высокой или слишком низкой. Дополнительные 512 байт энергонезависимой памяти для чтения/записи данных позволяют сохранять информацию, касающуюся объекта, к которому присоединена микросхема DS1921L. Данные передаются последовательно при помощи протокола 1-Wire, для работы которого требуется только один провод данных
(сигнальный) и земляной провод. Каждая микросхема DS1921L имеет записанный с помощью лазера в
процессе изготовления 64-битный регистрационный номер, уникальность которого гарантируется, что
обеспечивает возможность абсолютного контроля. Корпус из нержавеющей стали обладает высокой
стойкостью к таким воздействиям окружающей среды, как грязь, влажность и удары. Дополнительные
приспособления позволяют закрепить микросхему практически на любом объекте, включая контейнеры, грузовые пакеты (поддоны) и сумки.
любого объекта, к которому он прикреплен или который он сопровождает, например, товар с ограниченным сроком пользования (скоропортящийся) или контейнеры с химикатами, чувствительными к
температуре. Используя TMEX, энергонезависимая память чтения/записи может хранить электронную
копию сопроводительной информации (документации), дату производства и другие необходимые данные, записанные как в открытом виде, так и в виде зашифрованных файлов.
ОБЩЕЕ ОПИСАНИЕ
Структурная схема, приведенная на Рис. 1, показывает взаимосвязь между центральным управлени-
ем и областями памяти микросхемы DS1921L. Прибор имеет семь основных компонентов данных:
3) 4096-битное статическое ОЗУ (SRAM) общего назначения, 4) 256-битная страница регистра хроно-
метража, управления и регистров счетчика, 5) 96-байтная память регистрации для отметки времени
аварии и ее продолжительности, 6) 26-байтная память для гистограммы, 7) 2048-байтная память регистрации данных.
За исключением ПЗУ и блокнотной памяти, все другие области памяти организованы в виде одного
линейного адресного пространства. Вся память резервируется для регистрации, регистры счетчика и
несколько других регистров предназначены для доступа пользователя только в режиме чтения данных.
Регистры хронометража и управления защищены от записи во время программирования прибора для
выполнения задачи.
Иерархическая структура протокола 1-Wire приведена на Рис. 2. Сначала устройство управления передачей данных по шине (мастер) должно обеспечить выполнение одной из семи команд функций ПЗУ:
По завершении байта команды ускоренного режима ПЗУ, выполняемой на стандартной скорости,
прибор переходит в ускоренный режим, при котором весь последующий обмен данными происходит на
более высокой скорости. Описание протокола, необходимого для выполнения этих команд функций
ПЗУ, приведено на Рис. 12. После успешного выполнения команды функций ПЗУ, функции памяти
становятся доступными, и мастер может обеспечить передачу любой из семи имеющихся команд. Описание протокола, необходимого для выполнения этих команд функций памяти, приведено на Рис. 10.
На структурной схеме (Рис. 1) показана схема «паразитного» питания. Эта схема «заимствует» мощность
в тот момент, когда напряжение на входе IO находится на ВЫСОКОМ уровне. Питание от входа IO будет
обеспечивать достаточную мощность до тех пор, пока выполняются определенные требования по временным соотношениям и параметрам напряжения. «Паразитное» питание имеет двойное преимущество: 1) при
«паразитном» питании от данного входа заряд литиевой батарейки сохраняется; 2) если по какой-либо причине литиевая батарейка разрядилась, данные из ПЗУ все равно можно будет считать.
64-БИТНОЕПЗУ, ЗАПИСАННОЕЛАЗЕРОМ
Каждая микросхема DS1921L содержит уникальный 64-битный код ПЗУ. Первые 8 битов являются групповым кодом 1-Wire. Следующие 36 битов представляют собой уникальный серийный номер. Последующие
состоящим из регистра сдвига и логических элементов XOR (исключающее ИЛИ), как показано на Рис. 4.
При этом используется многочлен X
избыточным кодом для шины 1-Wire фирмы «Dallas» можно получить из документов «
«
Book of DS19xx i
Buttton Standards
8
+ X5 + X4 + 1. Дополнительную информацию о контроле циклически
Application Note 27
».
» и
Биты регистра сдвига изначально устанавливаются в 0. Затем, начиная с младшего бита группового кода,
сдвигается по одному биту за раз. После введения восьмого бита группового кода следует серийный номер, а
затем код температурного диапазона. После того, как был введен код диапазона, регистр сдвига содержит
значение CRC. Сдвиг восьми битов CRC обнуляет регистр сдвига.
Запись в блокнот
Чтение блокнота
Копировать блокнот
Чтение памяти
Чтение памяти с CRC
Очистка памяти
Преобразование
температуры
Код
команды:
33h
55h
F0h
CCh
3Ch
69h
ECh
0Fh
AAh
55h
F0h
A5h
3Ch
44h
К другим
устройствам
Обращение
к памяти
Номер 64 бит
Номер 64 бит
Номер 64 бит
Нет
Флаг OD
Номер 64 бит, флаг OD
Номер 64 бит, Настройки поиска по
условию, состояние устройства
Блокнот 256 бит, флаги
Блокнот 256 бит
4096 бит ОЗУ, регистры, флаги
Вся память
Вся память
Частота отсчетов, Задержка запуска
задачи, время выполнения задачи,
счетчики выполнения задачи, память
аварийной температуры и гистограммы
Ячейка памяти с адресом 211h
Рис. 3. 64-БИТНОЕ ПЗУ, ЗАПИСАННОЕ ЛАЗЕРОМ
Старший
бит
Код
Старший
бит
CRC
8 бит
Младший
бит
Код диапазона
температур 12 бит
Старший
бит
Младший
бит
Серийный номер 36 бит
Старший
бит
Младший
бит
Код семейства
8 бит (21h)
Старший
бит
Младший
бит
Младший
ит
Прибор Диапазон
температур
[°C]
DS1921L-F51 –10…+85 0.5 0011 0100 1100 34C
DS1921L-F52 –20…+85 0.5 0010 0101 0100 254
DS1921L-F53 –30…+85 0.5 0001 0101 1100 15C
DS1921L-F50 –40…+85 0.5 0000 0110 0100 064
DS1921H-F5 +15…+46 0.125 0100 1111 0010 4F2
DS1921Z-F5 –5…+26 0.125 0011 1011 0010 3B2
Разрешение
[°C]
Код диапазона тем-
ператур
Шестнадца-
тиричный
эквивалент
4 из 40
8
5
Рис. 4. ГЕНЕРАТОР CRC ШИНЫ 1-Wire
Полином = X
DS1921L
+ X5 + X4 + 1
Шаг
1
0
X
Шаг
2
1
X
Шаг
3
2
X
Шаг
4
3
X
Шаг
5
4
X
Шаг
6
5
X
Шаг
7
6
X
Шаг
8
7
X
8
X
Входныеданные
ПАМЯТЬ
Организация памяти микросхемы DS1921L приведена на Рис. 5. 4096-битное статическое ОЗУ использует страницы памяти с 0 по 15. Регистры хронометража, управления и счетчика занимают страницу 16, которая называется страницей регистра (Register Page). Организация страницы регистра приведена на Рис. 6. Страницы 17…19 предназначены для хранения отметок времени аварии и ее продолжительности. Буферы гистограмм температуры начинаются с 64-й страницы и используют до 4-х страниц.
Память регистрации температуры занимает страницы 128…191. Страницы памяти 20…63, 68…127 и
192…255 зарезервированы для применения в будущем. Блокнотная память представляет собой дополнительную страницу, которая действует как буфер при записи в память статического ОЗУ или страницу
регистра. Страницы памяти, начиная с 17-й и выше, доступны пользователю только в режиме для чтения. Они записываются или стираются исключительно под контролем встроенной управляющей логики.
Рис. 5. ОРГАНИЗАЦИЯПАМЯТИМИКРОСХЕМЫ DS1921L
32 байтаблокнота
АДРЕС
0000h 01FFh
0200h 021Fh
0220h 027Fh
0280h 07FFh
0800h 087Fh
0880h 0FFFh
1000h 17FFh
1800h 1FFFh
ОЗУобщегоназначения (16 страниц)
32 байтастраницырегистров
Отметкивремениавариииеепродолжительность
(зарезервированодляпоследующих разработок)
Память гистограммы температуры
(зарезервированодляпоследующих разработок)
Память регистрации температуры (64 страницы)
(зарезервировано для последующих разработок)
Страница 0-15
Страница 16
Страница 17-19
Страница 20-63
Страница 64-67
Страница 68-127
Страница 128-191
Страница 192-25
5 из 40
DS1921L
Рис. 6. ОРГАНИЗАЦИЯ СТРАНИЦЫ РЕГИСТРА МИКРОСХЕМЫ DS1921L
Диапазон адресов Тип доступа* Описание
0200h…0206h Чтение/Запись; Чтение** Регистры часов реального вре-
мени (RTC)
0207h…020Ah Чтение/Запись; Чтение** Будильник часов реального
времени
020Bh Чтение/Запись; Чтение** Нижний порог допустимого зна-
* Первый элемент записи в столбце «Тип доступа» действителен в период между выполнениями задач.
Второй элемент показывает применяемый тип доступа во время выполнения задачи.
** Эти адреса могут считываться во время выполнения задачи. Однако, первая попытка записи приведет к завершению выполнения задачи, но никакие установочные параметры при этом переписаны не
будут.
ХРОНОМЕТРАЖ (TIMEKEEPING)
Информация часов реального времени/будильника и календаря доступна путем чтения/записи соответствующих байтов на странице регистра (адрес 200h…206h). Заметьте, что некоторые биты установлены в 0. Эти биты всегда будут считываться как 0, независимо от того, как они записаны. Содержимое
регистров времени, календаря и будильника находится в формате двоично-десятичного кода (BCD).
Организация битов регистра RTC и будильника RTC
Адрес b7 b6 b5 b4 b3 b2 b1 b0
0200h 0 Десятки секунд Единицы секунд
0201h 0 Десятки минут Единицы минут
0202h 0 12/24 Второй десяток
часов AM/PM
0203h 0 0 0 0 0 День недели
0204h CENT 0 Десятки даты Единицы даты
0205h 0 0 0 Десятки ме-
0206h ДесяткигодовЕдиницыгодов
0207h MS Десятки секунд будильника Единицы секунд будильника
Первый деся-
ток часов
сяцев
Единицы часов
Единицы месяцев
6 из 40
DS1921L
0208h MM Десятки минут будильника Единицы минут будильника
0209h MH 12/24 Второй десяток
часов будильни-
ка AM/PM
020Ah MD 0 0 0 0 День недели будильника
Первый деся-
ток часов бу-
дильника
Единицы часов будильника
Часы реального времени/календарь
Часы реального времени (RTC) микросхемы DS1921L могут работать либо в 12-часовом, либо в 24-
часовом режиме. 6-й бит (6b) регистра часов (адрес 202h) предназначается для выбора 12- или 24часового режима. При ВЫСОКОМ логическом уровне выбирается 12-часовой режим. В 12-часовом режиме 5-й бит является битом переключения AM/PM, при этом логическая 1 означает PM. В 24-часовом
режиме бит 5 представляет собой бит второго десятка часов (от 20 до 23 часов).
Чтобы различать дни недели, микросхема DS1921L содержит счетчик с диапазоном 1…7. Привязка
конкретных значений счетчика к определенным дням недели является произвольной. Обычно число 1
означает воскресенье (по американскому стандарту) или понедельник (по европейскому стандарту).
Логическая схема календаря обеспечивает возможность автоматической коррекции времени для ви-
сокосных годов. Для цифрового значения каждого года, которое оканчивается на 00 или кратно четырем, прибор будет добавлять 29 февраля. Данная функция будет выполняться корректно вплоть до 2100
года (исключая сам 2100 год).
Микросхема DS1921L соответствует требованиям по Y2K (проблема 2000 года). 7-й бит (CENT) ре-
гистра месяцев с адресом 205h служит флагом для обозначения века. Когда регистр года переходит от
значения 99 к значению 00, флаг века переключается. При установке часов реального времени на время/дату между 2000 и 2099 годом, рекомендуется записывать бит, соответствующий веку, как 1.
Будильник часов реального времени
Микросхема DS1921L также содержит будильник RTC. Регистры будильника расположены в реги-
страх 207h…20Ah. Старший бит каждого из регистров будильника является битом маски. Если все биты маски установлены в состояние логического 0, то будильник будет срабатывать раз в неделю, когда
значения, хранящиеся в регистрах хронометража 200h…203h совпадут со значениями, хранящимися в
регистрах времени и дня будильника.
Любое срабатывание будильника приведет к установке флага таймера будильника (Timer Alarm Flag
— TAF) в регистре состояния прибора (адрес 214h). Мастер шины может установить условия поиска
(Search Conditions) в регистре управления (адрес 20Eh), чтобы идентифицировать приборы с таймером будильниковприпомощифункцииУсловныйПоиск (см. раздел «КомандыфункцийПЗУ»).
Управление будильником часов реального времени
Битымаскирегистрабудильника
(бит 7 адресов 207h…20Ah)
MS MM MH MD
1 1 1 1 Срабатывание будильника раз в секунду
0 1 1 1 Срабатывание будильника при совпадении секунд (раз в
0 0 1 1 Срабатывание будильника при совпадении минут и се-
0 0 0 1 Срабатывание будильника при совпадении часов, минут
минуту)
кунд (раз в час)
и секунд (раз в сутки)
0 0 0 0 Срабатывание будильника при совпадении дней, часов,
минут и секунд (раз в неделю)
7 из 40
DS1921L
Преобразование значений температуры
Микросхема DS1921L измеряет температуру с разрешением 0.5°C. Значения температуры представ-
лены в одном байте в виде двоичного числа без знака, которое теоретически соответствует диапазону в
128°C. Однако, этотдиапазонограничензначениямиот 0000 0000 (00h) до 1111 1010 (FAh). Коды
01h…F9h рассматриваютсякакдостоверныезначенияпоказанийтемпературы.
Если в результате преобразования значение температуры выходит за пределы диапазона, то оно бу-
дет записано как 00h (в случае слишком низкого значения) или как FAh (в случае слишком высокого
значения). Поскольку результаты, находящиеся вне диапазона, накапливаются в буферах гистограммы
0 и 62 (см. раздел «Регистрация значений температуры и гистограмма»), данные в этих буферах представляют собой ограниченные значения. Поэтому диапазон температур, установленный для измерения
микросхемой DS1921L, считается, начиная с кода 05h и заканчивая кодом F7h, что соответствует буферам гистограммы 1…61.
Обозначая представление десятичного эквивалента показаний температуры как T[7…0], значение
температуры можно вычислить следующим образом:
(°C) = T[7…0]/2 – 40.0
ϑ
Эта формула справедлива для преобразованных показаний температуры, хранящихся в памяти регистрации данных, а также для чтения данных из регистра считывания результатов ускоренного преобразования температуры (адрес 211h).
Для определения верхнего и нижнего порогов допустимых (аварийных) значений температуры, при-
веденную выше формулу необходимо преобразовать к виду:
T[7…0] = 2 × ϑ (°C) + 80.0
Таким образом, например, значение 23°C преобразуется в десятичное число 126 или шестнадцатиричное 7Eh. Это соответствует двоичному коду 0111 1110, который может быть записан в регистр аварийной температуры (адрес 020Bh и 020Ch, соответственно).
Организация регистра аварийной температуры (Temperature Alarm Register)
Адрес b7 b6 b5 b4 b3 b2 b1 b0
020Bh Нижнийпорогдопустимогозначениятемпературы
020Ch Верхнийпорогдопустимогозначениятемпературы
Частота отсчетов (Sample Rate)
Содержимое регистра частоты отсчетов (адрес 020Dh) определяет, на сколько минут отстоят друг от
друга моменты преобразования значений температуры во время выполнения задачи. Частота отсчетов
может принимать любое значение от 1 до 255, которое кодируется как 8-битное двоичное число без
знака. Если память была очищена (бит регистра состояния MEMCLR = 1) и выполнение задачи разре-
шено (бит регистра состояния EM
= 0), то запись значения, отличного от нуля, в регистр частоты от-
счетов приведет к запуску выполнения задачи. Полное описание точной последовательности шагов для
запуска выполнения задачи регистрации значений температуры приведено в разделах «Выполнение задачи» и «Пример выполнения задачи».
Организация регистра частоты отсчетов (Sample Rate Register)
Адрес b7 b6 b5 b4 b3 b2 b1 b0
020Dh Частота отсчетов
Регистр управления (Control Register)
Микросхема DS1921L устанавливается в рабочее состояние путем записи соответствующих данных
в специальные регистры функций, расположенные в странице регистра. Несколько функций, которые
управляются только одним битом, объединяются в один байт, называемый регистром управления (адрес 20Eh). Данные этого регистра могут считываться и записываться. Если прибор программируется
для выполнения задачи, то запись в регистр управления при первой попытке приведет к завершению выполнениязадачи, но никакие установочные параметры при этом переписаны не будут. Однако, каждая последующая попытка записи приведет к изменению содержимого регистра.
8 из 40
Организация битов регистра управления
Адрес b7 b6 b5 b4 b3 b2 b1 b0
DS1921L
020Eh
EOSC
EMCLR 0
EM
RO TLS THS TAS
Функциональное назначение отдельных битов приведено ниже в таблице. 5-й бит не имеет функционального назначения. Он всегда считывается как 0 и не может быть записан как 1.
b7 Этот бит управляет кварцевым генератором часов реального времени (RTC).
Когда он установлен в состояние логического 0, генератор начинает работать.
Когда записывается логическая 1, генератор останавливается и прибор находится в маломощном (экономичном) режиме сохранения данных.
чения нормальной работы этот бит должен быть установлен в 0
b6 Этот бит необходимо установить в состояние логической единицы, чтобы раз-
решить выполнение функции очистки памяти. Данная функция вызывается как
команда функции памяти. Отметки времени, память для гистограммы, а также
отметки времени выполнения задачи, счетчик отсчетов выполнения задачи,
задержка запуска выполнения задачи и частота отсчетов сбрасываются (устанавливаются в исходное состояние), только если команда очистки памяти выдается
дующая команда функции памяти, значение бита EMCLR возвращается к 0.
b4 От состояния этого бита зависит, начнет ли микросхема DS1921L выполнение
задачи, как только будет записана частота отсчетов. Чтобы разрешить прибору
выполнение задачи, данный бит должен быть установлен в 0.
b3 От состояния этого бита зависит, будут ли переписаны данные памяти регист-
рации температуры на новые или регистрация данных будет остановлена, когда память заполнится данными во время выполнения задачи. Установка этого
бита в 1 разрешает перебор, и регистрация данных продолжается, начиная при
этом переписывать ранее собранные данные. Установка данного бита в 0
(сброс) запрещает перебор, и последующие значения температуры не будут
сохраняться в памяти регистрации температуры после того, как она будет заполнена данными. На работу гистограммы это не влияет.
b2 Когда этот бит установлен в 1, прибор будет реагировать на команду условного
поиска, если во время выполнения задачи температура достигнет или упадет
ниже значения нижнего порога температуры, хранящегося по адресу 020Bh.
b1 Когда этот бит установлен в 1, прибор будет реагировать на команду условного
поиска, если во время выполнения задачи температура достигнет или превысит
значение верхнего порога температуры, хранящегося по адресу 020Ch.
b0 Когда этот бит установлен в 1, прибор будет реагировать на команду условного
поиска, если во время выполнения задачи произойдет срабатывание таймера
будильника. Поскольку таймер будильника не может быть отключен, флаг TAF
во время выполнения задачи обычно считывается как 1. Следовательно, в
большинстве случаев можно рекомендовать установить бит TAS в 0.
вместе с последующим доступом к прибору
. Когдавыполняетсясле-
Для обеспе-
.
Задержка запуска выполнения задачи
Содержимое регистра задержки запуска выполнения задачи определяет, сколько минут должно пройти
после начала выполнения задачи, прежде чем произойдет первое измерение температуры. Значение времени
задержки хранится как 16-битное целое число без знака по адресам 212h (младший байт) и 213h (старший
байт). Максимальная задержка составляет 65535 минут, что эквивалентно 45 дням, 12 часам и 15 минутам.
Обычно задержка запуска выполнения задачи равна 0. Если выполнение задачи в случае применения одной микросхемы DS1921L занимает слишком много времени для сохранения всех показаний температуры
при выбранной частоте отсчетов, можно использовать несколько приборов и установить для второго прибора задержку запуска выполнения задачи, чтобы он начал записывать показания, как только память первого
прибора будет заполнена. Бит RO в регистре управления (адрес 020Eh) должен быть установлен в 0, чтобы
предотвратить перезапись зарегистрированных значений температуры после заполнения памяти регистрации
данных.
9 из 40
DS1921L
Регистр состояния (Status Register)
Регистр состояния содержит информацию о состоянии прибора и флаги аварии. Регистр располагается по адресу 214h. Запись в этот регистр необязательно приводит к завершению выполнения задачи.
Организация битов регистра состояния
Адрес b7 b6 b5 b4 b3 b2 b1 b0
0214h TCB MEMCLR MIP SIP 0 TLF THF TAF
Функциональноеназначениеотдельныхбитовприведенонижевтаблице. Биты MIP, TLF, THF и
TAF могутбытьзаписанытолькокак 0. 3-йбитнеимеетфункциональногоназначения.
Описание регистра состояния
ОПИСАНИЕ БИТА БИТ НАЗНАЧЕНИЕ
TCB (Temperature
Core Busy): темпера-турныйпроцессорзанят
MEMCLR (Memory
Cleared): очисткапамяти
MIP (Mission in Progress): задачавпроцессевыполнения
THF (Temperature High
Flag): флагверхнегозначениятемпературы
TAF (Timer Alarm Flag):
флаг таймера будильника
b7 Когда из этого бита считывается 0, микросхема DS1921L выполняет непрерывное
преобразование значений температуры, которое инициировано либо самой микросхемой, либо командой, если выполнения задачи не происходило. Перед за-
пуском преобразования бит TCB
ся к ВЫСОКОМУ уровню сразу после фиксирования результата в регистре считы-
вания по адресу 0211h.
b6 Если из этого бита считывается 1, то страницы памяти с 17-й и выше (отметки
времени аварии/длительности, гистограмма температуры, исключая память регистрации данных), а также отметки времени выполнения задачи, счетчик отсчетов
выполнения задачи, задержка запуска выполнения задачи и частота отсчетов
сбрасываются (устанавливаются в 0) при выполнении команды функции очистки
памяти. Значение бита MEMCLR будет возвращено к 0, как только запись ненулевого значения в регистр частоты отсчетов приведет к запуску выполнения новой
задачи, при условии, что бит EM
задачи память должна быть очищена.
b5 Когда из этого бита считывается 1, это означает, что микросхема DS1921L уста-
новлена для выполнения задачи и эта задача все еще находится в процессе выполнения. Выполнение задачи начинается, если бит EM
(адрес 20Eh) установлен в 0 и в регистре частоты отсчетов (адрес 20Dh) записано
ненулевое значение. Когда выполнение задачи завершается, бит MIP возвращается с уровня логической 1 к уровню логического 0. Выполнение задачи будет
завершено при первой попытке записи (команда копирования блокнота) в любой
регистр, адрес которого находится в диапазоне 200h…213h. В качестве альтернативы выполнение задачи может быть завершено путем прямой записи в регистр
состояния и установки бита MIP в 0. Бит MIP не может быть установлен в 1 при
помощи записи в регистр состояния.
b4 Когда из этого бита считывается 0, микросхема DS1921L осуществляет непре-
рывное преобразование значений температуры как часть задачи, находящейся в
процессе выполнения. Бит SIP изменится с 0 на 1 примерно за 250 мс до того, как
фактически начнется преобразование температуры, обеспечивая схеме возможность включиться. Преобразование значений температуры с учетом фазы включения занимает максимум 875 мс. В течение этого времени доступ к памяти для
считывания страниц с 17-й и выше разрешен, но может привести к появлению
неверных данных.
b2 Логическая 1 в данном бите указывает, что измерение температуры во время вы-
полнения задачи показало наличие значений температуры, равных или ниже значения, записанного в регистре нижнего порога температуры. Флаг нижнего значения температуры может быть сброшен в любое время путем записи 0 в этот бит.
b1 Логическая 1 в данном бите указывает, что измерение температуры во время вы-
полнения задачи показало наличие значений температуры, равных или выше
значения, записанного в регистре верхнего порога температуры. Флаг верхнего
значения температуры может быть сброшен в любое время путем записи 0 в этот
бит.
b0 Если из этого бита считывается 1, то происходит срабатывание будильника часов
реального времени (подробнее об этом см. в разделе «Хронометраж»). Флаг таймера будильника может быть сброшен в любое время путем записи в этот бит
логического 0. Поскольку таймер будильника не может быть отключен, флаг TAF
во время выполнения задачи обычно считывается как 1.
переходитнаНИЗКИЙуровеньивозвращает-
тожеустановленв 0. Длязапускавыполнения
регистрауправления
10 из 40
DS1921L
Отметка времени выполнения задачи (Mission Time Stamp)
Когда выполнение задачи запущено, копия регистров RTC с адресами 0201h, 0202h и 0204h…0206h
сохраняется как отметка времени выполнения задачи. Отметка времени выполнения задачи не показывает времени первого преобразования значений температуры при выполнении задачи. Для вычисления
времени первого преобразования следует прибавить к отметке времени выполнения задачи столько минут, сколько установлено в регистре частоты отсчетов плюс значение задержки запуска выполнения
задачи. Последовательные преобразования температуры будут происходить с интервалом времени в
минутах, который определяется значением, находящимся в регистре частоты отсчетов. Отсчеты при
выполнении задачи будут происходить на границах минут.
Организация битов регистра отметок времени выполнения задачи
Адрес b7 b6 b5 b4 b3 b2 b1 b0
0215h 0 Десятки минут Единицы минут
0216h 0 12/24 Второй
десяток
часов AM/PM
0217h 0 0 Десятки даты Единицы даты
0218h 0 0 0 Десятки
0219h ДесяткигодовЕдиницыгодов
Первый
десяток
часов
месяцев
Единицы часов
Единицы месяцев
Счетчик отсчетов выполнения задачи (Mission Samples Counter)
Счетчик отсчетов выполнения задачи показывает, сколько измерений температуры произошло во
время процесса выполнения текущей задачи (если MIP = 0) или во время выполнения самой последней
задачи (если MIP = 1). Указанное значение хранится в виде 24-битного целого числа без знака. Данный
счетчик сбрасывается командой очистки памяти.
Организация регистра счетчика отсчетов выполнения задачи (Mission Samples Counter Register)
Адрес b7 b6 b5 b4 b3 b2 b1 b0
021Ah Младшийбайт
021Bh Среднийбайт
021Ch Старшийбайт
Счетчик отсчетов прибора
Счетчик отсчетов прибора показывает количество измерений температуры, которое произошло с
момента фабричной сборки прибора. Указанное значение хранится в виде 24-битного целого числа без
знака. Максимальное число, которое может быть представлено в этом формате, составляет 16777215,
что больше, чем ожидаемый срок службы DS1921L i
Button. Данный счетчик нельзя установить в ис-
ходное положение (сбросить) при помощи программного обеспечения.
Организация регистра счетчика отсчетов прибора (Device Samples Counter Register)
После установки для выполнения задачи микросхема DS1921L регистрирует измерения температуры
одновременно как в памяти регистрации данных байт за байтом, так и в форме гистограммы в памяти
для гистограммы. Память регистрации данных способна сохранить 2048 значений температуры, измеренных в равноотстоящих временных точках. Первое значение температуры во время выполнения задачи записывается в памяти регистрации данных по адресу 1000h, второе значение — по адресу 1001h и
так далее. Зная начальное время (отметка времени выполнения задачи), интервал между измерениями
температуры и задержку запуска выполнения задачи, можно восстановить время и дату каждого измерения.
11 из 40
DS1921L
Существуют две возможности дальнейших действий микросхемы DS1921L после того, как 2048 байт
памяти регистрации данных будут заполнены. Пользователь может запрограммировать прибор либо на
прекращение любой последующей записи (запрет перебора), либо на перезапись данных, записанных
ранее (разрешение перебора), по одному байту за раз, начиная снова с адреса 1000h для 2049-го значения температуры. Содержимое счетчика отсчетов выполнения задачи (адреса с 21Ah по 21Ch) вместе с
частотой отсчетов и отметками времени выполнения задачи позволит затем восстановить время отсчетов всех значений, хранящихся в памяти регистрации данных. Таким образом, получается точная характеристика изменений температуры в течение времени для последних 2048 проведенных измерений.
Более ранние измерения не могут быть восстановлены. Независимо от разрешения перебора, эти значения включаются в гистограмму температур при выполнении задачи.
Для создания гистограммы температур в микросхеме DS1921L предназначены 63 буфера, которые
начинаются с адреса памяти 0800h. Каждый буфер состоит из 16-битного двоичного счетчика с запретом перебора, содержимое которого увеличивается каждый раз на значение температуры, полученное
во время выполнения задачи при попадании в диапазон значений буфера. Младший байт каждого буфера хранится по более младшему адресу. Буфер 0 начинается с адреса памяти 0800h, буфер 1 — с адреса
0802h, и так далее до адреса 087Ch для буфера 62, как показано на Рис. 7. Номер буфера, содержимое
которого будет обновлено после преобразования значения температуры, определяется отбрасыванием
двух младших битов двоичного значения температуры. Значения, находящиеся вне диапазона, фиксируются и считаются как 00h или FAh.
Рис.7. БУФЕР ГИСТОГРАММЫ И ПЕРЕКРЕСТНАЯ ССЫЛКА
ПОКАЗАНИЕ
ТЕМПЕРАТУРЫ
00h
01h
02h
03h
04h –38.0 1 802h…803h
05h –37.5 1 802h…803h
06h –37.0 1 802h…803h
07h –36.5 1 802h…803h
08h –36.0 2 804h…805h
F3h +81.5 60 878h…879h
F4h +82.0 61 87Ah…87Bh
F5h +82.5 61 87Ah…87Bh
F6h +83.0 61 87Ah…87Bh
F7h +83.5 61 87Ah…87Bh
F8h
F9h
FAh
ЭКВИВАЛЕНТ
ТЕМПЕРАТУРЫ В °C
–40.0 илиниже
–39.5
–39.0
–38.5
+84.0
+84.5
+85.0 иливыше
НОМЕР БУФЕРА
ГИСТОГРАММЫ
0 800h…801h
0 800h…801h
0 800h…801h
0 800h…801h
62 87Ch…87Dh
62 87Ch…87Dh
62 87Ch…87Dh
АДРЕС БУФЕРА
ГИСТОГРАММЫ
Поскольку емкость каждого буфера данных составляет 2 байта, он может пополняться до 65535 раз.
Дополнительные пополнения для буфера, который уже достиг своего максимального значения, учитываться не будут; счетчик буфера будет оставаться на своем максимальном значении. При самой высокой частоте отсчетов, составляющей один отсчет в минуту, если все показания температуры будут попадать в один и тот же буфер, то объема 2-байтного буфера хватит на 45 дней.
12 из 40
DS1921L
Регистрация аварийных значений температуры
Для некоторых применений может быть важно записывать не только изменения температуры во
времени и гистограмму температуры, но и когда точно температура выходила за определенные пределы допустимого диапазона и какдолго температура находилась вне этого диапазона. Микросхема
DS1921L может регистрировать наибольшую и наименьшую продолжительность этого времени. Допустимый диапазон устанавливается в регистрах порогов допустимых значений температуры, находящихся
в странице регистра по адресам 20Bh и 20Ch. Можно установить верхний и нижний порог температуры.
Формат данных, в котором должны записываться значения температуры, см. в разделе «Преобразование значений температуры». Пока значения температуры остаются в пределах допустимого диапазона
(то есть, выше нижнего порога и ниже верхнего порога), микросхема DS1921L не запишет какого-либо
аварийного значения температуры. Если температура во время выполнения задачи достигает или переступает любой из порогов, микросхема DS1921L генерирует аварийный сигнал и устанавливает либо
флаг верхнего значения температуры (THF), либо флаг нижнего значения температуры (TLF) в регистре
состояния (адрес 214h). Следовательно, если условия поиска (адрес 20Eh) установлены соответствующим образом, то мастер может быстро идентифицировать приборы с аварийными значениями температуры при помощи функции Условный Поиск (см. раздел «Команды функций ПЗУ»). Прибор также генерирует отметки времени, когда произошла авария, и начинает запись продолжительности времени
нахождения при аварийной температуре.
Отметки времени и длительность периодов, когда температура выходила за допустимые пределы,
хранятся по адресам 0220h…027Fh, как показано на Рис. 8. Такое расположение позволяет записывать
24 отдельных событий аварии и периодов (12 периодов для слишком высокой и 12 для слишком низкой
температуры). Дату и время каждого из этих периодов можно определить при помощи отметок времени
выполнения задачи и длительности времени между считываниями показаний температуры.
Рис. 8. ОРГАНИЗАЦИЯ АДРЕСОВ ОТМЕТОК ВРЕМЕНИ АВАРИИ И ЕЕ ПРОДОЛЖИТЕЛЬНОСТИ
АДРЕС ОПИСАНИЕ АВАРИЙНОЕ СОБЫТИЕ
0220h Младший байт счетчика отсчетов выполнения задачи
0221h Средний байт счетчика отсчетов выполнения задачи
0222h Старший байт счетчика отсчетов выполнения задачи
0223h Счетчик продолжительности аварии
0224h…0227h Отметки времени аварии и ее продолжительности Пониженнаятемпература 2
0228h…024Fh Отметки времени аварии и ее продолжительности Пониженнаятемпература 3…12
0250h Младший байт счетчика отсчетов выполнения задачи
0251h Средний байт счетчика отсчетов выполнения задачи
0252h Старший байт счетчика отсчетов выполнения задачи
0253h Счетчик продолжительности аварии
0254h…0257h Отметки времени аварии и ее продолжительности Повышеннаятемпература 2
0258h…027Fh Отметки времени аварии и ее продолжительности Повышеннаятемпература 3…12
Пониженная температура 1
Повышенная температура 1
Когда происходит аварийное событие, отметка времени аварии является копией счетчика отсчетов выполнения задачи. Младший байт хранится по младшему адресу. Одним адресом старше, чем отметка времени, микросхема DS1921L содержит 1-байтный счетчик, который сохраняет число отсчетов,
когда температура выходила за значение порога. Если этот счетчик достигнет своего предела после 255
последовательных показаний температуры и температура все еще не вернется в пределы допустимого
диапазона, прибор сделает еще одну отметку времени по следующему, более старшему адресу и запустит еще один счетчик для записи продолжительности времени аварии. Если температура вернется к
норме до того, как счетчик достигнет своего предела, счетчик длительности конкретной отметки времени не будет дальше увеличивать свое значение. Стоит только температуре снова перейти этот порог,
как будет записана еще одна отметка времени и значение соответствующего ей счетчика будет возрастать с каждым показанием температуры, выходящим за пределы допустимого диапазона. Данный алгоритм реализуется как для нижнего, так и для верхнего порога температуры.
13 из 40
DS1921L
ВЫПОЛНЕНИЕ ЗАДАЧИ
Типичным заданием для микросхемы DS1921L является снятие показаний температуры термочувствительного объекта. Прежде чем прибор сможет выполнять эту функцию, его необходимо конфигурировать. Эта процедура называется настройкой выполнения задачи (missioning).
Прежде всего, необходимо установить часы реального времени (RTC) микросхемы DS1921L на текущее время и дату. Это опорное значение времени может быть универсальным синхронизированным
временем UTC (также называемым GMT — среднее время по Гринвичу) или любым другим стандартом
времени, который был выбран для применения. Часы должны быть запущены (EOSC
= 0). Установка
будильника RTC является опцией. Области памяти, предназначенные для хранения отметок времени
аварии и ее продолжительности, гистограммы температуры, а также отметок времени выполнения задачи, счетчика отсчетов выполнения задачи, задержки запуска выполнения задачи и частоты отсчетов
должны быть очищены при помощи команды очистки памяти. Чтобы разрешить прибору выполнение
задачи, флаг EM
должен быть установлен в 0. Это основные установки, которые необходимо сделать,
независимо от типа контролируемого объекта и продолжительности выполнения задачи.
Затем следует задать нижний и верхний пороги температуры для определения диапазона допустимой
температуры. Как преобразовать значение температуры в двоичный код, чтобы записать его в регистры
порогов температуры, было описано ранее в разделе «Преобразование значений температуры».
Состояние битов условий поиска в регистре управления не влияет на выполнение задачи. Когда для
формирования сети 1-Wire соединяются множество приборов, установка условия поиска предоставит
приборам возможность участвовать в условном поиске, если произошли определенные события, такие
как срабатывание таймера будильника или появление аварийных значений температуры. Подробности
условий поиска см. далее в разделе «Команды функций ПЗУ» и в описании регистра управления.
Установка бита RO (перебор разрешен) и частоты отсчетов зависит от продолжительности выполнения задачи и требований мониторинга. Если наиболее важной является характеристика самых последних изменений температуры, перебор нужно разрешить (RO = 1). В противном случае следует рассчитать длительность выполнения задачи в минутах и разделить это число на 2048, чтобы вычислить значение частоты отсчетов (число минут между преобразованиями значений температуры). Если рассчитанная продолжительность выполнения задачи составляет, например, 10 дней (= 14400 минут), то 2048
байт емкости памяти регистрации данных будет достаточно для сохранения нового значения каждые 7
минут. Если объема памяти регистрации данных микросхемы DS1921L недостаточно для хранения всех
показаний температуры, можно использовать несколько приборов и установить величину задержки запуска выполнения задачи так, чтобы второй прибор начал записывать показания, как только память
первого прибора будет заполнена, и т.д. Бит RO необходимо установить в 0, чтобы запретить перебор,
иначе зарегистрированные значения температуры будут переписаны.
После установки бита RO и задержки запуска выполнения задачи, регистр частоты отсчетов является
последним элементом данных, который записывается. Частота отсчетов может принимать любое значение от 0 до 255, которое кодируется как 8-битное двоичное число без знака. Как только частота отсчетов записана, микросхема DS1921L скопирует текущее время и дату в регистр отметок времени выполнения задачи, установит флаг MIP и сбросит флаг MEMCLR. После того, как истекут минуты, число
которых определяется задержкой запуска выполнения задачи, прибор произведет первое преобразование значения температуры при выполнении задачи. Это приведет к возрастанию значений как счетчика
отсчетов выполнения задачи, так и счетчика отсчетов прибора. Все последовательные измерения температуры происходят на границах минут, определяемых значением в регистре частоты отсчетов. Чтобы
следить за процессом выполнения задачи в любое время, можно считывать содержимое памяти микросхемы DS1921L.
После запуска выполнения задачи, можно считать полную страницу регистра и сохранить содержимое регистров допустимых значений температуры вплоть до счетчика отсчетов прибора в зашифрованном виде как файл данных в 4096-битном статическом ОЗУ прибора. Эта память общего назначения
действует независимо от памяти, которая используется для записи во время выполнения задачи. Однако, не записывайте какой-либо из завершивших выполнение задачи регистров на странице регистра.
14 из 40
DS1921L
АДРЕСНЫЕ РЕГИСТРЫ И СОСТОЯНИЕ ПЕРЕДАЧИ
Из-за последовательной передачи данных в микросхеме DS1921L используются три адресных регистра, названных TA1, TA2 и E/S (Рис. 9). В регистры TA1 и TA2 должны быть загружены назначенные
(заданные) адреса, по которым будут записываться данные или откуда данные по команде Чтение будут
посылаться мастеру. Регистр E/S действует как счетчик байтов и регистр состояния передачи. Он используется для проверки целостности данных при помощи команды Запись. Следовательно, только
мастер имеет доступ для чтения к этому регистру. Пять младших битов регистра E/S указывают адрес
последнего байта, который был записан в блокнотную память. Данный адрес называется конечным
смещением (Ending Offset). 5-й бит регистра E/S, называемый PF или «флагом частичного байта», устанавливается, если число битов данных, посылаемых мастером, не является целым числом, кратным 8. 6й бит всегда устанавливается в 0. Следует заметить, что пять младших битов назначенного адреса также
определяют адрес в блокнотной памяти, где начинается промежуточное хранение данных. Этот адрес
называется смещением байта (byte offset). Если назначенный адрес для команды записи, например,
13Ch, то блокнотная память будет сохранять поступающие данные, начиная со смещения байта 1Ch, и
заполнится только после 4-х байт. Соответствующее конечное смещение для этого примера составляет
1Fh. Для экономии скорости и повышения эффективности, назначенный адрес должен указать для записи начало новой страницы (то есть, смещение байта должно быть равно 0). Таким образом, емкость
32-байтнойблокнотнойпамятидоступнаполностью, врезультатеконечноесмещениетакжесоставляет
1Fh. Однако, можнозаписать 1 илинескольконепрерывныхбайтовгде-товнутристраницы. Конечное
смещение вместе с флагом частичного байта и флагом переполнения (Partial and Overflow Flag) в основном служит для поддержки мастера, проверяющего целостность данных после команды Запись.
Старший бит регистра E/S, называемый AA (Authorization Accepted) или подтверждение авторизации,
указывает, что для блокнотной памяти была принята и выполнена достоверная команда копирования.
Запись данных в блокнотную память сбрасывает этот флаг.
Рис. 9. АДРЕСНЫЕ РЕГИСТРЫ
№ бита 7 6 5 4 3 2 1 0
Адрес назначения (TA1) T7 T6 T5 T4 T3 T3 T1 T0
Адрес назначения (TA2) T15 T14 T13 T12 T11 T10 T9 T8
Регистр состояния (E/S)
(Только чтение)
AA 0 PF E4 E3 E2 E1 E0
ЗАПИСЬ С ВЕРИФИКАЦИЕЙ (ПРОВЕРКОЙ)
Для записи данных в микросхему DS1921L, блокнотная память должна использоваться в качестве
промежуточной памяти. Сначала мастер передает команду Запись в блокнотную память, чтобы установить нужный назначенный адрес, затем следуют данные для записи в блокнотную память. На следующем шаге мастер посылает команду чтения блокнота, чтобы считать ее содержимое и проверить целостность данных. В качестве заголовка (преамбулы) данных блокнотной памяти, микросхема DS1921L
передает запрошенный назначенный адрес TA1 и TA2 и содержимое регистра E/S. Если установлен
флаг PF, то данные не попадут точно в блокнотную память. Мастеру нет необходимости продолжать
считывание; он может начать новую попытку записи данных в блокнотную память. Аналогично, установка флага AA указывает, что команда записи не была опознана схемой i
Button. Если все прошло корректно, оба флага сбрасываются, и конечное смещение показывает адрес последнего байта, записанного
в блокнотную память. Теперь мастер может продолжить проверку каждого бита данных. После завершения проверки данных мастер должен передать команду копирования блокнота. За этой командой
должны точно следовать данные трех адресных регистров TA1, TA2 и E/S, как их считал мастер при
проверке блокнотной памяти. Как только микросхема DS1921L получит эти байты, она скопирует данные в требуемое расположение, начиная с назначенного адреса.
15 из 40
DS1921L
КОМАНДЫ ФУНКЦИЙ ПАМЯТИ
Блок-схема функций памяти (Рис. 10) описывает протоколы, необходимые для доступа к памяти, и
специальные регистры функций микросхемы DS1921L. Пример использования этих и других функций,
чтобы установить DS1921L для выполнения задачи, приведены в конце данного документа перед разделом «Электрические характеристики». Обмен данными между мастером и микросхемой DS1921L
осуществляется либо на обычной скорости (по умолчанию, OD = 0), либо на повышенной (Overdrive
Speed) скорости (OD = 1). Если конкретная установка ускоренного режима отсутствует, DS1921L предполагает использование обычной скорости.
Команда записи блокнота [0Fh]
После выхода команды Запись блокнота мастер должен сначала передать 2-байтный назначенный
адрес, за которым следуют данные для записи в блокнотную память. Данные будут записываться в
блокнотную память, начиная со смещения байта (T4:T0). Конечное смещение (E4:E0) будет смещением
байта, при котором мастер останавливает запись данных. Принимаются только полные байты данных.
Если последний байт данных является неполным, то его содержимое будет проигнорировано и будет
установлен флаг частичного байта (PF).
При выполнении команды записи блокнота генератор CRC, находящийся внутри микросхемы
DS1921L (см. Рис. 15), вычисляет контрольную сумму всего потока данных, начиная с кода команды и
заканчивая последним байтом данных, переданных мастером. Эта контрольная сумма CRC генерируется при помощи многочлена CRC16 сначала путем сброса генератора CRC, а затем сдвига в командном
коде (0Fh) команды записи блокнота, назначенных адресов TA1 и TA2, как они поступали от мастера, и
всех байтов данных. Мастер может завершить команду записи блокнота в любое время. Однако, если
конечное смещение составляет 11111b, мастер может передать 16 временных интервалов для чтения и
получит контрольную сумму, сгенерированную микросхемой DS1921L.
Диапазон 200h…213h страницырегистразащищенотзаписивовремявыполнениязадачи. Типы доступа к отдельным регистрам во время и в период между выполнениями задач см. в разделе «Организация страницы регистра» (Рис. 6).
Команда чтения блокнота [AAh]
Эта команда используется для проверки данных блокнотной памяти и назначенного адреса. После
передачи команды чтения блокнотной памяти мастер начинает считывание. Первые два байта будут
назначенным адресом. Следующий байт — это байт конечного смещения/состояния данных (E/S), за
которым идут данные блокнотной памяти, начиная со смещения байта (T4:T0), как показано на Рис. 9.
Независимо от фактического конечного смещения, мастер может считывать данные до конца блокнотной памяти, после чего он получит CRC16 кода команды, назначенные адреса TA1 и TA2, байт E/S и
данные блокнотной памяти, начиная с назначенного адреса. После считывания CRC мастер шины будет
считывать логические единицы из микросхемы DS1921L, пока не будет передан импульс сброса.
16 из 40
Рис. 10-1. БЛОК-СХЕМА ФУНКЦИЙ ПАМЯТИ (ЧАСТЬ 1)
Ведущий командуTX
памяти или управления
Из функций ПЗУ
(рисунок 12)
DS1921L
DS1921 инкр.
смещения
блокнота
0FH
Запись в
блокнот
Да
DS1921 устан.
EMCLR = 0
Ведущий TX
TA1 (T7:T0), TA2 (T15:T8)
DS1921 устан. смещ.
блокнота = (T4:T0)
и очищает (PF, AA )
Ведущий байтTX
данных в блокнот
DS1921 уст. (E4:E0)
= смещение блокнота
Ведущий
TX сброс?
Нет
Смещ.
блокнота =
Нет
Да
команды, адреса, данных
11111b ?
Ведущий
TX сброс?
Ведущий
Да
Нет
RX CRC16
Нет
Да
Байт
неполный?
Нет
DS1921 инкр.
смещения
блокнота
Да
PF = 1
AAH
Read
Scratchpad
Да
DS1921 устан.
EMCLR = 0
Ведущий RX
TA1 (T7:T0), TA2 (T15:T8)
Ведущий RX
регистр состояния
(E/S)
DS1921 уст. смещ.
блокнота = (T4:T0)
Ведущий байтRX
данных из блок нота
Ведущий
TX сброс?
Нет
Смещ.
блокнота =
Нет
команды, адреса, данных,
Да
11111b ?
Да
Ведущий
адреса назначения
RX CRC16
байта,
E/S
Ведущий
TX сброс?
К рисунку 10
часть 2
Нет
Да
Да
Ведущий RX "1”
Ведущий
TX сброс?
Ведущий RX "1”
Нет
К функциям ПЗУ
(рисунок 12)
Нет
От рисунка 10
часть 2
17 из 40
Рис. 10-2. БЛОК-СХЕМА ФУНКЦИЙ ПАМЯТИ (ЧАСТЬ 2)
От рисунка 10
часть 1
55H
Копировать
блокнот
DS1921 уст.
EMCLR = 0
Нет
Да
F0H
Чтение
памяти
DS1921 уст.
EMCLR = 0
DS1921L
Крисунку 10
часть 3
Нет
Да
Ведущий
RX "1”
Ведущий TX
TA1 (T7:T0), TA2 (T15:T8)
Ведущий TX
E/S байт
Код
авторизации
совпал?
Да
AA = 1
DS1921 копирует данные
из блокнота в память
Копирование
Нет
завершено
Да
DS1921 TX "0"
Ведущий
TX сброс?
Нет
Ведущий
RX "1”
Ведущий
TX сброс?
Да
Да
DS1921 Инкр.
счетчика
адреса
Нет
Ведущий TX
TA1 (T7:T0), TA2 (T15:T8)
DS1921 уст. адрес
памяти = (T15:T0)
Ведущий RX байт
данных из памяти
Ведущий
TX сброс?
Да
Нет
Память
исчерпана?
Ведущий RX "0”
Нет
Да
Нет
Ведущий RX "1”
Ведущий
Нет
К рисунку 10
часть 1
TX сброс?
Да
От рисунка 10
часть 3
18 из 40
0
Рис. 10-3. БЛОК-СХЕМА ФУНКЦИЙ ПАМЯТИ (ЧАСТЬ 3)
От рисунка 10
часть 2
Усл овие Ds1921
TA1 (T7:T0), TA2 (T15:T8)
A5H
Чтение памяти
с CRC
DS1921 уст.
EMCLR = 0
Ведущий TX
DS1921 уст. адрес
памяти = (T15:T0)
Да
Нет
DS1921L
Крисунку 10
часть 4
Усл овие ведущего
Ведущий RX
байт 00
Да
Да
команды, адреса, данных
(1-й стр.); данных
Память
исчерпана?
Нет
Ведущий байтRX
данных из памяти
Ведущий
TX сброс?
Нет
Конец страницы?
Да
Ведущий
(последующихстраниц)
RX CRC16
CRC16
CRC OK?
Нет
Ведущий TX
сброс
DS1921 Инкр.
счетчика
адреса
Нет
Да
К рисунку 10
часть 2
19 из 40
От рисунка 1
часть 4
Рис. 10-4. БЛОК-СХЕМА ФУНКЦИЙ ПАМЯТИ (ЧАСТЬ 4)
От рисунка 10
часть 3
част. отсчетов, задер.
память авар. температ
3CH
Очистка
памяти
Да
EMCLR = 1?
Да
DS1921 сбрасывает
запуска задачи,
счетчик вып. задачи,
отметки времени
DS1921 сбрасывает
Нет
Нет
DS1921 уст.
EMCLR = 0
выполняется?
DS1921 уст.
44H
Преобр.
темпер.
Преобр.
TCB\ = 0
DS1921L
Нет
Да
Да
Нет
DS1921 сбрасывает
память гистограмм
DS1921 уст.
MEMCLR = 1
DS1921 уст.
EMCLR = 0
Нет
Ведущий
TX сброс?
Да
DS1921 Измерение
температуры
DS1921 копир. резул.
по адресу 0211h
DS1921 уст.
TCB\ = 1
Нет
Ведущий
TX сброс?
Да
Нет
Ведущий
TX сброс?
Да
К рисунку 10
часть 3
20 из 40
DS1921L
Копирование блокнота [55h]
Эта команда используется для копирования данных из блокнотной памяти в перезаписываемые области памяти. После передачи команды копирования блокнота, мастер должен обеспечить 3-байтный
код авторизации, который можно получить посредством считывания блокнотной памяти для верификации. Этот код (кодограмма) должен точно соответствовать данным, содержащимся в трех адресных регистрах (TA1, TA2, E/S, в порядке их следования). Если код совпадает, то будет установлен флаг AA
(Authorization Accepted — авторизация принята) и начнется копирование. Кодограмма, состоящая из
чередующихся единиц и нулей, будет передаваться после завершения копирования данных до тех пор,
пока мастер не передаст импульс сброса. Во время процесса копирования любая попытка сброса прибора будет проигнорирована. Копирование обычно занимает 2 мкс на каждый байт.
Данные, подлежащие копированию, определяются тремя адресными регистрами. Данные блокнотной памяти будут скопированы от начального до конечного смещения, начиная с назначенного адреса.
При помощи этой команды в память можно скопировать в пределах от 1-го до 32-х байт. Флаг AA будет оставаться в положении логической 1, пока он не будет сброшен следующей командой записи
блокнотной памяти.
Чтение памяти [F0h]
Команда чтения памяти может использоваться для чтения всей памяти. После передачи команды
мастер должен передать 2-байтный адрес назначения. После этих 2-х байт мастер считывает данные,
начиная с назначенного адреса, и может продолжать чтение до конца памяти, где будут считаны логические нули. Важно понимать, что регистры назначенных адресов будут содержать предусмотренные
(готовые) адреса (address provided). Байт конечного смещения/состояния данных не изменяется.
Аппаратная часть микросхемы DS1921L обеспечивает возможность безошибочной записи в область
памяти. Для защиты данных в среде 1-Wire при считывании и одновременном увеличении скорости передачи данных, рекомендуется упаковывать данные в пакеты размером в одну страницу памяти каждый. Такой пакет обычно хранит 16-битную контрольную сумму CRC с каждой страницей данных, чтобы обеспечить быструю безошибочную передачу данных. Это исключает необходимость многократного считывания страницы для проверки корректности принятых данных. (См. главу 7 документа «Book
of DS19xx i
Buttton Standards» или «Application Note 114» , где содержатся рекомендации по структуре
файла.)
Чтение памяти с CRC [A5h]
Команда чтения памяти с CRC используется для чтения данных памяти, которые не могут упаковываться (пакетироваться), например, страница регистра и данные, записанные прибором во время выполнения задачи. Команда действует, в сущности, таким же образом, как и обычная команда чтения памяти, за исключением того, что микросхема DS1921L генерирует 16-битную контрольную сумму CRC и
передает ее следом за последним байтом данных страницы памяти.
После передачи кода команды чтения памяти с CRC, мастер шины посылает 2-байтный адрес (TA1 =
T7:T0, TA2 = T15:T8), который указывает расположение начального байта. Вместе с последовательными временными интервалами считываемых данных мастер принимает данные от микросхемы DS1921L,
начиная с начального адреса и продолжая до тех пор, пока не будет достигнут конец 32-байтной страницы. В этой точке мастер шины передает 16 дополнительных временных интервалов считываемых
данных и принимает 16-битную контрольную сумму CRC. Вместе с последовательными временными
интервалами считываемых данных мастер принимает данные, начиная с начала следующей страницы,
следом за которыми опять идет контрольная сумма для данной страницы. Эта последовательность будет продолжаться до тех пор, пока мастер шины не передаст прибору импульс сброса.
С началом процедуры чтения памяти с CRC значение контрольной суммы CRC представляет собой
результат сдвига байта команды в установленный в начальное состояние генератор CRC, а затем 2-х
байтов адреса и содержимого памяти данных. После считывания 16-битной контрольной суммы CRC
последней страницы мастер шины принимает логические нули от микросхемы DS1921L и контрольные
суммы CRC на границах страниц, пока не передаст импульс сброса. Последовательность выполнения
команды чтения памяти с CRC может быть завершена в любой точке посредством передачи импульса
сброса.
21 из 40
DS1921L
Очистка памяти [3Ch]
Команда очистки памяти используется для сброса частоты отсчетов, задержки запуска выполнения
задачи, отметки времени выполнения задачи и счетчика отсчетов выполнения задачи в странице регистра, а также очистки памяти аварийной температуры и памяти для гистограммы температуры. Память
необходимо очистить, чтобы установить прибор для выполнения другой задачи. Для выполнения команды очистки памяти бит EMCLR в регистре управления должен быть установлен в 1. Команда очистки памяти должна передаваться вместе с ближайшим следующим доступом к функциям памяти прибора (синхронизированный доступ). Передача любой другой достоверной команды функций памяти приведет к сбросу бита EMCLR. Выполнение команды очистки памяти занимает примерно 500 мкс и не
может быть прервано. Однако, во время выполнения команды очистки памяти можно передать последовательность сброса/присутствия, выполнить любую команду ПЗУ и получить доступ к 4096 битам
ОЗУ пользователя или чтению регистра RTC или регистра состояния. По завершении команды очистки
памяти бит MEMCLR в регистре состояния будет считываться как 1, а бит EMCLR — как 0.
Преобразование значений температуры [44h]
Если процесса выполнения задачи не происходит, то команда преобразования температуры может
передаваться для измерения текущего значения температуры прибора. Результат преобразования температуры будет находиться в памяти по адресу 211h в странице регистра. Выполнение данной команды
занимает примерно 300 мс и не может быть прервано. Во время преобразования значений температуры
возможен доступ к памяти любого прибора.
СИСТЕМА НА ОСНОВЕ ШИНЫ 1-WIRE
Шина 1-Wire (однопроводная) представляет собой систему, которая имеет только одного мастера
шины и одного или более ведомых. Во всех случаях микросхема DS1921L является ведомым прибором.
Мастер шины — это обычно микроконтроллер или персональный компьютер (PC). Для небольших конфигураций сигналы для обмена данными по шине 1-Wire могут генерироваться под управлением
программного обеспечения, используя один вывод порта. Для сетей с множеством датчиков рекомендуется использовать микросхему драйвера однопроводной линии DS2480B или адаптеры последовательного порта на основе данной микросхемы (серий DS9097U). Это упрощает разработку аппаратной части
и освобождает микропроцессор от необходимости работы в реальном времени.
Обсуждение данной системы шины делится на три направления: конфигурация аппаратной части,
последовательность транзакции (пересылки данных) и сигнализация 1-Wire (типы сигналов и временные соотношения). Протокол 1-Wire определяет транзакции шины в терминах состояния шины во время заданных временных интервалов, которые начинаются на падающем фронте синхроимпульсов, поступающих от мастера шины. Подробное описание протокола приведено в главе 4 документа «Book of
DS19xx i
Buttton Standards».
АППАРАТНАЯ КОНФИГУРАЦИЯ
По определению, шина 1-Wire имеет только одну линию; важно, что любым прибором, подключенным к шине, можно управлять в соответствующее время. Для этого каждый прибор, присоединенный к
шине 1-Wire, должен иметь выходы с открытым стоком или с тремя состояниями. Порт 1-Wire микросхемы DS1921L представляет собой схему с открытым стоком, внутренняя схема порта эквивалентна
показанной на Рис. 11.
Многоточечная шина состоит из однопроводной шины (1-Wire) с множеством подсоединенных ведомых. На стандартной скорости шина 1-Wire имеет максимальную скорость передачи данных 16.3
Кбит/с. Скорость может быть увеличена до 142 Кбит/с за счет активизации ускоренного режима (Overdrive mode). Полное соответствие микросхемы DS1921L стандарту iButton не гарантируется. Максимальная скорость передачи данных этой микросхемы составляет 14.1 Кбит/с в стандартном режиме и
125 Кбит/с — в ускоренном.
Величина сопротивления подтягивающего резистора в основном зависит от размера сети и режима
загрузки. Для большинства применений оптимальной величиной сопротивления подтягивающего резистора будет примерно 2.2 кОм.
22 из 40
V
DS1921L
Состояние незанятости для шины 1-Wire представляет ВЫСОКИЙ уровень. Когда по каким-либо
причинам транзакцию необходимо отложить, шина должна быть оставлена в состоянии незанятости,
если транзакция будет возобновлена. Если этого не сделать и оставить шину в состоянии НИЗКОГО
уровня более чем на 16 мкс (при повышенной скорости) или на 120 мкс (при стандартной скорости), то
один или несколько приборов, подключенных к шине, могут быть сброшены. При использовании микросхемы DS1921L шину можно оставить в состоянии НИЗКОГО уровня не дольше, чем на 15.2 мкс при
повышенной скорости, чтобы гарантировать, что ни один из ведомых приборов на шине 1-Wire не выполнит сброс. Несмотря на ограниченное соответствие, микросхема DS1921L будет осуществлять корректную связь при применении вместе с драйвером 1-Wire DS2480B и адаптерами последовательного
порта, которые базируются на этой микросхеме драйвера.
Рис. 11. АППАРАТНАЯ КОНФИГУРАЦИЯ
ВедущийшиныDS1921 1-Wire порт
RX
PUP
Смотрите
текст
RXДанные
TX
Выводоткрытыйсток
RX = прием
TX = передача
Тип.
5 µA
100 Ом
MOSFET
TX
ПОСЛЕДОВАТЕЛЬНОСТЬ ТРАНЗАКЦИИ
Протокол для организации доступа микросхемы DS1921L через порт 1-Wire состоит в следующем:
Инициализация
•
Команда функции ПЗУ
•
Команда функции памяти
•
Транзакция/данные
•
ИНИЦИАЛИЗАЦИЯ
Все транзакции на шине 1-Wire начинаются с последовательности инициализации. Последовательность инициализации состоит из импульса сброса, передаваемого мастером шины, за которым следует
импульс (или импульсы) присутствия, передаваемый ведомым (или ведомыми).
Импульс присутствия сообщает мастеру шины, что микросхема DS1921L подключена к шине и готова к работе. Подробнее см. в разделе «Сигнализация шины 1-Wire».
КОМАНДЫ ФУНКЦИЙ ПЗУ
После того, как мастер шины определил присутствие прибора, он может передать одну из семи команд функций ПЗУ. Все команды функций ПЗУ имеют длину 8 бит. Эти команды перечислены ниже
(переченьотноситсякблок-схеменаРис. 12).
23 из 40
DS1921L
Чтение ПЗУ [33h]
Эта команда позволяет мастеру шины считывать 8-битный групповой код микросхемы DS1921L, код
температурного диапазона плюс уникальный 36-битный серийный номер и 8-битную контрольную
сумму CRC. Эта команда может использоваться, только если на шине имеется одна микросхема
DS1921L. Если на шине присутствует более одного ведомого, то произойдет конфликтная ситуация,
когда все ведомые будут пытаться осуществлять передачу в одно и тоже время (понижение уровней на
открытых стоках приведет к получению монтажного И). Результирующий групповой код и код температурного диапазона плюс уникальный 36-битный серийный номер дадут в результате несовпадение
контрольной суммы CRC.
Сравнение ПЗУ [55h]
Команда сравнения ПЗУ, за которой следует 64-битная последовательность ПЗУ, позволяет мастеру
шины обращаться к определенной микросхеме DS1921L на многоточечной шине. Только та микросхема DS1921L, которая точно соответствует 64-битной последовательности ПЗУ, ответит на последующую команду функции памяти. Все ведомые, не соответствующие 64-битной последовательности ПЗУ,
будут ожидать импульс сброса. Данная команда может использоваться при одном или множестве приборов на шине.
Пропуск ПЗУ [CCh]
Эта команда может сэкономить время в системе с одноточечной шиной, позволяя мастеру шины получить доступ к функциям памяти без передачи 64-битного кода ПЗУ. Если на шине присутствует более одного ведомого и следом за командой чтения передается команда пропуска ПЗУ, на шине произойдет конфликт данных, поскольку множество ведомых будут осуществлять передачу одновременно
(понижение уровней на открытых стоках приведет к получению монтажного И).
Поиск ПЗУ [F0h]
Когда система запускается первоначально, мастер шины может не знать номеров приборов, подсоединенных к шине 1-Wire, или их 64-битных кодов ПЗУ. Команда поиска ПЗУ позволяет мастеру шины
использовать процесс исключения, чтобы определить 64-битные коды ПЗУ всех ведомых приборов на
шине. Процесс поиска ПЗУ представляет собой повторение простой процедуры, состоящей из трех шагов: считывание бита, считывание побитного дополнения, а затем запись необходимого значения данного бита. Мастер шины выполняет эту простую 3-шаговую процедуру по каждому биту ПЗУ. После
завершения одного полного прохода мастер шины знает содержимое ПЗУ одного прибора. Номера остальных приборов и коды их ПЗУ могут быть определены путем дополнительных проходов. Всестороннее обсуждение поиска ПЗУ, включая реальный пример, приведено в главе 5 документа «Book of
DS19xx i
Buttton Standards».
Условный поиск [ECh]
Команда условного поиска ПЗУ действует аналогично команде поиска ПЗУ, за исключением того,
что в процессе поиска будут участвовать только приборы, соответствующие определенному условию.
Это условие устанавливается при помощи битов функций TAS, THS и TLS в регистре управления (адрес 20Eh). Условный поиск ПЗУ является эффективным методом, позволяющим мастеру шины определять приборы в многоточечной системе, которые должны передать информацию о важном событии,
например, о выходе температуры за пределы допустимого диапазона. После каждого прохода условного поиска, при котором 64-битное ПЗУ для указанного прибора на многоточечной шине было успешно
определено, к этому конкретному прибору может быть получен доступ, как и в случае передачи команды сравнения ПЗУ, в то время как все другие приборы будут исключены из процесса поиска и будут
ожидать импульса сброса.
Для условного поиска можно выбрать любое сочетание из трех условий поиска при помощи записи
логической 1 в соответствующий бит. Эти биты прямо соответствуют флагам в регистре состояния
прибора. Если флаг в регистре состояния установлен в 1 и соответствующий бит в регистре управления
также установлен в 1, то прибор ответит на команду условного поиска. Если выбрано более одного бита
условий поиска, то первое произошедшее событие заставит прибор ответить на команду условного поиска.
24 из 40
Рис. 12-1. БЛОК-СХЕМА ФУНКЦИЙ ПЗУ (ЧАСТЬ 1)
Ведущий TX
От функций памяти
(рисунок 10)
импульс сброса
Короткий
импульс сброса?
Да
Нет
DS1921L
От рисунка 12
часть 2
OD = 0
33H
Чтение
ПЗУ?
Да
DS1921 TX
Кодсемейства
1 байт
DS1921 TX
температ.
диапазон и
серийный номер
6 байт
F0H
Поиск
ПЗУ?
2)
1)
К рисунку 12
часть 2
Нет
1)
1)
1)
1)
1)
1)
Да
Да
Нет
Нет
1)
1)
1)
Нет
1)
1)
1)
Нет
ECH
Поиск ПЗУ по
условию?
Да
Усл овие вып.?
Да
DS1921 TX бит 0
DS1921 TX бит 0
Ведущий TX бит 0
Бит 0 совпал?
Да
DS1921 TX бит 1
DS1921 TX бит 1
Ведущий TX бит 1
DS1921 TX
Импульс присутствия
Ведущий TX команду
функции ПЗУ
Нет
1)
1)
55H
Совпадение
ПЗУ?
Ведущий TX бит 0
Бит 0 совпал?
Ведущий TX бит 1
Бит 1 совпал?
Да
Да
1)
Нет
1)
Нет
Нет
DS1921 TX бит 0
DS1921 TX бит 0
Ведущий TX бит 0
Нет
Бит 0 совпал?
DS1921 TX бит 1
DS1921 TX бит 1
Ведущий TX бит 1
Нет
Бит 1 совпал?Бит 1 совпал?
Да
DS1921 TX
CRC байт
1) Передача или прием данных выполняется навысокойскорости, если OD = 1.
2) Импульс присутствия короткий, если OD=1.
1)
Ведущий TX бит 63
Бит 63 совпал?
Да
1)
Нет
Да
DS1921 TX бит 63
DS1921 TX бит 63
Ведущий TX бит 63
Нет
Бит 63 совпал?Бит 63 совпал?
К функциям памяти
1)
1)
1)
Да
(рисунок 10)
DS1921 TX бит 63
DS1921 TX бит 63
Ведущий TX бит 63
Нет
25 из 40
Да
Да
1)
1)
1)
К рисунку 12
часть 2
От рисунка 12
часть 2
Рис. 12-2. БЛОК-СХЕМА ФУНКЦИЙ ПЗУ (ЧАСТЬ 2)
К рисунку 12
часть 1
DS1921L
От рисунка 12
часть 1
CCH
Пропуск
ПЗУ?
Да
Нет
3CH
Ускоренный
пропуск ПЗУ?
OD = 1
Да
Ведущий TX
импульс сброса?
Да
Нет
Нет
Ускоренный
совпадение?
Ведущий TX бит 0
Бит 0 совпал?
Ведущий TX бит 1
Бит 1 совпал?
Ведущий TX бит 63
69H
OD = 1
Нет
Да
3)
Нет
Да
3)
Нет
Да
3)
Нет
Да
От рисунка 12
часть 1
К рисунку 12
часть 1
Бит 63 совпал?
3) Всегда передача на высокой скорости.
26 из 40
DS1921L
Ускоренный пропуск ПЗУ [3Ch]
При одноточечной шине эта команда может сэкономить время, позволяя мастеру шины получить
доступ к функциям памяти без передачи 64-битного кода ПЗУ. В отличие от команды пропуска ПЗУ,
команда ускоренного пропуска ПЗУ устанавливает микросхему DS1921L в ускоренный режим (OD =
1). Весь обмен данными после этой команды должен происходить на повышенной скорости до тех пор,
пока импульс сброса длительностью минимум 480 мкс не вернет все приборы на шине обратно в режим
работы со стандартной скоростью (OD = 0).
На многоточечной шине передача этой команды установит в ускоренный режим приборы, которые его поддерживают. Для последующей адресации определенного прибора, поддерживающего ускоренный режим, необходимо передать на повышенной скорости импульс сброса, а затем команду сравнения ПЗУ или поиск ПЗУ. Это сократит время для процесса поиска. Если на шине присутствует более
одного ведомого, поддерживающего ускоренный режим, и следом за командой чтения передается команда ускоренного пропуска ПЗУ, на шине произойдет конфликт данных, поскольку множество ведомых будут осуществлять передачу одновременно (понижение уровней на открытых стоках приведет к
получению монтажного И).
Ускоренное сравнение ПЗУ [69h]
Команда ускоренного сравнения ПЗУ, за которой следует 64-битная последовательность ПЗУ, передаваемая на повышенной скорости, позволяет мастеру шины обращаться к определенной микросхеме
DS1921L на многоточечной шине и одновременно устанавливать ее в ускоренный режим. Только та
микросхема DS1921L, которая точно соответствует 64-битной последовательности ПЗУ, ответит на последующую команду функций памяти. Ведомые, которые уже находятся в ускоренном режиме после
предыдущей передачи команды ускоренного пропуска или ускоренного сравнения, будут оставаться в
ускоренном режиме. Все совместимые с ускоренным режимом ведомые вернутся к стандартной скорости при следующем импульсе сброса длительностью не менее 480 мкс. Команда ускоренного пропуска
ПЗУ может использоваться при одном или множестве приборов на шине.
СИГНАЛИЗАЦИЯ ШИНЫ 1-WIRE
Для обеспечения целостности данных микросхема DS1921L требует строгого соблюдения протоколов. Протокол состоит из четырех типов сигнализации на одной линии: последовательность сброса с
импульсом сброса и импульсом присутствия, запись 0, запись 1 и чтение данных. За исключением импульса присутствия, все эти сигналы инициируются мастером. Микросхема DS1921L может обмениваться информацией на двух различных скоростях: стандартной и повышенной. Если не было специальной установки в ускоренный режим, микросхема DS1921L будет работать на стандартной скорости.
Во время ускоренного режима ко всем сигналам применяется ускоренная синхронизация.
Для перехода шины из неактивного в активное состояние, напряжение на линии 1-Wire должно
упасть с уровня
что микросхема DS1921L готова к приему данных, которые задаются корректной командой функций
ПЗУ и командой функций памяти. При смешанном составе сети длительность интервала НИЗКОГО
уровня импульса сброса
должна быть достаточна для того, чтобы самый медленный ведомый при-
t
RSTL
бор на шине 1-Wire мог опознать его как импульс сброса. Для микросхемы DS1921L эта длительность
составляет 480 мкс при стандартной скорости и 62 мкс при повышенной скорости. Если мастер шины
использует управление скоростью нарастания напряжения на падающем фронте, он должен понизить
напряжение линии на время
t
RSTL
длякомпенсациифронта. Интервалвремени
t
F
длительностью
t
RSTL
+
480 мксилибольшеприведетквыходуизускоренногорежима, возвращаяприборкстандартнойскорости. Еслимикросхема DS1921L находитсявускоренномрежиме, и
составляетнеболее 80 мкс,
t
RSTL
прибор останется в этом же режиме.
27 из 40
Рис. 13. ПРОЦЕДУРА ИНИЦИАЛИЗАЦИИ (ИМПУЛЬСЫ СБРОСА И ПРИСУТСТВИЯ)
V
IHMASTER
V
V
PUP
V
V
ILMAX
0V
TH
TL
t
ВедущийимпульссбросаTX
F
t
RSTL
ВедущийимпульсприсутствияRX
t
PDH
t
MSP
t
PDL
t
RSTH
t
REC
DS1921L
РезисторВедущий
DS1921L
После того, как мастер шины освободит линию, он переходит в режим приема (RX). Теперь напряжение на шине 1-Wire повышается до
в случае драйвера DS2480B, активной цепи. После пересечения уровня порога
DS1921L находится в режиме ожидания в течение
линию на НИЗКИЙ уровень на время
проверить логическое состояние линии 1-Wire в момент времени
Минимальная длительность окна
окончанию интервала
сети интервал
следует увеличить минимум до 480 мкс для стандартной скорости и 48 мкс для по-
Обмен данными с микросхемой DS1921L происходит в течение временных интервалов, в каждом из
которых передается один бит. Временные интервалы записи передают данные от мастера шины к ведомому. Временные интервалы чтения переносят данные от ведомому к мастеру. Определения временных
интервалов чтения и записи иллюстрируются на Рис. 14.
Обмен данными начинается, когда мастер переводит линию данных на НИЗКИЙ уровень. Как только напряжение на линии 1-Wire падает ниже порога
, микросхема DS1921L начинает свой внутрен-
V
TL
ний отсчет времени. Разброс длительности при формировании временного интервала в ведомом приборе приводит к созданию окна выборки, которое длится от
t
SLSMIN
до
t
. Напряжениеналиниидан-
SLSMAX
ных в точке выборки определяет, как микросхема DS1921L декодирует временной интервал: 1 или 0.
Для надежной связи напряжение должно быть либо ниже
в течение всего окна выборки.
V
TH
V
либовышемаксимальногозначения
ILMAX
Передача от мастера (ведущего) к ведомому
=
Для временного интервала записи1, время снижения уровня мастером (
t
MPD1
быть достаточно коротким, чтобы позволить напряжению на линии 1-Wire достичь уровня
времени
ней точки выборки (
, являющийся самой ранней точкой выборки микросхемы DS1921L. После самой позд-
t
SLSMIN
t
SLSMAX
) необходимовремявосстановления (
), преждечемможетначатьсясле-
t
REC
t
W1L
– ε +
V
TH
t
F
дующий временной интервал.
Для временного интервала записи 0, время снижения уровня мастером (
t
MPD0
=
t
W0L
+
t
F
быть достаточно длительным, чтобы поддерживать напряжение на линии данных ниже уровня
точке выборки медленной микросхемы DS1921L, то есть
t
интервала напряжение на линии данных сначала должно возрасти выше
не до окончания времени восстановления
t
REC
.
. Доначаласледующеговременного
SLSMAX
иоставатьсянаэтомуров-
V
TH
28 из 40
) должно
вмомент
) должно
в
V
ILMAX
Рис. 14. ВРЕМЕННАЯ ДИАГРАММА ЧТЕНИЯ/ЗАПИСИ
Временная диаграмма записи 1
t
W1L
&
V
IHMASTER
V
V
PUP
V
V
ILMAX
0V
TH
TL
t
F
t
SLOT
DS1921L
РезисторВедущий
Временная диаграмма записи 0
t
W0L
V
IHMASTER
V
V
PUP
V
V
ILMAX
TH
TL
0V
t
F
РезисторВедущий
Временная диаграмма чтения данных
t
MSR
Окно
выборки
ведущим
V
IHMASTER
V
V
PUP
V
V
ILMAX
0V
TH
t
RL
TL
t
F
ä
DS1921L
t
REC
t
SLOT
DS1921L
t
REC
t
SLOT
РезисторВедущий
DS1921L
Передача от ведомого к мастеру (ведущему)
Временной интервал чтенияданных очень похож на временной интервал записи 1. Мастер начинает временной интервал чтения данных с перевода линии данных на НИЗКИЙ уровень. Как только напряжение на линии 1-Wire падает ниже порога
отсчет времени. Время снижения уровня мастером (
чтобы учесть время установки
, после которого микросхема DS1921L доставит бит к своему порту 1-
. Еслибитданных — это 1, томикросхема DS1921L вовсенебудетудерживать
t
SPD
НИЗКИЙуровеньналинииданных.
29 из 40
DS1921L
Мастер делает выборку линии данных в момент времени
одной стороны, суммой
и времени нарастания (δ), и
t
RL
t
SU
точкавыборкидляслучая чтения 0расположенаповременинепозже, чем
ния 1, напряжениеналинии 1-Wire должнодостигнутьуровня
, внутриокна, котороеопределяется, с
t
MSR
+
, с другой стороны. Оптимальная
t
SPDMIN
V
IHMASTER
+
t
SU
вмоментвремени
. Вслучаечте-
t
SPDMIN
t
MSR
. Это
условие определяет максимальную длительность времени снижения уровня мастером. Для обеспечения
надежной связи время снижения уровня мастером должно быть как можно короче, максимально увеличивая время достижения уровня
интервал
и оставаться на этом уровне до окончания времени восстановления
Длямикросхемы DS1921L существуетдваразличныхтипаконтроляциклическиизбыточнымкодом
(Cyclic Redundancy Check — CRC). Один из них — это 8-битный CRC, которыйхранитсявстаршем
байте 64-битного ПЗУ. Мастер шины может вычислить значение контрольной суммы CRC из первых 56
битов 64-битного ПЗУ и сравнить его с величиной, хранящейся в микросхеме DS1921L, чтобы определить, были ли данные ПЗУ приняты без ошибок. Эквивалентная полиномиальная функция данного CRC
представляет собой многочлен X
8
+ X5 + X4 + 1. Эта 8-битнаяконтрольнаясумма CRC принимаетсяв
прямом (не инвертированном) коде. Она вычисляется при производстве прибора и записывается лазером в ПЗУ.
Другой CRC — это 16-битный код, генерируемый в соответствии с CRC16-полиномиальной функ-
16
цией X
+ X15 + X2 + 1. Эта контрольная сумма CRC используется для определения ошибок при считы-
вании данных памяти с помощью команды чтения памяти с CRC и для быстрой проверки передаваемых
данных при записи или считывании блокнотной памяти. Это тот же тип CRC, который используется в
приборах i
расширенного файла i
Button. В противоположность 8-битной контрольной сумме CRC, 16-битнаякон-
трольная сумма CRC всегда передается в обратном (инвертированном) коде. Генератор CRC внутри
микросхемы DS1921L (Рис. 15) будет вычислять новую 16-битную контрольную сумму CRC, как показано в блок-схеме команд, приведенной на Рис. 10. Мастер шины сравнивает значение CRC, считанное
с прибора, с тем, что он вычислил из данных, и решает, продолжать ему операцию или считать часть
данных заново с ошибкой CRC. С началом прохождения через последовательность операций чтения
памяти с CRC, значение 16-битной контрольной суммы CRC будет результатом сдвига в установленный в исходное состояние генератор CRC сначала байта команды, а затем 2 адресных байтов и байтов
данных. Последующие проходы через последовательность операций чтения памяти с CRC, будут создавать 16-битную контрольную сумму CRC, которая является результатом сброса генератора CRC и
затем сдвига в него байтов данных.
При команде записи блокнота контрольная сумма CRC генерируется путем сброса генератора CRC и
последующего сдвига в него кода команды, адресов назначения TA1 и TA2 и всех байтов данных.
DS1921L будет передавать эту контрольную сумму CRC, только если байты данных, записанные в
блокнотную память, содержат конечное смещение блокнотной памяти 11111b. Данные могут начинаться в блокнотной памяти с любого расположения.
При команде чтения блокнота контрольная сумма CRC генерируется путем сброса генератора CRC и
последующего сдвига в него кода команды, адресов назначения TA1 и TA2, байта E/S и данных блокнотной памяти, начинающихся с назначенного адреса. DS1921L будет передавать эту контрольную
сумму CRC, только если считывание будет продолжаться до конца блокнотной памяти, независимо от
действительного конечного смещения.
Дополнительную информацию о генерировании значений CRC можно получить из документов «Ap-
plication Note 27» и «Book of DS19xx i
Button Standards».
30 из 40
1
Рис. 15. ОПИСАНИЕ АППАРАТНОЙ ЧАСТИ И МНОГОЧЛЕН CRC-16
Полином= X16+ X
5
+ X2+ 1
DS1921L
Шаг
1
0
X
Шаг
9
8
X
Шаг
2
1
X
Шаг
10
9
X
Шаг
11
10
X
X
Шаг
3
2
X
Шаг
12
11
X
Шаг
4
3
X
Шаг
13
12
X
Шаг
5
4
X
Шаг
14
13
X
Шаг
6
5
X
Шаг
15
14
Входные данные
Шаг
7
6
X
Шаг
8
7
X
Шаг
16
15
X
16
X
Выход CRC
31 из 40
DS1921L
ПРИМЕР ВЫПОЛНЕНИЯ ЗАДАЧИ: ПОДГОТОВКА И ЗАПУСК НОВОГО ВЫПОЛНЕНИЯ ЗАДАЧИ
Предположение: предыдущее выполнение задачи подошло к концу. Для завершения текущего выполнения задачи можно, например, выполнить последовательность действий, указанных в шаге 1, или
записать 0 в бит MIP в регистре состояния.
Подготовка микросхемы DS1921L к выполнению задачи, включая запуск выполнения задачи, требует четырех шагов:
Шаг 1: установка часов реального времени (если они требуют регулировки).
Шаг 2: сброс данных предыдущего выполнения задачи.
Шаг 3: установка условий поиска и задержки запуска выполнения задачи.
Шаг 4: установка допустимых значений температуры и запись частоты отсчетов для запуска выполнения задачи.
Шаг 1
Предположим, что текущее значение времени составляет 15:30:00 (15 часов 30 минут 00 секунд),
день недели — понедельник, дата — 1 апреля 2002 года. В результате в регистры RTC следует записать
следующие данные:
Адрес: 200h 201h 202h 203h 204h 205h 206h
Данные: 00h 30h 15h 01h 81h 04h 02h
Если к мастеру шины подключена только одна микросхема DS1921L, обмен данными на шаге 1 заключается в следующем:
РЕЖИМ МАСТЕРА ДАННЫЕ (СНАЧАЛА
МЛАДШИЙ БИТ)
Передача (Сброс) Импульс сброса (480…960 мкс)
Прием (Присутствие) Импульс присутствия
Передача CCh Передача команды Пропуск ПЗУ
Передача 0Fh Передача команды Запись блокнота
Передача 00h TA1, начальное смещение = 00h
Передача 02h TA2, адрес = 0200h
Передача <7 байтов данных > Запись 7 байтов данных в блокнотную память
Передача (Сброс) Импульс сброса
Прием (Присутствие) Импульс присутствия
Передача CCh Передача команды Пропуск ПЗУ
Передача AAh Передача команды Чтение блокнота
Прием (Присутствие) Импульс присутствия
Передача CCh Передача команды Пропуск ПЗУ
Передача 3Ch Передача команды очистки памяти
Передача (Сброс) Импульс сброса
Прием (Присутствие) Импульс присутствия
КОММЕНТАРИИ
(КОДАВТОРИЗАЦИИ)
33 из 40
DS1921L
Шаг 3
В данном примере перебор запрещен, и условие поиска устанавливается только для высокой температуры. Выполнение задачи запускается с задержкой 90 (5Ah) минут. Это приводит к записи следующих данных в регистры специальных функций:
Адрес: 20Eh 20Fh 210h 211h 212h 213h
Данные: 02h 00h* 00h* 00h* 5Ah 00h
* Запись в расположение с адресами 20Fh…211h осуществляется быстрее, чем доступ к регистру за-
держки запуска выполнения задачи в отдельном цикле. Попытка записи не оказывает влияния на со-
держимое этих регистров.
Если к мастеру шины подключена только одна микросхема DS1921L, обмен данными на шаге 3 заключается в следующем:
РЕЖИМ МАСТЕРА ДАННЫЕ (СНАЧАЛА
МЛАДШИЙ БИТ)
Передача (Сброс) Импульс сброса (480…960 мкс)
Прием (Присутствие) Импульс присутствия
Передача CCh Передача команды Пропуск ПЗУ
Передача 0Fh Передача команды Запись блокнота
Передача 0Eh TA1, начальное смещение = 0Eh
Передача 02h TA2, адрес = 020Eh
Передача <6 байт данных > Запись 6 байт данных в блокнотную память
Передача (Сброс) Импульс сброса
Прием (Присутствие) Импульс присутствия
Передача CCh Передача команды Пропуск ПЗУ
Передача AAh Передача команды Чтение блокнота
В этом примере допустимые значения температуры устанавливаются на уровне –5°C для нижнего
порога температуры и 0°C для верхнего порога температуры. Частота отсчетов составляет 1 раз в каждые 10 минут, что позволяет выполнять задачу в течение 14 дней. Это приводит к записи следующих
данных в регистры специальных функций:
Адрес: 20Bh 20Ch 20Dh
Данные: 46h 50h 0Ah
Если к мастеру шины подключена только одна микросхема DS1921L, обмен данными на шаге 4 заключается в следующем:
РЕЖИМ МАСТЕРА ДАННЫЕ (СНАЧАЛА
МЛАДШИЙ БИТ)
Передача (Сброс) Импульс сброса (480…960 мкс)
Прием (Присутствие) Импульс присутствия
Передача CCh Передача команды Пропуск ПЗУ
Передача 0Fh Передача команды Запись блокнота
Передача 0Bh TA1, начальное смещение = 0Bh
Передача 02h TA2, адрес = 020Bh
Передача <3 байт данных > Запись 3 байт данных в блокнотную память
Передача (Сброс) Импульс сброса
Прием (Присутствие) Импульс присутствия
Передача CCh Передача команды Пропуск ПЗУ
Передача AAh Передача команды Чтение блокнота
Если шаг 4 был выполнен успешно, регистр отметок времени выполнения задачи будет содержать
дату и время часов реального времени (RTC), бит MIP в регистре состояния будет установлен в 1, а бит
MEMCLR — в 0.
35 из 40
DS1921L
ФИЗИЧЕСКИЕ ХАРАКТЕРИСТИКИ
Размер См. габаритный чертеж
Вес 3.3 г
Влажность 90% (относительная влажность) при 50°C
Высота над уровнем моря 10 000 футов
Безопасность Соответствует требованиям UL#913 (4 издание) по
взрывобезопасности аппаратуры для использования в объектах класса I, раздел 1, группы A, B, C и
D (возможность применения рассматривается)
ПРЕДЕЛЬНО-ДОПУСТИМЫЕ ПАРАМЕТРЫ*
Напряжение на выводе IO относительно GND –0.5 В, +6 В
Ток утечки на выводе IO 20 мА
Диапазон температур –40…+85°C
Температура кристалла +150°C
Температура хранения –25…+50°C
* Это только предельные значения и функциональная работа прибора при этих или любых других усло-
виях за пределами значений, указанных в разделах данной спецификации не предполагается. Нахождение в условиях предельно-допустимого режима в течение длительного времени может привести к
снижению надежности. Эти приборы не должны подвергаться воздействию температур свыше 70°C
в течение длительных периодов времени.
боров 1-Wire в системе и времени восстановления на шине 1-Wire. Указанное здесь значение применяется в системах, где используется только один прибор и время восстановления шины 1-Wire
имеет минимальную величину. Для систем с большей загрузкой можно рекомендовать использование активной подтяжки, например как в DS2480.
3) Входная емкость на выводе данных может составлять 800 пФ, когда напряжение питания поступает
впервые. Если для подачи напряжения
на линию данных используется резистор 5 кОм, то пара-
V
PUP
зитная емкость не будет оказывать влияния на нормальный режим обмена информацией спустя 5
мкс после приложения напряжения питания.
зависит от рабочей температуры и температуры хранения прибора. Если прибор не используется
для выполнения задачи, то генератор часов реального времени должен быть выключен, и прибор
следует хранить при температуре не выше 25°C. В этих условиях минимальный срок годности при
хранении составляет 10 лет.
15) Значения, которыевыделеныцветом, несоответствуютопубликованномустандарту i