6.1 Формат байта
Каждый байт, передаваемый по линии SDA, должен состоять из 8 бит. Количество байт, передаваемых за один сеанс связи неограничено. Каждый байт должен оканчиваться битом подтверждения. Данные передаются, начиная с наиболее значащего бита (см. Рис. 7). Если приёмник не может принять еще один целый байт, пока он не выполнит какую-либо другую функцию (например, обслужит внутреннее прерывание), он может удерживать линию SCL в НИЗКОМ состоянии, переводя передатчик в состояние ожидания. Пересылка данных продолжается, когда приёмник будет готов к следующему байту и отпустит линию SCL.
В некоторых случаях, необходимо использовать другой формат данных (например, CBUS). Посылка, которая передается с таким адресом, может быть закончена выдачей сигнала СТОП, даже если это происходит во время передачи байта. В этом случае подтверждение не генерируется (см. Раздел 9.1.3).
Рисунок 7. Пересылка данных по шине I2C
- Сигнал СТАРТ
- Старший разряд байта
- Сигнал подтверждения от приёмника
- Прием байта завершен. Прерывание внутри приемника
- Синхролиния удерживается в низком состоянии, пока обслуживается прерывание
- Сигнал подтверждения от приемника
- Сигнал СТОП
|