с адреси
Сигнали START і STOP
Перехід лінії SDA з ВИСОКОГО стану в НИЗЬКА, в той час як SCL знаходиться в ВИСОКОМУ стані означає START.Переход лінії SDA з НИЗЬКОЇ стану в ВИСОКУ при SCL в ВИСОКОМУ стані означає STOP.Сігнали СТАРТ і СТОП завжди виробляються ведучим. Вважається, що шина зайнята після сигналу СТАРТ. Шина вважається звільнилася через певний час після сигналу СТОП. p align="justify"> Визначення сигналів СТАРТ і СТОП пристроями, підключеними до шини досить легко, якщо в них вбудовані необхідні ланцюга. Однак мікроконтролери без таких ланцюгів повинні здійснювати зчитування значення лінії SDA як мінімум двічі за період синхронізації для того, щоб визначити перехід стану. <В
Рис 2.6 Сигнали START і STOP
Формат байта
Кожен байт, який передається по лінії SDA, повинен складатися з 8 біт. Кількість байт, переданих за один сеанс зв'язку необмежено. Кожен байт повинен закінчуватися бітом підтвердження. Дані передаються, починаючи з найбільш значущого біта (Мал. 2.7). Якщо приймач не може прийняти ще один цілий байт, поки він не виконає яку-небудь іншу функцію (наприклад, обслужить внутрішнє переривання), він може утримувати лінію SCL в НИЗЬКОМУ стані, переводячи передавач в стан очікування. Пересилання даних триває, коли приймач буде готовий до наступного байту і відпустить лінію SCL. p align="justify"> У деяких випадках, необхідно використовувати інший формат даних (наприклад, CBUS). Посилка, яка передається з такою адресою, може бути закінчена видачею сигналу СТОП, навіть якщо це відбувається під час передачі байта. У цьому випадку підтвердження не генерується. br/>В
Рис 2.7 Пересилання даних по шині I 2 C
1. Сигнал СТАРТ
2. Старший розряд байта
. Сигнал підтвердження від приймача
. Прийом байта завершений. Переривання всередині приймача
. Сінхролінія утримується в низькій стані, поки обслуговується переривання
. Сигнал підтвердження від приймача
. Сигнал СТОП
Підтвердження
Підтвердження при передачі даних обов'язково. Відповідний іспульс синхронізації генерується ведучим. Передавач відпускає (ВИСОКУ) лінію SDA протягом синхроімпульсу підтвердження. Приймач повинен утримувати лінію SDA протягом ВИСОКОГО стану синхроімпульсу підтвердження у стабільно НИЗЬКОМУ стані (рис. 8). Звичайно, час установки та утримання також повинні бути прийняті до у...