[an error occurred while processing this directive]
Да уж посмотрите наконец DataSheet...
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено Builder++ 10 сентября 2002 г. 21:38
В ответ на: Помогите разобраться с DS1821 отправлено Fomka 10 сентября 2002 г. 18:29

1. Перед КАЖДОЙ операцией необходимо формировать "Reset Pulse".
Длительность этого импульса от 480 до 960 мкс. Глупо формировать его длительностью в 960 мкс т.к. это пограничное условие. Необходимая длительность 480 + ((960 - 480) / 2). Это же элементарно, не так ли?

2. После "ResetPulse" переводим линию в Z-состояние, отмеряем 90 мкс. (чтобы опять попасть в середину). И смотрим наличие "PresenceImpulse" от DS1821. Если импульса нет, то "отваливаем" от чувака на некоторое время чтобы он закончил валять дурака и спустя некоторый промежуток времени повторяем до посинения.

3. Если "PresencePulse" нет, то:
a)DS1821 не подключен.
b)DS1821 сдох.
c)DS1821 находится в режиме термостата и не может работать с 1-Wire Bus. Гляньте DataSheet(у), там всё расписано, сколько и каких импульсов генерить на DQ, и куда в этот момент "тянуть" питание, чтобы вправить DS-у brain-ы и заставить его таки слушаться.

4. Регистр статуса не только писАть, а ещё и иногда читать нужно. Зачем? А чтобы DONE бит контролировать. Если его не контролировать - то чушь получите, а не результат.

5. Бит NVB тоже нужно анализировать, а то нарвётесь на "Device is busy now... try again some later."

Остальное - дело техники и тех же brain-ов.
Желаю здравствовать.

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru