Инициализация шины

----------------- Master

----------------- Slave

Мастер захватывает линию и удерживает 0, ожидает ответа одного из подчиненных(рабов). Только один из них может ответить (повторить сигнал). Мастер ТОЛЬКО 1.

Как видно по диаграмме — МК формирует импульс RESET, переводя в низкий логический уровень шину 1-Wire и удерживая её не менее 480 микросекунд.
Затем МК “отпускает” шину и напряжение возвращается к высокому логическому уровню (время зависит от ёмкости линии и сопротивления подтягивающего резистора).
Протокол 1-Wire ограничивает это время диапазоном от 15 до 60 микросекунд, что и влияет на выбор подтягивающего резистора (на время возврата линии к высокому уровню большее влияние оказывает ёмкость лини, но, чаще всего, мы изменить её не можем).
Обнаружив импульс RESET, ведомое устройство формирует ответный импульс PRESENCE. Для этого устройство прижимает линию DQ к земле и удерживает от 60 до 240 микросекунд. Затем устройство так же “отпускает” шину.
После этого устройству еще дается время для завершения внутренних процедур инициализации, таким образом, МК должен приступить к любому обмену с устройством не ранее, чем через 480 микросекунд после завершения импульса RESET.
Т.о. процедура инициализации, с которой начинается обмен данными между устройствами, длится минимум 960 микросекунд (приведено в таблице выше).

Отступление:

Различают 4 типа тайм-слотов:

1. передача «1» от МК,

2. передача «0» от МК,

3. прием «1» от устройства,

4. прием «0» от устройства.

Тайм-слот всегда начинает МК, прижимая шину к земле.

Длительность тайм-слота находится в пределах от 60 до 120 микросекунд.

Между тайм-слотами всегда должен быть интервал не менее 1 микросекунды (определяется параметрами ведомого устройства).

Тайм-слоты передачи отличаются от тайм-слотов приема поведением МК:

— при передаче МК только формирует сигналы,

— при приеме МК еще и опрашивает уровень сигнала в линии 1-Wire.

Тайм-слот передачи «0» заключается просто в прижимании шины 1-Wire к земле в течение всей длительности тайм-слота.

Передача «1» осуществляется путем «отпускания» шины 1-Wire со стороны МК не ранее чем через 1 микросекунду после начала тайм-слота, но не позже чем через 15 микросекунд.



Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: