Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Адрес общего вызова




Адрес общего вызова адресует все устройства на шине. Однако, если устройству не нужны какие-либо данные, которые могут быть переданы по общему вызову, оно может игнорировать обращение путем не выдачи подтверждения. Если устройству нужны данные общего вызова, оно генерирует подтверждение и становится ведомым-приёмником. Второй и последующий байты должны подтверждаться каждым ведомым-приёмником, способным обработать эти данные. Есть ведомый не может обработать один из байтов, он не генерирует подтверждение. Значение посылки общего вызова всегда определяется вторым байтом (рис. 13).

Существуют два варианта:

когда бит направления второго байта равен нулю

когда бит направления второго байта равен единице

Когда бит “0” второй байт обладает следующим значением:

00000110. Сбросить устройство и записать программируемую часть адреса. При получении этой посылки все устройства сбрасываются и перечитывают программируемую часть их адресов. Перед выдачей команды необходимо убедиться, что устройства после подачи питания не удерживают линии шины в низком состоянии

00000100. Записать программируемую часть адреса. Все устройства, имеющие возможность задания программируемой части адреса защелкивают текущее значение адреса при принятии этой команды. Устройства не сбрасываются

00000000. Этот код недопустим для использования в качестве второго байта

Последовательности процедуры программирования опубликованы в соответствующих ТУ.

Остальные коды не установлены и устройства должны игнорировать их.

Когда бит “1” двухбайтовая последовательность называется “аппаратный общий вызов”. Это означает, что последовательность передана аппаратным ведущим устройством (таким как сканер клавиатуры), которое не может быть запрограммировано на выдачу конкретного адреса ведомого. Поскольку аппаратный ведущий не знает, какому устройству передается посылка, он может только сгенерировать аппаратный общий вызов и свой собственный адрес - идентифицируя себя для системы (рис. 14).

Семь битов, остающихся во втором байте, содержат адрес аппаратного ведущего. Этот адрес распознается умным устройством (микроконтроллером), которое потом будет получать информацию от аппаратного ведущего. Если последний также может работать как ведомый, его адрес совпадает с адресом ведущего.

С другой стороны в некоторых системах аппаратный ведущий-передатчик устанавливается в режим ведомого-приёмника сразу после сброса. Таким способом, ведущий, конфигурирующий систему, может сообщить аппаратному ведущему (который находится в режиме ведомый-приемник), на какой адрес должны посылаться данные (рис. 15) После этой процедуры аппаратный ведущий остаётся в режиме ведущий-передатчик.

Рисунок 13. Формат адреса общего вызова

Первый байт

Второй байт

Младший разряд

Рисунок 14. Пересылка данных из аппаратного ведущего-передатчика

Адрес общего вызова

Второй байт

N байт + подтверждение

Рисунок 15. Передача данных аппаратным ведущим, способным пересылать данные непосредственно ведомым устройствам
(а) Конфигурирующий ведущий посылает адрес начала данных к аппаратному ведущему
(b) Аппаратный ведущий посылает данные выбранному ведомому

Адрес аппаратного ведущего

Запись

Адрес начала данных для аппаратного ведущего

Адрес начала данных от аппаратного ведущего

n байт + подтверждение

 

Байт СТАРТА

Микроконтроллеры могут быть подключены к шине двумя способами. Микроконтроллер с встроенными шинными цепями разгружен и только реагирует при помощи прерываний на события, происходящие на шине, в то время как микроконтроллер без таких цепей должен постоянно отслеживать состояние шины программным способом. Очевидно, что чем больше времени процессор тратит на обслуживание шины, тем меньше у него остается на основную задачу. Вследствие этого возникает разница между быстрыми аппаратными устройствами и медленными микроконтроллерами, полагающимися на программный опрос.

В этом случае посылка данных может начинаться со стартовой процедуры, которая много дольше, чем обычный сигнал СТАРТ. Процедура старта состоит из

Сигнала СТАРТ

Байта СТАРТА

Импульса подтверждения

Повторного сигнала СТАРТ

Ведущий-передатчик после обычного сигнала СТАРТ передает байт СТАРТА (00000001). Микроконтроллер поэтому может отслеживать линию SDA с меньшей частотой, пока не обнаружит последовательность из семи нулей, по сути - НИЗКИЙ уровень на SDA на протяжении семи тактовых импульсов. После обнаружения этой последовательности микроконтроллер может переключится на более высокую частоту опроса шины, для того чтобы обнаружить повторный сигнал СТАРТ.

Аппаратный приёмник I2C сбросится при приёме повторного сигнала СТАРТ и поэтому проигнорирует байт СТАРТА.

После байта СТАРТА генерируется тактовый импульс для подтверждения. Он присутствует только для совместимости с форматом байта. Устройствам запрещается подтверждать прием байта СТАРТА.

 




Поделиться с друзьями:


Дата добавления: 2014-01-05; Просмотров: 503; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.013 сек.