Полная версия

Главная arrow Информатика arrow Интерфейсы Периферийных Устройств arrow
Шина 12С

  • Увеличить шрифт
  • Уменьшить шрифт


<<   СОДЕРЖАНИЕ   >>

Опишите подробную работу шины I2C в случае подключения к ней 1-го Master устройства и нескольких Slave устройств. Как происходит обмен данными между такими устройствами?

Процедура обмена начинается с того, что ведущий формирует состояние СТАРТ: генерирует переход сигнала линии SDA из ВЫСОКОГО состояния в НИЗКОЕ при ВЫСОКОМ уровне на линии SCL. Этот переход воспринимается всеми устройствами, подключенными к шине, как признак начала процедуры обмена. Генерация синхросигнала — это всегда обязанность ведущего; каждый ведущий генерирует свой собственный сигнал синхронизации при пересылке данных по шине. Процедура обмена завершается тем, что ведущий формирует состояние СТОП — переход состояния линии SDA из низкого состояния в ВЫСОКОЕ при ВЫСОКОМ состоянии линии SCL. Состояния СТАРТ и СТОП всегда вырабатываются ведущим. Считается, что шина занята после фиксации состояния СТАРТ. Шина считается освободившейся через некоторое время после фиксации состояния СТОП. При передаче посылок по шине I2C каждый ведущий генерирует свой синхросигнал на линии SCL. После формирования состояния СТАРТ, ведущий опускает состояние линии SCL в НИЗКОЕ состояние и выставляет на линию SDA старший бит первого байта сообщения. Количество байт в сообщении не ограничено. Для подтверждения приема байта от ведущего-передатчика ведомым-приемником в спецификации протокола обмена по шине I2C вводится специальный бит подтверждения, выставляемый на шину SDA после приема 8 бита данных. Таким образом передача 8 бит данных от передатчика к приемнику завершаются дополнительным циклом (формированием 9-го тактового импульса линии SCL), при котором приемник выставляет низкий уровень сигнала на линии SDA, как признак успешного приема байта.

Первые семь битов первого байта образуют адрес ведомого. Восьмой, младший бит, определяет направление пересылки данных. «Ноль» означает, что ведущий будет записывать информацию в выбранного ведомого. «Единица» означает, что ведущий будет считывать информацию из ведомого.

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

Адрес ведомого может состоять из фиксированной и программируемой части


7.*Интерфейс I2C — синхронная последовательная шина, обеспечивающая двустороннюю передачу данных между подключенными устройствами по двум сигнальным линиям. Шина ориентирована на 8-битные передачи. Передача данных может быть как одноадресной, к выбранному устройству, так и широковещательной. Для выборки устройств используется 7-битная или 10-битной адресация. Для осуществления процесса обмена информацией по I2C шине, используется всего два сигнала линия данных SDA линия синхронизации SCL. Обе линии, и SDA, и SCL, являются двунаправленными, соединенными с положительным полюсом источника напряжения через pull-up резистор (Рис. 4). Когда шина свободна, обе линии находятся в состоянии HIGH. Выходные части устройств, подсоединенных к шине, должны иметь открытый коллектор или открытый сток, чтобы выполнять функцию wired-AND. Данные по шине I2C могут передаваться со скоростями до 100 Кб/c в стандартном режиме и 400 Кб/с в быстром режиме. Количество интерфейсов зависит только от предельной емкости шины 400пФ.
*шина I2C широко используется в микросхемах памяти, видеопроцессорах, модулей обработки аудио- и видео-сигналов, АЦП и ЦАП, драйверах ЖК-индикаторов, телефонах, кодеках и многих других устройствах.
*примеры не могу найти((((??????????????????????
8.*Программный интерфейс- система унифицированных связей, предназначенных для обмена данными между компонентами вычислительной системы. Программный интерфейс задает набор необходимых процедур, их параметров и способов обращения.

 
<<   СОДЕРЖАНИЕ   >>

Похожие темы