МПУЭВС. Лекции. Задания / pdf_ПрилПЦиПУ / Приложения_ З_И_Интерфейсы плат и микросхем
.pdf
11
приёмник, должен принять к сведению, как завершение сценария передачи массива.
Каждому ведомому модулю I2С присваивается адрес, разрядность которого составляет 7 бит (см. рисунок И.7). Адрес передается ведущим устройством в семи старших битах первого байта. Младший бит байта соответствует выполняемой ведущим модулем операции R-/W (R-/W = 1 -
чтение, R-/W = 0 - запись). Ведомые, принимая слово адреса, проверяют его соответствие своему.
Рисунок И.7 - Формат первого байта ведущего модуля
При совпадении ведомый модуль подтверждает получение. Форма подтверждения такова, что только при совпадении на линии устанавливает низкий уровень выбранный модуль, а остальные переходят
вотключённое состояние. Выбранный ведомый модуль после девятого такта выполняет заявленную ведущим модулем операцию обмена.
Примеры различных сеансов передачи по шине I2С представлены на рисунке И.8, где использованы следующие обозначения: S - условие
START; SLA — 7- битовый адрес подчиненного устройства; W — запись (R/W = 0); R — чтение (R/W = 1); А - подтверждение принятого байта А; -А - нет подтверждения Аck; Data - передаваемый байт данных; Р - условие STOP.
Рисунок И.8 - Варианты сеансов передачи по шине I2С
При комбинированной передаче ведущее устройство после записи дан ных в ведомое устройство не освобождает шину (не генерирует условие
12
STOP), а сразу за подтверждением генерирует повторный старт, адресует подчиненный передатчик и принимает необходимые данные. Аппаратная реализация шины I2С допускает реализацию протоколов обмена и при числе ведущих модулей в соединении более одного, которые совместно разделяют общие ведомые модули или попеременно являются то ведущими
устройствами, то ведомыми. В этих вариантах следует осуществлять
распознавание конфликтов и арбитраж (управление доступом к общей шине),
усложняет управление. Технически предпочтительным в таких приложениях
представляется двухсторонний обмен посылками классического
асинхронного или асинхронного формата с проводной реализацией или передачей по эфиру по типу УСАПП.
Интерфейс, как и для УСАПП, может быть реализован на программном,
аппаратно-программном и комбинированном уровне. Аппаратно-программная
реализация наиболее распространена, так как позволяет использовать ресурс
МПУ только для взаимодействия с адаптерами последовательной передачи в параллельном формате. В комбинированных реализациях МПУ одной из сторон
выполняет программное формирование последовательного формата посылок, а
другая сторона применяет аппаратно-программный ресурс. Для программной реализации I2С программная модель адаптера представляется двумя однобитовыми двунаправленными портами (или четырьмя однонаправ-
ленными) на модуль приёма передачи. Аппаратно-программная реализация требует включения в программную модель двунаправленного регистра данных,
который поочерёдно загружается словом адреса, выводимых или
принимаемых данных (или отдельных регистров для адреса и данных) и
регистром состояния для фиксации атрибутов процесса передачи. Примером может служить программная модель комбинированной реализации I2С в
ОМЭВМ ADµC812, приведенная на рисунке И.9. Программная модель адаптера I2С поддерживает аппаратную реализацию режима ведомого и программную реализацию режима ведущего. После системного сброса (или инициализации) адаптер I2С настроен на режим ведомого. Регистр I2CDAT в
13
модели является регистром данных, регистр I2CADD является регистром адреса, регистр I2CCON - регистром управления (статуса). Регистр I2CCON
управляет режимом работы адаптера I2С, а также содержит флаг прерывания.
Рисунок И.9 - Программная модель комбинированного адаптера I2С
Назначение битов регистра I2CCON приведено в таблице И.1. В этом регистре целесообразен битовый доступ. Ведомое устройство использует четыре младших бита регистра I2CCON. Идентификация бита START, выдача бита подтверждения, определение конца передачи и формирование запроса прерывания выполняются автоматически для ведомого модуля на аппаратном уровне.
Таблице И.1 - Состав атрибутов регистра I2CCON
Ведущее устройство использует старшие четыре бита регистра
I2CCON для формирования сигналов на линиях SCL и SDA. Процедура обслуживания ведущего адаптера I2С должна программно управлять
14
сигналами на линиях SCL и SDA прямо адресуемыми битами регистра
I2CCON. В типовых применениях частота синхронизации (не обязательно постоянная) составляет (100 - 400) кГц и, не являясь, предельной и может быть повышена до (2-3) МГц. Длина линий связи не превышает 5-6 м, а емкостная нагрузка - (200-300) пФ
