
- •Состояние старт и стоп
- •Подтверждение
- •Адресация в шине i2c
- •Расширение i2c
- •Организация памяти.
- •Поясню на примере:
- •Арбитраж шины i2c.
- •Подтверждение
- •Адресация в шине i2c
- •Применение
- •I²c находит применение в устройствах, предусматривающих простоту разработки и низкую себестоимость изготовления при относительно неплохой скорости работы.
- •Разработка
- •1.2 Подключение микросхем к шине i2c с различным напряжением питания и совместимыми с 5в-ым напряжением линиями ввода-вывода
- •1.3 Микросхемы с различными логическими уровнями, подключенные через двунаправленный преобразователь уровня
- •1.3.1 Описание преобразования уровня
- •1.3.2 Защита каскада пониженного напряжения от выбросов повышенного напряжения
- •1.3.5 Усовершенствованная схема для изоляции выключенного каскада повышенного напряжения
- •2. Характеристики моп-ьранзисторов
- •3.2 Преобразование уровня с 5в до 3в
- •3.3 Осциллограммы сигналов при отключении питания шинных каскадов
Применение
I²c находит применение в устройствах, предусматривающих простоту разработки и низкую себестоимость изготовления при относительно неплохой скорости работы.
Список возможных применений:
доступ к модулям памяти NVRAM;
доступ к низкоскоростным ЦАП/АЦП;
регулировка контрастности, насыщенности и цветового баланса мониторов;
регулировка звука в динамиках;
управление светодиодами, в том числе в мобильных телефонах;
чтение информации с датчиков мониторинга и диагностики оборудования, например, термостат центрального процессора или скорость вращения вентилятора охлаждения процессора;
чтение информации с часов реального времени (кварцевых генераторов);
управление включением/выключением питания системных компонент;
информационный обмен между микроконтроллерами;
Разработка
Каждая электронная система включает в себя 3 различных типа узлов:
Узел управления
Узлы общего назначения, такие как буферы ЖКИ, порты ввода/вывода, ОЗУ, ЭСПЗУ или преобразователи данных.
Специфические узлы, такие как схемы цифровой настройки и обработки сигнала для радио- и видео- систем, или генераторы тонального набора для телефонии.
В настоящее время ассортимент продукции Philips включает более 150 КМОП и биполярных I²C-совместимых устройств, функционально предназначенных для работы во всех трех вышеперечисленных категориях электронного оборудования. Все I²C-совместимые устройства имеют встроенный интерфейс, который позволяет им связываться друг с другом по шине I²C. Это конструкторское решение разрешает множество проблем сопряжения различных устройств, которые обычно возникают при разработке цифровых систем.
На дешевых устройствах часто I²C эмулируется программно с использованием технологии Bit-banging.
Преимущества
необходим всего один микроконтроллер для управления набором устройств;
используется всего две линии ввода-вывода общего назначения;
стандарт предусматривает «горячее» подключение и отключение устройств в процессе работы системы
встроенный в микросхемы фильтр подавляет всплески, обеспечивая целостность данных.
Преимущества для конструкторов
поскольку такие микросхемы подключаются непосредственно к шине без каких-либо дополнительных цепей, появляется возможность модификации и модернизации системы прототипа путем подключения и отключения устройств от шины.
блоки на функциональной схеме соответствуют микросхемам, переход от функциональной схемы к принципиальной происходит быстро.
нет нужды разрабатывать шинные интерфейсы, так как шина уже интегрирована в микросхемы.
интегрированные адресация устройств и протокол передачи данных позволяют системе быть полностью программно определяемой.
одни и те же типы микросхем могут быть часто использованы в разных приложениях.
время разработки снижается, так как конструкторы быстро знакомятся с часто используемыми функциональными блоками и соответствующими микросхемами.
микросхемы могут быть добавлены или убраны из системы без оказания влияния на другие микросхемы, подключенные к шине (если их работа независима).
простая диагностика сбоев и отладка; нарушения в работе могут быть немедленно отслежены.
время разработки программного обеспечения может быть снижено за счет использования библиотеки повторно используемых программных модулей.
Пример системы с шиной I²C
Схема системы с шиной I²C
На рисунке: (a) Высокоинтегрированный телевизор
Микроконтроллер
ФАПЧ синтезатор
Флеш-память
Мультисистемный декодер сигналов цветности
Стереодекодер звука
Улучшитель сигнала картинки
HI-FI аудиопроцессор
Видеопроцессор
Одночиповый текст
ИМС сигналов OSD
(b) базовая станция радиотелефона стандарта DECT
Генератор DTMF
Интерфейс телефонной линии
Кодек АДИКМ
Пакетный контроллер
Микроконтроллер
Поддержка операционными системами
В Linux поддержка I²C обеспечивается специальным модулем для каждого устройства, совместимого с этим стандартом. Файл заголовков для написания клиента I²C — /usr/include/linux/i2c.h. В OpenBSD также добавлена поддержка основных контроллеров и сенсоров I2C;
В Sinclair QDOS и Minerva QL поддержка осуществляется через набор расширений фирмы TF Services;
В AmigaOS доступ к устройствам I²C осуществляется с помощью библиотеки i2c.library, написанной Вильгельмом Нойкером;
eCos поддерживает I²C для нескольких архитектур.
Материнские платы EPIA-M поддерживают I²C на уровне форм-фактора Mini-ITX.
Производные технологии
I²C является основой ACCESS.bus, дисплейного интерфейсного канала данных (DDC) VESA, шины управления системными функциями SMBus, шины интеллектуального управления системой IPMB (вариант протокола IPMI). В этих технологиях возможно использование различных напряжений, частоты тактирования и наличия линий прерываний.
TWI (Two Wire Interface) или TWSI (Two Wire Serial Interface) по сути та же самая шина I²C, но использует другое название по лицензионным причинам. (Патенты на I²C уже отменены.)
Ссылки
Описание шины I²C RUS
Шина I²C и как её использовать (включая спецификацию) RUS
Спецификации Philips I²C
I²C (англ.)
Introduction to I²C
I²C Bus / Access Bus
Using the I²C Bus with Linux
OpenBSD iic(4) manual page
GNU/Linux package lm-sensors supports I²C bus, among others.
massmind I²C page Source code, samples and technical information for using I²C with PC, PIC and SX microcontrollers.
I²C bus
Serial buses information page
I²C Bus Technical Overview and Frequently Asked Questions
The I²C Faq Version 2.0
The Bus Buffer Resource. For 2-wire buses such as I²C, SMBus, PMBus, IPMB & IPMI
I²C Licensing Information
Логические уровни шины I2C
1.1 Логические уровни шины I2C
Ниже представлен обзор дифференциальных логических уровней, используемых в шинных системах I2C. Шина I2C использует два типа логических уровней:
фиксированные уровни,
уровни по отношению к напряжению питания.
а) Фиксированные уровни реализованы для микросхем, выполненных не по технологии КМОП, и/или микросхем с напряжением питания выше 5В, например, 12В. Используются следующие фиксированные уровни для сигналов ввода-вывода:
- входное напряжение НИЗКОГО уровня VIL |
не менее -0.5В |
не более 1.5В |
- входное напряжение ВЫСОКОГО уровня VIH |
не менее 3В |
не более VDDmax+0.5В |
- выходное напряжение НИЗКОГО уровня VOL |
не менее 0В |
не более 0.4В |
- выходное напряжение ВЫСОКОГО уровня VOH выход с открытым стоком, напряжение на котором определяется уровень VDD через внешний подтягивающий резистор. |
б) Уровни по отношению к напряжению питания реализованы для КМОП-микросхем и/или для микросхем с напряжением питания до 5В. Используются следующие уровни:
- входное напряжение НИЗКОГО уровня VIL |
не менее -0.5В |
0.3 VDD |
- входное напряжение ВЫСОКОГО уровня VIH |
не менее 0.7VDD |
не более VDDmax+0.5В |
- выходное напряжение НИЗКОГО уровня VOL |
не менее 0В |
не более 0.4В |
- выходное напряжение ВЫСОКОГО уровня VOH выход с открытым стоком, уровень на котором определяется уровнем VDD через внешний подтягивающий резистор. |
Логические уровни на линиях шины зависят от подтягивающих резисторов к VDD, тока утечки и, при наличии, последовательных резисторов с линиями ввода-вывода микросхем. Их значения необходимо выбрать таким образом, чтобы при установлении низкого уровня минимальный запас по помехоустойчивости составлял 0.1 VDD и 0.2 VDD при установлении высокого уровня.